Eu tenho transmissão ao vivo do HLS e quero para convertê-lo em MPEG-DASH.
Qual é a melhor prática?
O fluxo já é h264 aac, portanto, eu entendo que não preciso reencionar e só preciso transmuxar.
O que devo usar? ffmpeg? mp4box?
Notas:
Eu usei nginx-rtmp-module para criar o DASH a partir do stream RTMP de acordo com este tutorial: link Mas nginx-rtmp-module pode obter como entrada apenas fluxos rtmp e ele não funcionou para me com fluxo HLS.
Eu usei o ffmpeg para criar dash a partir de m3u8 da seguinte forma:
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
Mas isso é muito limitado. Não consigo controlar a duração do segmento. O parâmetro min_seg_duration do ffmpeg não funciona muito bem para mim, e também pode definir a duração mínima enquanto eu quero limitar a duração máxima de cada segmento (o segmento sai com ~ 10 segundos, enquanto eu preciso que ele seja ~ 2 -4 segundos enquanto estou tocando ao vivo).