Videojs HLS Live проблема с длительным воспроизведением - PullRequest
0 голосов
/ 13 ноября 2018

Я создаю видеоплеер, используя video-js HLS для воспроизведения видео HLS Live.Я создаю 16 видеоплееров и одновременно подключаю 16 разных URL HLS.Ниже часть java-скрипта для создания видео элемента.

  var video = document.getElementById("video_id");


  var player = videojs(video,{hls:{ bandwidth: 102400,enableLowInitialPlaylist:true}});
                 player.src({
                 src: videoURL,
                 type: 'application/x-mpegURL',
                 withCredentials: false
                });

Код работает нормально, и объем используемой оперативной памяти составляет около 33-400 МБ, но проблема в том, что со временем использование памяти (ОЗУ) постепенно увеличивается, и примерно через 2-3 часаОЗУ достигает более 2 ГБ, и происходит сбой браузера из-за проблем с памятью.

Я пробовал способ уменьшить эту проблему, например, уничтожить всех игроков за 15 минут, создать нового игрока и заново подключить прямую трансляцию.Это оказывает некоторое влияние на код при выполнении шага, на котором уменьшается использование ОЗУ, но оно составляет около 400-500 МБ, что означает, что использование памяти все еще увеличивается в каждом 15-минутном цикле, и оно достигает 2 ГБ через 5-6 часов и браузеравылетает.

Вот код удаления видеозаписей

    var videoElement =  document.getElementById(video_id);
    if (typeof(videoElement) != 'undefined' && videoElement != null){
        var player =  videojs(video_id);
        player.dispose();
    }

В чем может быть причина, это также любое кеш-хранилище в Live play, если да, то как я могу очистить память.

...