websocketでライブストリーミングを再生するためにMedia Source Extension(MSE)APIを使用しようとしました。ブラウザが約1日間クラッシュする以外はすべて正常に動作します。私はまた、記憶が常に増加することを発見しました。以下は私のスニペットです。あまりにも多くのデータを追加するとメモリが常に増加し、Chromeの異常な動作につながると思います。メモリリークを防ぐために、MSE /ビデオバッファをMSE API経由でリリースすることは可能ですか?Media Source Extensionビデオがクラッシュしました(メモリリーク)
OS: のWindows 7 SP1 64ビット のWindows 10 64ビットの数秒を保ち、既に再生されたコンテンツを削除する
var buffer_size = 5*1024*1024;
var buffer_index = 0;
var video = null;
var frag_mp4_buffer = new Uint8Array(buffer_size);
websocket.onmessage = function(evt){
var buffer = new Uint8Array(evt.data);
if(buffer.length !=0){
if((buffer_index + buffer.length) <= buffer_size){
frag_mp4_buffer.set(buffer, buffer_index);
buffer_index = buffer_index + buffer.length;
if(sourceBuffer.updating == false){
var appended = frag_mp4_buffer.slice(0,buffer_index);
sourceBuffer.appendBuffer(appended);
frag_mp4_buffer.fill(0);
buffer_index = 0;
}
}
}
};