用ffmpeg发送视频用-re选项发出视频为25帧 实际视频为60帧 怀疑是ffmpeg看到level等决定用25帧发送
后来通过产看ffmpeg参数发现-r选项就是用来指定帧率的 但是怎么设置一直都没有生效
昨天通过调试ffmpeg的时候发现 我用的版本ffmpeg是可以指定帧率发送的 后来测试我的常用发送程序发现也可以 很奇怪
后来发现我用的264文件是董给我录制的720P 我用elecard进行分析的时候发现720P可以读出帧率 但1080P 90m的那个都不出来 原来文件有问题
今天再次用1080p视频在3.0饭饭没碰过下做帧率实验发现竟然可以发出稳定的60帧视频 对比两次控制台输出如下:
ffmpeg version N-45279-g1a104bf Copyright (c) 2000-2012 the FFmpeg developers
built on Oct 10 2012 19:19:16 with gcc 4.7.2 (GCC)
configuration: --enable-gpl --enable-version3 --disable-pthreads --enable-runt
ime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libass -
-enable-libcelt --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-l
ibfreetype --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libopenj
peg --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheo
ra --enable-libutvideo --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-li
bvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --ena
ble-zlib
libavutil 51. 74.100 / 51. 74.100
libavcodec 54. 65.100 / 54. 65.100
libavformat 54. 31.100 / 54. 31.100
libavdevice 54. 3.100 / 54. 3.100
libavfilter 3. 19.102 / 3. 19.102
libswscale 2. 1.101 / 2. 1.101
libswresample 0. 16.100 / 0. 16.100
libpostproc 52. 1.100 / 52. 1.100
[h264 @ 01eeb400] max_analyze_duration 5000000 reached at 5000000
[h264 @ 01eeb400] Estimating duration from bitrate, this may be inaccurate
Input #0, h264, from '1.h264':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: h264 (High), yuv420p, 1920x1080, 25 fps, 25 tbr, 1200k t
bn, 50 tbc
[udp @ 0464c060] 'circular_buffer_size' option was set but it is not supported o
n this build (pthread support is required)
[udp @ 0464c0e0] 'circular_buffer_size' option was set but it is not supported o
n this build (pthread support is required)
ffmpeg version 3.0.git Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 4.8.1 (GCC)
configuration: --enable-debug --disable-shared --disable-optimizations
libavutil 55. 33.100 / 55. 33.100
libavcodec 57. 63.103 / 57. 63.103
libavformat 57. 55.100 / 57. 55.100
libavdevice 57. 0.103 / 57. 0.103
libavfilter 6. 64.100 / 6. 64.100
libswscale 4. 1.100 / 4. 1.100
libswresample 2. 2.100 / 2. 2.100
Input #0, h264, from '1.h264':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: h264 (High), 1 reference frame, yuv420p(progressive, lef
t), 1920x1080 (1920x1088), 25 fps, 25 tbr, 1200k tbn, 50 tbc
[udp @ 064d0360] 'circular_buffer_size' option was set but it is not supported o
n this build (pthread support is required)
[udp @ 064d0480] 'circular_buffer_size' option was set but it is not supported o
n this build (pthread support is required)
2.3版本会多出以下内容
[h264 @ 01eeb400] max_analyze_duration 5000000 reached at 5000000
[h264 @ 01eeb400] Estimating duration from bitrate, this may be inaccurate
我调试了3.0ffmpeg发现也会进入第一条信息 但是是绿色级别 并且没有输出第二条 果然是低版本惹的祸
720p版本可以通过analyze检测的原因估计是文件太小的缘故