RTMP直播黑屏問題分析與解決

問題發現

一客戶直播環境爲ffmpeg進行rtsp拉流,而後轉換爲rtmp推流.最近ffmpeg版本進行更新後發現後端進行rtmp播放時會出現黑屏現象,可是有數據流.若是使用老版本的ffmpeg則沒有這個問題.後端

問題分析

剛開始出現這個問題懷疑是關鍵幀發送問題,由於rtmp一般第一個video tag包含sps和pps等h264解碼所需的重要信息,若是不發送解碼器則不能解碼,就會出現有數據無圖像的問題.後來抓包和分析調試信息分析,vidoetag信息正常發送,排除這個問題可能.
後來打印時間戳發現,flash播放視頻流時時間戳都爲0,若是改成100則能夠正常播放,到這裏發現是時間戳問題.ide

問題解決

按rtmp協議的規定,Type爲3的時候表示這個chunk的Message Header和上一個是徹底相同的.並且ffmpeg發送的應該爲相對時間戳,而服務端處理爲絕對時間戳,因此致使了這個問題.調試

相關文章
相關標籤/搜索