-
-
Notifications
You must be signed in to change notification settings - Fork 5.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support http-mp4 file stream, fmp4 stream. #174
Comments
MP4 itself is a box within a box, not a streaming mode. Later, someone improved the box structure of MP4, similar to turning the box into an FLV tag or stacking the boxes side by side. If the client supports parsing and playing the boxes simultaneously, it can achieve similar functionality to HTTP-FLV. It seems that Silverlight, the deceased Silverlight, and the MP4 stream directly with IIS are examples of this approach.
|
WeChat Mini Program supports playing HLS live streaming and on-demand streaming, as well as HTTP-MP4 on-demand files. Let's see if it also supports HTTP MP4 live streaming and how much the latency can be reduced. Microsoft's Live Smooth Streaming uses fragmented MP4: https://technet.microsoft.com/en-us/library/7d5f47fa-886b-4321-8367-60b1a126d4dd This article specifically discusses fragmented MP4: http://blog.csdn.net/yu_yuan_1314/article/details/9289827 mp4box can generate this type of file.
GPAC (mp4box) official website: https://gpac.wp.mines-telecom.fr/mp4box/ GPAC on GitHub: https://github.com/gpac/gpac There is an article discussing the replacement of HTTP with RTMP: http://blog.streamingmedia.com/2016/09/flash-rtmp-streaming-dying-out.html. It does not propose a fundamental solution to support RTMP-level latency. Here is someone who tried fmp4 and said that H5 does not support it: https://my.oschina.net/langhuihui/blog/519901. You can convert the SRS instance avatar.flv to mp4.
Use mp4box to view information.
mp4box parameters:
Convert regular mp4 to fmp4:
You can use mp4info to see a small mp4 fragment every 3 seconds: However, with WeChat mini program, it can only play the first 3 seconds, which means it does not have complete support for fragment mp4. The loading speed and the speed of starting playback are both fast, but unfortunately it does not continue to parse the remaining moof box... The two MP4 links are as follows. Regular MP4: For other live streaming methods on WeChat, please refer to:
|
In addition, the browsers on PC for fmp4 are as follows:
Consider putting this unreliable protocol into consideration for SRS4+.
|
You can try to support MPEG-TS and then use jsmpeg to achieve playback on regular HTML5 pages and within WeChat. If you use Canvas, it will also work fine in mini programs, although it may not be as efficient as WebGL. It seems that it would be better to directly raise an issue for this.
|
flv.js is used in the frontend to convert flv to fmp4, why is it no longer supported?
|
@wony-zheng MSE is supported, but playing MPEG4 streams directly in the browser is a different framework from MSE.
|
The conclusion is that MP4 streaming is unreliable.
|
https://github.com/winlinvip/simple-rtmp-server/issues/174
TRANS_BY_GPT3
The text was updated successfully, but these errors were encountered: