用ffmpeg打Multicast影音串流


直接把存下來TS打出去
ffmpeg -re -threads 4 -i part.ts -vcodec copy -acodec copy -f mpegts udp://224.1.2.4:12345 -stream_loop -1

-threads 4 使用4個thread來處理
-vcodec copy, -acodec copy 視訊跟音訊都不處理直接拷貝下來
-f mpegts 輸出格式為mpegts,
-stream_loop 1是打2次, 設定-1是無限loop, 0是預設值,表示打1次不loop, 1是多loop一次表示播兩次,以此類推

實際上ffmpeg會parse stream的內容,若是檔案內有使用ffmpeg內未包含的多媒體模組,就打不出去

如果要調整ts的packet size可以用pkt_size=來指定,如果還有別的參數可以用&分隔,不過記得要用雙引號刮起來,不然會被bash認為是要背景執行
ffmpeg -re -threads 4 -i part.ts -vcodec copy -acodec copy -f mpegts "udp://224.1.2.4:12345?pkt_size=1316&fifo_size=50000000" -stream_loop -1

留言