下面是我用来将图像转换为视频的ffmpeg,但将图像转换成5秒的视频大约需要3分钟。如果我在目录中的图像上运行命令,它会很快将图像转换为视频。
有人能说出我做错了什么吗?
ffmpeg -loop 1 -i 'https://cdn.pixabay.com/photo/2020/10/23/12/03/arch-5678549__340.jpg' -t 5 -vf scale=1280:780 output.mp4
ffmpeg version n4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
configuration: --prefix= --prefix=/usr --disable-debug --disable-doc --disable-static --enable-cuda --enable-cuda-sdk --enable-cuvid --enable-libdrm --enable-ffplay --enable-gnutls --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libmp3lame --enable-libnpp --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopus --enable-libpulse --enable-sdl2 --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxvid --enable-nonfree --enable-nvenc --enable-omx --enable-openal --enable-opencl --enable-runtime-cpudetect --enable-shared --enable-vaapi --enable-vdpau --enable-version3 --enable-xlib
libavutil 56. 51.100 / 56. 51.100
libavcodec 58. 91.100 / 58. 91.100
libavformat 58. 45.100 / 58. 45.100
libavdevice 58. 10.100 / 58. 10.100
libavfilter 7. 85.100 / 7. 85.100
libswscale 5. 7.100 / 5. 7.100
libswresample 3. 7.100 / 3. 7.100
libpostproc 55. 7.100 / 55. 7.100
Input #0, image2, from 'https://cdn.pixabay.com/photo/2021/04/17/18/26/woman-6186493__340.jpg':
Duration: 00:00:00.04, start: 0.000000, bitrate: 5538 kb/s
Stream #0:0: Video: mjpeg (Progressive), yuvj420p(pc, bt470bg/unknown/unknown), 511x340 [SAR 1:1 DAR 511:340], 25 fps, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[swscaler @ 0x5580ac8e7c40] deprecated pixel format used, make sure you did set range correctly
[libx264 @ 0x5580ac186b40] using SAR=1034/1129
[libx264 @ 0x5580ac186b40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2 AVX512
[libx264 @ 0x5580ac186b40] profile High, level 3.2
[libx264 @ 0x5580ac186b40] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'output.mp4':
Metadata:
encoder : Lavf58.45.100
Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuvj420p(pc), 1280x780 [SAR 19929:21760 DAR 511:340], q=-1--1, 25 fps, 12800 tbn, 25 tbc
Metadata:
encoder : Lavc58.91.100 libx264
Side data:
cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame= 100 fps=0.0 q=28.0 size= 0kB time=00:00:01.64 bitrate= 0.2kbits/frame= 125 fps=0.0 q=-1.0 Lsize= 90kB time=00:00:04.88 bitrate= 151.7kbits/s speed=6.79x
video:88kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.618829%
[libx264 @ 0x5580ac186b40] frame I:1 Avg QP:16.31 size: 75247
[libx264 @ 0x5580ac186b40] frame P:31 Avg QP:16.13 size: 314
[libx264 @ 0x5580ac186b40] frame B:93 Avg QP:31.33 size: 49
[libx264 @ 0x5580ac186b40] consecutive B-frames: 0.8% 0.0% 0.0% 99.2%
[libx264 @ 0x5580ac186b40] mb I I16..4: 10.6% 77.6% 11.8%
[libx264 @ 0x5580ac186b40] mb P I16..4: 0.0% 0.0% 0.0% P16..4: 2.5% 0.2% 0.2% 0.0% 0.0% skip:97.2%
[libx264 @ 0x5580ac186b40] mb B I16..4: 0.0% 0.0% 0.0% B16..8: 0.4% 0.0% 0.0% direct: 0.0% skip:99.6% L0: 8.3% L1:91.7% BI: 0.0%
[libx264 @ 0x5580ac186b40] 8x8 transform intra:77.5% inter:98.7%
[libx264 @ 0x5580ac186b40] coded y,uvDC,uvAC intra: 88.4% 95.3% 79.5% inter: 0.1% 0.5% 0.0%
[libx264 @ 0x5580ac186b40] i16 v,h,dc,p: 2% 3% 0% 95%
[libx264 @ 0x5580ac186b40] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 21% 18% 7% 6% 11% 10% 10% 8% 8%
[libx264 @ 0x5580ac186b40] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 24% 18% 7% 5% 16% 11% 9% 6% 4%
[libx264 @ 0x5580ac186b40] i8c dc,h,v,p: 33% 21% 22% 24%
[libx264 @ 0x5580ac186b40] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x5580ac186b40] ref P L0: 85.7% 0.1% 13.2% 1.0%
[libx264 @ 0x5580ac186b40] ref B L0: 53.6% 46.4%
[libx264 @ 0x5580ac186b40] ref B L1: 92.8% 7.2%
[libx264 @ 0x5580ac186b40] kb/s:143.20
aman@aman:~/Desktop/a$ ffmpeg -loop 1 -i 'https://cdn.pixabay.com/photo/2021/04/17/18/26/woman-6186493__340.jpg' -t 5 -vf scale=1280:780 output.webm
ffmpeg version n4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
configuration: --prefix= --prefix=/usr --disable-debug --disable-doc --disable-static --enable-cuda --enable-cuda-sdk --enable-cuvid --enable-libdrm --enable-ffplay --enable-gnutls --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libmp3lame --enable-libnpp --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopus --enable-libpulse --enable-sdl2 --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxvid --enable-nonfree --enable-nvenc --enable-omx --enable-openal --enable-opencl --enable-runtime-cpudetect --enable-shared --enable-vaapi --enable-vdpau --enable-version3 --enable-xlib
libavutil 56. 51.100 / 56. 51.100
libavcodec 58. 91.100 / 58. 91.100
libavformat 58. 45.100 / 58. 45.100
libavdevice 58. 10.100 / 58. 10.100
libavfilter 7. 85.100 / 7. 85.100
libswscale 5. 7.100 / 5. 7.100
libswresample 3. 7.100 / 3. 7.100
libpostproc 55. 7.100 / 55. 7.100
Input #0, image2, from 'https://cdn.pixabay.com/photo/2021/04/17/18/26/woman-6186493__340.jpg':
Duration: 00:00:00.04, start: 0.000000, bitrate: 5538 kb/s
Stream #0:0: Video: mjpeg (Progressive), yuvj420p(pc, bt470bg/unknown/unknown), 511x340 [SAR 1:1 DAR 511:340], 25 fps, 25 tbr, 25 tbn, 25 tbc
File 'output.webm' already exists. Overwrite? [y/N] y
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg (native) -> vp9 (libvpx-vp9))
Press [q] to stop, [?] for help
[swscaler @ 0x5630553879c0] deprecated pixel format used, make sure you did set range correctly
[libvpx-vp9 @ 0x563054cd2500] v1.7.0
[libvpx-vp9 @ 0x563054cd2500] Neither bitrate nor constrained quality specified, using default CRF of 32
Output #0, webm, to 'output.webm':
Metadata:
encoder : Lavf58.45.100
Stream #0:0: Video: vp9 (libvpx-vp9), yuv420p, 1280x780 [SAR 19929:21760 DAR 511:340], q=-1--1, 25 fps, 1k tbn, 25 tbc
Metadata:
encoder : Lavc58.91.100 libvpx-vp9
Side data:
cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame= 57 fps=0.0 q=0.0 size= 1kB time=00:00:01.28 bitrate= 3.3kbits/sframe= 103 fps=102 q=0.0 size= 1kB time=00:00:03.12 bitrate= 1.3kbits/sframe= 125 fps= 85 q=0.0 Lsize= 51kB time=00:00:04.96 bitrate= 84.0kbits/s speed=3.37x
video:50kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.571023%
ffmpeg
正在进行重复的GET请求。示例服务器日志:
[20/Apr/2021:08:51:15 -0800] "GET /image.jpg HTTP/1.1" 206 36166
[20/Apr/2021:08:51:16 -0800] "GET /image.jpg HTTP/1.1" 206 36166
[20/Apr/2021:08:51:16 -0800] "GET /image.jpg HTTP/1.1" 206 36166
简单的解决方案是在执行ffmpeg
:之前使用curl
、wget
或类似的方法来获取文件
curl -L -o image.jpg https://cdn.pixabay.com/photo/2020/10/23/12/03/arch-5678549__340.jpg
ffmpeg -loop 1 -i image.jpg -t 5 -vf scale=1280:780,format=yuv420p -movflags +faststart output.mp4