%EC%9D%84%20mpd(MPEG-DASH)%EB%A1%9C%20%EB%B3%80%ED%99%98.png)
나는 가지고있다HLS의 라이브 스트림MPEG-DASH로 변환하고 싶습니다.
모범 사례는 무엇입니까?
스트림은 이미 h264 aac이므로 다시 인코딩할 필요가 없고 트랜스먹스만 하면 된다는 것을 이해합니다.
무엇을 사용해야 합니까? ffmpeg? mp4박스?
노트:
나는 사용했다nginx-rtmp-모듈이 튜토리얼에 따라 RTMP 스트림에서 DASH를 생성하려면:https://isrv.pw/html5-live-streaming-with-mpeg-dash그러나 nginx-rtmp-module은 rtmp 스트림만 입력으로 얻을 수 있으며 HLS 스트림에서는 작동하지 않았습니다.
다음과 같이 m3u8에서 대시를 생성하기 위해 ffmpeg를 사용했습니다.
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
그러나 이것은 매우 제한적입니다. 세그먼트 기간을 제어할 수 없습니다. ffmpeg의 min_seg_duration 매개변수는 저에게 잘 작동하지 않으며 각 세그먼트의 최대 지속 시간을 제한하고 싶을 때 최소 지속 시간을 설정할 수도 있습니다(세그먼트는 ~10초로 나오지만 저는 ~2초가 필요합니다) 라이브로 플레이할 때 -4초).