新手求助!ffmpeg如何快速抽帧截图
我想快速从视频抽一帧图像 命令是 ffmpeg -ss 00:04:58.386 -i test.rmvb -vframes 1 -y test.jpg -loglevel 56但是发现定位的帧不是关键帧,需要解码很多参考帧,所以不是很快,怎么才能只解码这个时间点之前的关键帧呢。ps:需求是抽取图像的时间点可以不精确,但是需要比较快
https://trac.ffmpeg.org/wiki/Create%20a%20thumbnail%20image%20every%20X%20seconds%20of%20the%20video#selectvideofilter T-Bagwell 发表于 2018-5-8 14:38
https://trac.ffmpeg.org/wiki/Create%20a%20thumbnail%20image%20every%20X%20seconds%20of%20the%20video ...
这个确实可以提取出关键帧,但是速度很慢 执行了一下命令行,单独抽取某一帧,不重新编码为图片,耗时输出信息如下:
liuqideMacBook-Pro:srcnn liuqi$ time ffmpeg -fflags nobuffer -analyzeduration 2 -probesize 200 -ss 50 -i ~/Movies/objectC/facebook.mp4 -c copy -vframes 1 -y -f null /dev/null
ffmpeg version N-89672-g41e51fbcd9 Copyright (c) 2000-2018 the FFmpeg developers
built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
configuration: --enable-fontconfig --enable-gpl --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libspeex --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-version3 --cc='ccache gcc' --enable-nonfree --enable-videotoolbox
libavutil 56.7.100 / 56.7.100
libavcodec 58.9.100 / 58.9.100
libavformat 58.3.100 / 58.3.100
libavdevice 58.0.100 / 58.0.100
libavfilter 7.8.100 /7.8.100
libswscale 5.0.101 /5.0.101
libswresample 3.0.101 /3.0.101
libpostproc 55.0.100 / 55.0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Users/liuqi/Movies/objectC/facebook.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
creation_time : 2016-08-13T00:36:19.000000Z
Duration: 00:03:18.79, start: 0.000000, bitrate: 1849 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 , 1719 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc (default)
Metadata:
creation_time : 2016-08-13T00:36:19.000000Z
handler_name : ISO Media file produced by Google Inc.
Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
Metadata:
creation_time : 2016-08-13T00:36:19.000000Z
handler_name : ISO Media file produced by Google Inc.
Output #0, null, to '/dev/null':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
encoder : Lavf58.3.100
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 , q=2-31, 1719 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 90k tbc (default)
Metadata:
creation_time : 2016-08-13T00:36:19.000000Z
handler_name : ISO Media file produced by Google Inc.
Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
Metadata:
creation_time : 2016-08-13T00:36:19.000000Z
handler_name : ISO Media file produced by Google Inc.
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press to stop, [?] for help
frame= 1 fps=0.0 q=-1.0 Lsize=N/A time=00:00:00.00 bitrate=N/A speed= 0x
video:93kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
real 0m0.044s
user 0m0.024s
sys 0m0.014s
liuqideMacBook-Pro:srcnn liuqi$ T-Bagwell 发表于 2018-5-8 15:29
执行了一下命令行,单独抽取某一帧,不重新编码为图片,耗时输出信息如下:
我是这么做的 time ffmpeg -ss 00:03:08 -itsoffset 10 -discard nokey -i test.rmvb -vframes 1 -y test.jpg
ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-16)
configuration: --prefix=/data/ffmpeg/
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 /6.107.100
libswscale 4.8.100 /4.8.100
libswresample 2.9.100 /2.9.100
Invalid stream index 2 for index at pos 149650976
Input #0, rm, from 'test.rmvb':
Metadata:
Audiences : Easy RealMedia Tool's Audience;
audioMode : music
Creation Date : 10/18/2011 4:01:27
Description : This File is Created by Easy RealMedia Tools@!
Email : rick@redcheek.net
Generated By : Easy RealMedia Tools V1.8x
HomeWeb : http://redcheek.net
Keywords : www.dymycomic.com
Modification Date: 10/18/2011 4:01:27
videoMode : sharp
File ID : abafa7e0-8b0e-7513-5fd0-cbf8c19baf30
title :
author : ???
copyright : ???°???M
comment :
Duration: 00:26:55.62, start: 0.000000, bitrate: 741 kb/s
Stream #0:0: Audio: aac (LC) (raac / 0x63616172), 44100 Hz, stereo, fltp, 96 kb/s
Stream #0:1: Video: rv40 (RV40 / 0x30345652), yuv420p, 1024x576, 634 kb/s, 23.98 fps, 23.98 tbr, 1k tbn, 1k tbc
Stream mapping:
Stream #0:1 -> #0:0 (rv40 (native) -> mjpeg (native))
Press to stop, [?] for help
deprecated pixel format used, make sure you did set range correctly
Output #0, image2, to 'test.jpg':
Metadata:
Audiences : Easy RealMedia Tool's Audience;
audioMode : music
Creation Date : 10/18/2011 4:01:27
Description : This File is Created by Easy RealMedia Tools@!
Email : rick@redcheek.net
Generated By : Easy RealMedia Tools V1.8x
HomeWeb : http://redcheek.net
Keywords : www.dymycomic.com
Modification Date: 10/18/2011 4:01:27
videoMode : sharp
File ID : abafa7e0-8b0e-7513-5fd0-cbf8c19baf30
title :
author : ???
copyright : ???°???M
comment :
encoder : Lavf57.83.100
Stream #0:0: Video: mjpeg, yuvj420p(pc), 1024x576, q=2-31, 200 kb/s, 23.98 fps, 23.98 tbn, 23.98 tbc
Metadata:
encoder : Lavc57.107.100 mjpeg
Side data:
cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
frame= 1 fps=0.0 q=4.0 Lsize=N/A time=00:00:00.04 bitrate=N/A dup=1 drop=1 speed=0.936x
video:16kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
real 0m0.074s
user 0m0.057s
sys 0m0.016s
页:
[1]