我尝试过使用 openshot、pitivi、kdenlive、videolan 来剪切音频/视频文件,但它们似乎都冻结了。所以我现在尝试使用以下命令:
avconv -i input.MP4 -vcodec copy -acodec copy -ss 01:25:00 -t 01:26:00 output.MP4
这会在我的计算机上创建一个文件,但是当我在 vlc 中打开它时,我只能听到声音,长度为 37.04 分钟。本来应该是1分钟长。
另外,刚刚尝试过这个:
ffmpeg -ss 01:24:30 -t 01:25:00 -i orginalfile -vcodec copy -acodec copy newfile
这根本不会剪切 av 文件,它最终是完整长度的,但只有音频可用,没有视频。
我究竟做错了什么?
我也尝试过:
avconv -i input.MP4 -ss 01:25:00 -t 01:26:00 -c:a copy -c:v copy output.MP4
它给了我与上面相同的结果。
两个命令的完整输出可以在此处查看:
oshiro@home-desktop:~/Desktop$ avconv -i SDV_1195.MP4 -vcodec copy -acodec copy -ss 01:24:00 -t 01:25:30 2.MP4
avconv version 0.8.13-4:0.8.13-0ubuntu0.12.04.1, Copyright (c) 2000-2014 the Libav developers
built on Jul 15 2014 12:56:47 with gcc 4.6.3
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1e8c7a0] max_analyze_duration reached
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'SDV_1195.MP4':
Metadata:
major_brand : avc1
minor_version : 0
compatible_brands: avc1isom
creation_time : 1947-02-10 00:03:08
Duration: 02:01:04.29, start: 0.000000, bitrate: 2137 kb/s
Stream #0.0(eng): Video: h264 (Main), yuv420p, 720x576, 2000 kb/s, PAR 64:45 DAR 16:9, 50 fps, 50 tbr, 90k tbn, 180k tbc
Metadata:
creation_time : 1947-02-10 00:03:08
Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, s16, 127 kb/s
Metadata:
creation_time : 1947-02-10 00:03:08
Output #0, mp4, to '2.MP4':
Metadata:
major_brand : avc1
minor_version : 0
compatible_brands: avc1isom
creation_time : 1947-02-10 00:03:08
encoder : Lavf53.21.1
Stream #0.0(eng): Video: ![0][0][0] / 0x0021, yuv420p, 720x576 [PAR 64:45 DAR 16:9], q=2-31, 2000 kb/s, 90k tbn, 90k tbc
Metadata:
creation_time : 1947-02-10 00:03:08
Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, 127 kb/s
Metadata:
creation_time : 1947-02-10 00:03:08
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press ctrl-c to stop encoding
frame= 0 fps= 0 q=-1.0 Lsize= 35570kB time=2224.30 bitrate= 131.0kbits/s /s
video:0kB audio:34755kB global headers:0kB muxing overhead 2.345804%
oshiro@home-desktop:~/Desktop$ avconv -i SDV_1195.MP4 -ss 01:24:00 -t 01:25:30 -c:a copy -c:v copy output-clip.mp4
avconv version 0.8.13-4:0.8.13-0ubuntu0.12.04.1, Copyright (c) 2000-2014 the Libav developers
built on Jul 15 2014 12:56:47 with gcc 4.6.3
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xd307a0] max_analyze_duration reached
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'SDV_1195.MP4':
Metadata:
major_brand : avc1
minor_version : 0
compatible_brands: avc1isom
creation_time : 1947-02-10 00:03:08
Duration: 02:01:04.29, start: 0.000000, bitrate: 2137 kb/s
Stream #0.0(eng): Video: h264 (Main), yuv420p, 720x576, 2000 kb/s, PAR 64:45 DAR 16:9, 50 fps, 50 tbr, 90k tbn, 180k tbc
Metadata:
creation_time : 1947-02-10 00:03:08
Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, s16, 127 kb/s
Metadata:
creation_time : 1947-02-10 00:03:08
Output #0, mp4, to 'output-clip.mp4':
Metadata:
major_brand : avc1
minor_version : 0
compatible_brands: avc1isom
creation_time : 1947-02-10 00:03:08
encoder : Lavf53.21.1
Stream #0.0(eng): Video: ![0][0][0] / 0x0021, yuv420p, 720x576 [PAR 64:45 DAR 16:9], q=2-31, 2000 kb/s, 90k tbn, 90k tbc
Metadata:
creation_time : 1947-02-10 00:03:08
Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, 127 kb/s
Metadata:
creation_time : 1947-02-10 00:03:08
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press ctrl-c to stop encoding
frame= 0 fps= 0 q=-1.0 Lsize= 35570kB time=2224.30 bitrate= 131.0kbits/s /s
video:0kB audio:34755kB global headers:0kB muxing overhead 2.345804%
oshiro@home-desktop:~/Desktop$
答案1
我在 Linux 和 Windows 上都使用过剪切视频阿维多路复用器. 它有一个易于使用的 GUI。
- 加载视频
- 选择起点和终点
- 选择输出格式(使用复制以避免视频重新编码)
- 保存你的剪切文件
在 Ubuntu 中安装它:
sudo apt-get install avidemux
答案2
需要-t
一个期间, 不是时间结束。
所以改为-t 60
或-t 0:01:00
从libav 文档:
‘-t duration (output)’
Stop writing the output after its duration reaches duration.
duration may be a number in seconds, or in hh:mm:ss[.xxx] form.