Kombinieren Sie Audio und Video mit avconv, ohne das Video zusammenzuführen

Kombinieren Sie Audio und Video mit avconv, ohne das Video zusammenzuführen

Ich versuche, einen gerippten Stream von YouTube zu kombinieren, der in einem seltsamen Format zu sein scheint. Wie auch immer, Video und Audio scheinen unabhängig voneinander abgespielt zu werden, aber als ich versuchte, sie zu kombinieren, war die Dateigröße nur ein wenig größer als die Originalgröße der Audiodatei, also scheint es nichts bewirkt zu haben.

jonathan@localhost:~/foo$ avconv -i video.mp4 -i audio.m4a -c copy audio_and_video.mp4
avconv version 0.8.16-6:0.8.16-1, Copyright (c) 2000-2014 the Libav developers
  built on Sep 16 2014 23:10:48 with gcc 4.7.2
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'video.mp4':
  Metadata:
    major_brand     : dash
    minor_version   : 0
    compatible_brands: iso6avc1mp41
    creation_time   : 2014-12-06 03:30:37
  Duration: 00:31:35.36, start: 947.680067, bitrate: 1939 kb/s
    Stream #0.0(und): Video: h264 (High), yuv420p, 1920x1080 [PAR 1:1 DAR 16:9], 29.97 tbr, 90k     tbn, 59.94 tbc
    Metadata:
      creation_time   : 2014-12-06 03:30:37
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'audio.m4a':
  Metadata:
    major_brand     : dash
    minor_version   : 0
    compatible_brands: iso6mp41
    creation_time   : 2014-12-13 10:25:20
  Duration: 00:31:35.42, start: 947.745193, bitrate: 64 kb/s
    Stream #1.0(und): Audio: aac, 44100 Hz, stereo, s16
    Metadata:
      creation_time   : 2014-12-13 10:25:20
Output #0, mov, to 'audio_and_video.mov':
  Metadata:
    major_brand     : dash
    minor_version   : 0
    compatible_brands: iso6avc1mp41
    creation_time   : 2014-12-06 03:30:37
    encoder         : Lavf53.21.1
    Stream #0.0(und): Video: libx264, yuv420p, 1920x1080 [PAR 1:1 DAR 16:9], q=2-31, 90k tbn, 90k tbc
    Metadata:
      creation_time   : 2014-12-06 03:30:37
    Stream #0.1(und): Audio: aac, 44100 Hz, stereo
    Metadata:
      creation_time   : 2014-12-13 10:25:20
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #1:0 -> #0:1 (copy)
Press ctrl-c to stop encoding
frame=    0 fps=  0 q=-1.0 Lsize=   14892kB time=947.68 bitrate= 128.7kbits/s
video:0kB audio:14530kB global headers:0kB muxing overhead 2.493168%

Und einige zusätzliche Informationen:

jonathan@localhost:~/foobar$ file audio.m4a
audio.m4a: ISO Media
jonathan@localhost:~/foobar$ file video.mp4
video.mp4: ISO Media
jonathan@localhost:~/foobar$ file audio_and_video.mp4
audio_and_video.mp4: ISO Media, MPEG v4 system, version 1
jonathan@localhost:~/foobar$ ls -lh
total 468M
-rw-r--r-- 1 jonathan jonathan  15M Mar 12 12:29 audio_and_video.mp4
-rw-r--r-- 1 jonathan jonathan  15M Dec 14 23:50 audio.m4a
-rw-r--r-- 1 jonathan jonathan 439M Dec 14 23:50 video.mp4

Ich bin für alle Ideen dankbar, was ich falsch mache und wie ich es beheben kann.

Danke schön.

Antwort1

Da avconv 0.8.6 etwas alt ist, scheint dies ein Fehler zu sein, der durch die Installation einer aktuellen Version von avconv (oder ffmpeg, wie Sie in den Tags Ihrer Frage angegeben haben) behoben werden kann.

Beachten Sie, dass diese beidenverschiedene Projekte, abersehrähnlichin Bezug auf Syntax und Funktionalität, und eine aktuelle Version zu erhalten ist so einfach wie das Herunterladen eines "statischen Builds" vonffmpeg.org, die für alle wichtigen Betriebssysteme verfügbar sind. Keine Kompilierung erforderlich – extrahieren und ausführen.

Für avconv gibt es nur Windows-Builds, daher müssen Sie es dort selbst kompilieren.

Im Allgemeinen möchten Sie bei avconv und ffmpeg eine aktuelle Version verwenden und nicht das, was die Standarddistributionen in ihren Paketquellen anbieten.

verwandte Informationen