2017-04-10 148 views
0

我尝试使用FFMPEG命令使用最新的FFMPEG exe文件。该命令执行得很好。但输出文件没有被创建。FFMPEG命令(用于捕获关键帧)执行,但不创建输出文件

这是我从DOS提示符尝试的命令。根据同事的评论,这是(命令)工作之前没有任何麻烦。

D:\Utilities\FFMPegVideoManager\FFMPEG_updated\ffmpeg.exe -i 
"M:\content\video.mp4" -y -ss 1 -frames 1 
"E:\frame\testtest.jpg" 

执行后的输出是

C:\Users\ABCD>D:\Utilities\FFMPegVideoManager\FFMPEG_updated\ffmpeg.exe -i "M:\FTP Home Directory\LocalUser\WAP_UAT\Processing Folder\wspa1\Delivery\San4\content\0101_eatingredpanda.mp4" -y -ss 1 -frames 1 "E:\sandeep\testtest.jpg" 
ffmpeg version N-85266-g1229007 Copyright (c) 2000-2017 the FFmpeg developers 
    built with gcc 6.3.0 (GCC) 
    configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib 
    libavutil  55. 59.100/55. 59.100 
    libavcodec  57. 90.100/57. 90.100 
    libavformat 57. 72.100/57. 72.100 
    libavdevice 57. 7.100/57. 7.100 
    libavfilter  6. 83.100/6. 83.100 
    libswscale  4. 7.100/4. 7.100 
    libswresample 2. 8.100/2. 8.100 
    libpostproc 54. 6.100/54. 6.100 
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'M:\content\0101_eatingredpanda.mp4': 
    Metadata: 
    major_brand  : isom 
    minor_version : 512 
    compatible_brands: isomiso2mp41 
    creation_time : 1970-01-01T00:00:00.000000Z 
    encoder   : Lavf52.31.0 
    Duration: 00:00:19.52, start: 0.000000, bitrate: 12506 kb/s 
    Stream #0:0(eng): Video: mpeg4 (Simple Profile) (mp4v/0x7634706D), yuv420p, 960x540 [SAR 1:1 DAR 16:9], 12373 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc (default) 
    Metadata: 
     creation_time : 1970-01-01T00:00:00.000000Z 
     handler_name : VideoHandler 
    Stream #0:1(eng): Audio: aac (LC) (mp4a/0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default) 
    Metadata: 
     creation_time : 1970-01-01T00:00:00.000000Z 
     handler_name : SoundHandler 
Stream mapping: 
    Stream #0:0 -> #0:0 (mpeg4 (native) -> mjpeg (native)) 
Press [q] to stop, [?] for help 
[swscaler @ 0000000006238340] deprecated pixel format used, make sure you did set range correctly 
Output #0, image2, to 'E:\sandeep\testtest.jpg': 
    Metadata: 
    major_brand  : isom 
    minor_version : 512 
    compatible_brands: isomiso2mp41 
    encoder   : Lavf57.72.100 
    Stream #0:0(eng): Video: mjpeg, yuvj420p(pc), 960x540 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc (default) 
    Metadata: 
     creation_time : 1970-01-01T00:00:00.000000Z 
     handler_name : VideoHandler 
     encoder   : Lavc57.90.100 mjpeg 
    Side data: 
     cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1 
frame= 1 fps=0.0 q=6.6 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=0.447x 
video:48kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown 

所以从它似乎是罚款输出detials。那么为什么不创建输出文件?由于

回答

0

您可以从您的视频文件试试这个命令提取物中的第一帧:

ffmpeg.exe -i M:\内容\ video.mp4 -vf“选择= GTE(N \ 1)” -vframes 1 out_1.png

例如,如果你想获得一个100帧以下的变体将是合适的:

ffmpeg.exe -i M:\内容\视频.MP4 -vf “选择= GTE(N \ 100)” -vframes 1 out_100.png

对于识别视频文件kayframes你可以尝试下命令:

ffprobe。 exe M:\ content \ video.mp4 -show_entries frame = key_frame -select_streams v -of compact = p = 0