When encoding H.264 using ffmpeg I get the following type of warnings en masse:
Past duration 0.606377 too large ?
FFMpeg版本在2015年1月15日后經常顯示此警告。 它已被添加以警告可能的速率控制失真,否則不會造成任何危害。
real-time buffer 98% full! frame dropped?
ffmpeg -re -rtbufsize 1000M -f dshow -i video="Lenovo EasyCamera":audio="麥克風 (Realtek High Definition Audio)" -vcodec libx264 -b:v 1000k -acodec libvo_aacenc -f rtsp rtsp://231131/tinywan123.sdp
ffmpeg RTP: missed 12 packets?
ffmpeg -rtsp_transport tcp -re -i "rtsp://192.168.18.240:554/onvif/live/1" -vcodec copy -acodec copy -f rtsp "rtsp://trspServer/2001.sdp"
解決辦法:添加TCP協議即可解決。
Error setting option profile to value baseline ?
說明:基線配置文件僅應用於視頻,
解決辦法:http://askubuntu.com/questions/335292/avconv-does-not-support-setting-profile-for-mp4-h264-aac
avconv -i 'Video2.WMV' \ -vcodec libx264 -preset ultrafast -profile:v baseline \ -acodec aac -strict experimental \ -r 24 -b 255k -ar 44100 -ab 59k 'Video2.mp4'
'circular_buffer_size' option was set but it is not supported on this build (pthread support is requ
[udp @ 00000000002cff20] 'circular_buffer_size' option was set but it is not supported on this build (pthread support is required) [udp @ 0000000000341d80] 'circular_buffer_size' option was set but it is not supported on this build (pthread support is required) [rtp @ 00000000002cf780] Only one stream supported in the RTP muxer
這意味着你的ffmpeg生成沒有啟用pthreads,這是udp / rtp muxing正常工作的
一個要點,這里要注意的是,你只是指定輸入文件和輸出FORMAT(container),你沒有指定什么你喜歡做你的流(在這種情況下aac音頻和h264視頻),所以ffmpeg決定重新編碼它在一些“默認值”,如:
Stream mapping: Stream #0:1 -> #0:0 (h264 -> mpeg4) Stream #0:0 -> #0:1 (aac -> pcm_mulaw)
您可以嘗試指定-c copy(僅復制音頻/視頻流,而不重新編碼)或指定正確的音頻(-c:a)和視頻(-c:v)編解碼器,以及它們的正確選項比特率等。對於第二個問題,您需要與ffmpeg一起使用ffserver,因為單獨的ffmpeg不是設計為rtsp廣播服務器(這是ffserver的角色)。