ฉันมีสตรีมสดของ HLSและฉันต้องการแปลงเป็น MPEG-DASH
การปฏิบัติที่ดีที่สุดคืออะไร?
กระแสข้อมูลมีอยู่แล้ว h264 aac ดังนั้นฉันเข้าใจว่าฉันไม่จำเป็นต้องเข้ารหัสและฉันเพียงแค่ต้องส่งข้อมูล
ฉันควรใช้อะไร ffmpeg? mp4box?
หมายเหตุ:
ฉันใช้nginx-rtmp-moduleเพื่อสร้าง DASH จาก RTMP stream ตามบทช่วยสอนนี้: https://isrv.pw/html5-live-streaming-with-mpeg-dashแต่https://isrv.pw/html5-live-สตรีมสตรีม rtmp และมันไม่ได้ผลสำหรับฉันด้วยสตรีม HLS
ฉันใช้ ffmpeg เพื่อสร้าง dash จาก m3u8 ดังต่อไปนี้:
ffmpeg -i https://82-80-192-30.vidnt.com/ipbc_IPBCchannel11LVMRepeat/_definst_/IPBCchannel11LVM_3.stream/playlist.m3u8 -strict -2 -min_seg_duration 2000 -window_size 5 -extra_window_size 5 -use_template 1 -use_timeline 1 -f dash out.mpd
แต่นี่มีข้อ จำกัด มาก ฉันไม่สามารถควบคุมระยะเวลาของเซ็กเมนต์ได้ พารามิเตอร์ min_seg_duration ของ ffmpeg ทำงานได้ไม่ดีสำหรับฉันและมันยังสามารถตั้งค่าระยะเวลาต่ำสุดในขณะที่ฉันต้องการ จำกัด ระยะเวลาสูงสุดของแต่ละเซ็กเมนต์ (เซ็กเมนต์ออกมาด้วย ~ 10 วินาทีในขณะที่ฉันต้องการให้เป็น ~ 2 -4 วินาทีในขณะที่ฉันกำลังเล่นสด)