我正在尝试合并一个从 YouTube 截取的流,但格式似乎有点奇怪。无论如何,视频和音频似乎可以自行播放,但当我尝试合并时,文件大小比音频文件的原始大小略大,所以似乎什么也没做。
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%
还有一些其他信息:
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
如果您能告诉我我做错了什么以及如何改正,我将不胜感激。
谢谢。
答案1
由于 avconv 0.8.6 有点旧,这似乎是一个错误,可以通过安装最新版本的 avconv(或 ffmpeg,如您在问题标签中所指出的那样)来解决。
请注意,这两个是不同的项目,但是非常相似的在语法和功能方面,获取最新版本就像从ffmpeg.org,适用于所有主流操作系统。无需编译 — 提取并运行。
对于 avconv,仅存在 Windows 版本,因此您必须自己编译它。
一般来说,对于 avconv 和 ffmpeg,您通常希望使用较新的版本,而不是标准发行版在其包源中提供的版本。