我尝试录制视频流(来自网络或本地网络摄像头流)并将其保存为.mp4 / .flv文件。我使用FFmpeg的版本为“N-59696-gc0a33c4”。
问题不在于录制流,而是记录开始录制所需的日志。
这是我用来捕获流的参数(流是我在网上找到的一些随机流):
ffmpeg.exe -i mmsh://live.camstreams.com/cscamscape?MSWMExt=.asf -r 25 -t 60 C:\temp\video.mp4
并导致此输出:
ffmpeg.exe -i mmsh://live.camstreams.com/cscams
cape?MSWMExt=.asf -r 25 -t 60 C:\temp\video.mp4
ffmpeg version N-59696-gc0a33c4 Copyright (c) 2000-2014 the FFmpeg developers
built on Jan 8 2014 22:01:50 with gcc 4.8.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-libcaca --enable-libfreetyp
e --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --ena
ble-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-l
ibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libsp
eex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aa
cenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavp
ack --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
libavutil 52. 62.100 / 52. 62.100
libavcodec 55. 47.100 / 55. 47.100
libavformat 55. 22.102 / 55. 22.102
libavdevice 55. 5.102 / 55. 5.102
libavfilter 4. 0.103 / 4. 0.103
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.104 / 0. 17.104
libpostproc 52. 3.100 / 52. 3.100
[wmv3 @ 0275db40] Extra data: 8 bits left, value: 0
Input #0, asf, from 'mmsh://live.camstreams.com/cscamscape?MSWMExt=.asf':
Metadata:
title : Live Fish Cam
WMFSDKNeeded : 0.0.0.0000
DeviceConformanceTemplate: SP
WMFSDKVersion : 11.0.5721.5275
IsVBR : 0
Duration: N/A, start: 3887858.274000, bitrate: 512 kb/s
Stream #0:0(eng): Video: wmv3 (Simple) (WMV3 / 0x33564D57), yuv420p, 640x360
, 512 kb/s, 62.50 tbr, 1k tbn, 1k tbc
[libx264 @ 0275e400] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
[libx264 @ 0275e400] profile High, level 3.0
[libx264 @ 0275e400] 264 - core 140 r2377 1ca7bb9 - H.264/MPEG-4 AVC codec - Cop
yleft 2003-2013 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deb
lock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 m
e_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chro
ma_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 scene
cut=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
[wmv3 @ 0275db40] Extra data: 8 bits left, value: 0
Output #0, mp4, to 'C:\temp\video.mp4':
Metadata:
title : Live Fish Cam
WMFSDKNeeded : 0.0.0.0000
DeviceConformanceTemplate: SP
WMFSDKVersion : 11.0.5721.5275
IsVBR : 0
encoder : Lavf55.22.102
Stream #0:0(eng): Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 6
40x360, q=-1--1, 12800 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (wmv3 -> libx264)
Press [q] to stop, [?] for help
frame= 148 fps=0.0 q=28.0 size= 228kB time=00:00:03.60 bitrate= 518.3kbits/
frame= 151 fps=117 q=28.0 size= 236kB time=00:00:03.72 bitrate= 519.2kbits/
frame= 178 fps= 91 q=28.0 size= 298kB time=00:00:04.80 bitrate= 508.3kbits/
frame= 204 fps= 64 q=28.0 size= 347kB time=00:00:05.84 bitrate= 487.4kbits/
...
... And so on ...
现在的问题是,在我输入命令后,录制开始需要大约6-10秒。
有没有办法加快这个过程?
答案 0 :(得分:0)
如果你想做出像我一样的解决方案,你可以这样做: