Bạn cần phải sử dụng phần mở rộng nguồn phương tiện truyền thông
Vui lòng tham khảo bên dưới ví dụ
<script>
var appendID = "123";
function onOpen(e) {
var video = e.target;
var headers = GetStreamHeaders();
if (headers == null) {
// Error fetching headers. Signal end of stream with an error.
video.sourceEndOfStream(HTMLMediaElement.EOS_NETWORK_ERR);
}
video.sourceAddId(appendID, 'video/webm; codecs="vorbis,vp8"');
// Append the stream headers (i.e. WebM Header, Info, and Tracks elements)
video.sourceAppend(appendID, headers);
// Append some initial media data.
video.sourceAppend(appendID, GetNextCluster());
}
function onSeeking(e) {
var video = e.target;
// Abort current segment append.
video.sourceAbort(appendID);
// Notify the cluster loading code to start fetching data at the
// new playback position.
SeekToClusterAt(video.currentTime);
// Append clusters from the new playback position.
video.sourceAppend(appendID, GetNextCluster());
video.sourceAppend(appendID, GetNextCluster());
}
function onProgress(e) {
var video = e.target;
if (video.sourceState == video.SOURCE_ENDED)
return;
// If we have run out of stream data, then signal end of stream.
if (!HaveMoreClusters()) {
video.sourceEndOfStream(HTMLMediaElement.EOS_NO_ERROR);
return;
}
video.sourceAppend(appendID, GetNextCluster());
}
var video = document.getElementById('v');
video.addEventListener('sourceopen', onOpen);
video.addEventListener('seeking', onSeeking);
video.addEventListener('progress', onProgress);
</script>
<video id="v" autoplay> </video>
<script>
var video = document.getElementById('v');
video.src = video.mediaSourceURL;
</script>
chào @nvcnvn! bất kỳ tiến bộ nào với chủ đề? Tôi tạo luồng vp8 tới cổng udp và máy chủ nhỏ của tôi tới udp-> websockets. Tôi cũng không biết loại phân khúc khởi tạo nào tôi nên phân phối và cách tạo nó .. – zarkone
@zarkone, tôi thấy đây là "kết thúc chết" cho dự án của tôi, MediaRecoder không chia nhỏ video trong các phần tấn mà nó có thể chơi, nó chỉ đơn giản là chia video thành một phần của byte. Không có cách nào để phát lại các phần này bằng Media Source – nvcnvn