Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video 使用FFmpeg加速视频以获得正确的持续时间_Video_Ffmpeg - Fatal编程技术网

Video 使用FFmpeg加速视频以获得正确的持续时间

Video 使用FFmpeg加速视频以获得正确的持续时间,video,ffmpeg,Video,Ffmpeg,我一直在使用ffmpeg来加速视频,方法如下。例如,要将视频速度提高4倍,我运行以下命令: ffmpeg -i vid.MP4 -filter:v "setpts=0.25*PTS" vid_fast.MP4 当视频以指定的速度加速时,视频的持续时间(如其属性下所示,以及在VLC中播放视频时)与原始视频保持相同。例如,如果vid.MP4最初为4分钟,则vid_fast.MP4也为4分钟,而不是预期的1分钟长。(额外的3分钟仅包括在最后一帧冻结的视频。) 这有点麻烦,因为我需要删除我不感兴趣的额

我一直在使用
ffmpeg
来加速视频,方法如下。例如,要将视频速度提高4倍,我运行以下命令:

ffmpeg -i vid.MP4 -filter:v "setpts=0.25*PTS" vid_fast.MP4
当视频以指定的速度加速时,视频的持续时间(如其属性下所示,以及在VLC中播放视频时)与原始视频保持相同。例如,如果
vid.MP4
最初为4分钟,则
vid_fast.MP4
也为4分钟,而不是预期的1分钟长。(额外的3分钟仅包括在最后一帧冻结的视频。)

这有点麻烦,因为我需要删除我不感兴趣的额外3分钟。有没有办法避免这种情况

下面是我正在使用的
ffmpeg
版本的更多信息:

ffmpeg version N-69060-gcd960c8 Copyright (c) 2000-2015 the FFmpeg developers
  built on Jan 14 2015 22:13:45 with gcc 4.9.2 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --
enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-lib
modplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrw
b --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinge
r --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --en
able-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
 --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-
libx265 --enable-libxavs --enable-libxvid --enable-lzma --enable-decklink --enab
le-zlib
  libavutil      54. 16.100 / 54. 16.100
  libavcodec     56. 20.100 / 56. 20.100
  libavformat    56. 18.101 / 56. 18.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5.  7.101 /  5.  7.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
Hyper fast Audio and Video encoder

视频加速后,只需将输出视频(在您的情况下为vid_fast.mp4)修剪为持续时间。使用以下命令

ffmpeg -i vid_fast.MP4 -vcodec copy -t 60 out_fast.mp4

它将创建一个1分钟的输出视频。

哦,感谢你问这个问题,这正是我遇到的问题!