看板 AVEncode 關於我們 聯絡資訊
最近剛接觸影音這塊,在處理rtsp stream 轉為 mp4 檔案時遇到一個問題, 我有一個rtsp stream,我想用把這個stream 存成檔案, 但發現ffmpeg會讀不到stream的資料。 使用 ffmpeg 2.8.15 我有使用VLC來確定rtsp stream是可正常播放 並且使用其他的rtsp stream來驗證功能是正常的 在VLC上兩個stream 都可以正常播放 用VLC的Codec Info來觀察了兩個stream的差別發現些許不同 正常的stream: Stream 0: Type: Video Codec: H264-MPEG-4 AVC(part 10)(h264) Resolution: 1920x1080 Frame Rate: 24 Decoded format: Planar 4:2:0 YUV 無法讀取的Stream : Stream 0: // stream type 為AVMEDIA_TYPE_VIDEO Type: Video Codec: H264-MPEG-4 AVC(part 10)(h264) Stream 1: //ffmpeg 會把這個stream type 認定為AVMEDIA_TYPE_DATA Type: Video Codec: H264-MPEG-4 AVC(part 10)(h264) Resolution: 1920x1080 Frame Rate: 24 Decoded format: Planar 4:2:0 YUV ffmpeg 會去讀取 stream 0 但資料看起來是在stream 1 ?? 有嘗試直接用Stream 1 來當做是 video stream 但後續decode時會找不到decoder,回報錯誤 avcodec_find_decoder(av_dec_ctx->codec_id) //返回NULL 觀察RTSP交換資訊的SDP裡面看到 Stream 1 是 m=application 0 RTP/AVP 107 a=control:trackID=12 a=rtpmap:107 vnd.onvif.metadata/90000 所以ffmpeg 把 stream type 認定為 AVMEDIA_TYPE_DATA 似乎也沒錯?? 有幾個問題想請教 1. 請問有什麼辦法讓ffmpeg 可以支援此種格式的rtsp stream ?? 2. 什麼原因導致兩種stream 格式不相同?? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.23.39.77 ※ 文章網址: https://www.ptt.cc/bbs/AVEncode/M.1546424338.A.5C4.html
neidhart: VLC可讀的話,直接用VLC save to file呢? 02/07 09:53