• Как настроить nginx стрим что бы он работал на технике apple?

    @egorkozz
    Гражданин без гражданства.
    тебе поможет связка nginx+rtmp модуль в котором ты настроишь секцию для HLS, в свою очередь HLS создаст файл m3u8 и ты спокойно сможешь воспроизвести стрим на любых устройствах проверенно Win 8-10 в любом браузере даже в IE, в windows 7 в IE не воспроизводит, но в любом другом браузере на ура, Apple техника и Android техника воспроизводит во всем. Моя конфигурация такая на компьютере с win 10 стоит карта захвата, OBS передает rtmp поток в Hyper-V где стоит ubuntu с nginx внутри, nginx слушает rtmp перекодирует в 4 качества при помощи ffmpeg и передает в секцию HLS где уже создается m3u8. В крации описал как мог, сори если немного не понятно, ниже скидываю кусок моей конфигурации.
    rtmp {
    server {
    listen 1935;
    chunk_size 4096;
    application src {
    live on;
    exec ffmpeg -i rtmp://IP:1935/src/$name -c:a aac -b:a 48k -c:v libx264 -s 426x240 -f flv rtmp://IP:1936/hls/$name_low;
    exec ffmpeg -i rtmp://IP/src/$name -c:a aac -b:a 64k -c:v libx264 -s 640x360 -f flv rtmp://IP:1936/hls/$name_mid;
    exec ffmpeg -i rtmp://IP:1935/src/$name -c:a aac -b:a 96k -c:v libx264 -s 854x480 -f flv rtmp://IP:1936/hls/$name_hi;
    exec ffmpeg -i rtmp://IP:1935/src/$name -c:v copy -c:a copy -f flv rtmp://IP:1936/hls/$name_src;
    }
    }
    server{
    listen 1936;
    chunk_size 4096;
    application hls {
    live on;
    hls on;
    hls_path /tmp/hls;
    hls_fragment 5s;
    hls_playlist_length 10s;
    hls_nested on;
    hls_variant _low BANDWIDTH=160000;
    hls_variant _mid BANDWIDTH=320000;
    hls_variant _hi BANDWIDTH=640000;
    hls_variant _src BANDWIDTH=1280000;
    }
    }
    Ответ написан
    Комментировать