Javascript 如何从视频文件创建媒体流?
大多数Mediastream示例都是通过webCam-stream进行解释的。但我需要从本地视频文件(.webm或mp4)创建Mediastream。请告诉我。于2017年5月4日更新。:Javascript 如何从视频文件创建媒体流?,javascript,video,streaming,webrtc,mediastreamsource,Javascript,Video,Streaming,Webrtc,Mediastreamsource,大多数Mediastream示例都是通过webCam-stream进行解释的。但我需要从本地视频文件(.webm或mp4)创建Mediastream。请告诉我。于2017年5月4日更新。:captureStreamAPI现在在Chrome和Firefox上都受支持 var stream_from_WebM_or_Mp4_File = videoTag.captureStream(); var stream_from_Canvas2D = canvasTag.captureStre
captureStream
API现在在Chrome和Firefox上都受支持
var stream_from_WebM_or_Mp4_File = videoTag.captureStream();
var stream_from_Canvas2D = canvasTag.captureStream(25);
参数“25”是请求的帧速率
现在,您可以使用RTPeerConnection API或使用MediaRecorder API共享结果流
请检查类似的答案:
有两种可能性: 1)CaptureStreamUntellend 它仅在Firefox上作为“
MozCaptureStreamUntellend
”支持
2)MediaSource API
chrome和firefox都支持MediaSource API;但是,它不是实时媒体流
您可以做的是读取文件块;使用任何传输网关(如WebSocket、socket.io或WebRTC数据通道)与其他用户共享它们;然后使用MediaSourceAPI尽快播放这些区块,而不是等待整个文件共享
记住,chromium和gecko上的WebRTC实现目前都支持单一但“实时”的媒体源;这意味着您不能使用从预录制媒体捕获的流作为实时媒体源。此外,您不能使用假冒的WebAudio流作为实时媒体源 以下代码在Firefox上不起作用:
preRecordedMediaStream = preRecordedMedia.mozCaptureStreamUntilEnded();
peer.addStream(preRecordedMediaStream);
您可以测试演示
更新时间:2014年7月27日(UTC)星期日下午1:06
您可以使用FileReader/WebAudio API捕获预先录制的mp3/ogg文件,并作为实时音频源共享到WebRTC对等连接,就像我在/中所做的一样,谢谢!!现在,我正在阅读您的URL页面。我还没有读完,但它会解决我的问题。阿里加托!!您可以说,MozCaptureStreamUntellend在Firefox中无法传输预录制的文件。在演示中如何使用它:为什么?我刚刚试过这个演示,显然它真的不起作用。这仅仅是为未来的Firefox版本做的一个例子吗?我有一个问题是另一个问题。如果我得到一个从captureStream()创建并源于html元素的MediaStream。如何将此媒体流输出到本地mp4文件?