Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to play .m4s file given in mpd of MPEG-DASH on player?

I have downloaded the MPDs "http://dash.edgesuite.net/adobe/hdworld_dash/HDWorld.mpd" and all related .m4s files. I tried running it on VLC player. But the format is not recognized by VLC player.

I have downloaded this media segment using wget (1 to 14 segments are available) http://dash.edgesuite.net/adobe/hdworld_dash/hdworld_seg_hdworld_0696kbps_ffmpeg.mp4.video_temp2.m4s.

Can anybody tell me solution how to run .m4s format file on player?

System: Ubuntu 11.10

like image 671
mojkaro1988 Avatar asked Dec 03 '12 11:12

mojkaro1988


People also ask

How do I open MPD files with VLC?

Also, VLC 3.0. 0+ can play that kind of file from a url, just open VLC, use the shortcut CTRL+N, paste the url and enjoy. Show activity on this post. A DASH player plays an MPD by selecting a Period, and in the Period one or more AdaptationSet, and then one Representation per AdaptationSet.

What is MPD in MPEG-DASH?

The Media Presentation Description (MPD) is a document that contains metadata required by a DASH Client to construct appropriate HTTP-URLs to access Segments and to provide the streaming service to the user.

How do I play a MPD stream?

You have to enter the URL of your MPEG-DASH stream (mpd file) and click on the big, yellow button for the player to play it back. THEOPlayer's demo player provides a bunch of useful information next to the video itself that is useful in keep track of the playback and debugging issues if they arise.

How do I play an M4S file?

How to open an M4S file. M4S files cannot be opened and played individually. To play the video an M4S file contains, you must: Combine all the M4S files that comprise a single streamed video into one M4S file.


2 Answers

You need the initialization segment. It is often named "00" or "init" or doesn't have a sequence number like the other files, and often ends in ".mp4" rather than ".m4s". Then you just concatenate the files together. You can start anywhere in the sequence so long as you begin with the initialization segment.

For example

cat init.mp4 *.m4s > output.mp4

Then you have a playable mp4 file with content, assuming there is no encryption (DRM) applied to it.

like image 106
Ted Percival Avatar answered Sep 19 '22 14:09

Ted Percival


.m4s file format is ISO Base Media File. i.e. MPEG-4 Part 14. read specs for more info you may get m4s player for windows. As far as I know on Linux platform GPAC will help. You can create your own MPD from any media source using MP4Box a GPAC tool.

You can use MP4Client for playing your DASHed Media from MPD. Actually .m4s's separate segment is not able to play by its own bcoz player should know Codec and mime type to play any media and m4s is not supported by any player, i.e. it has its own header and data (moof & mdat).

For playing MPD which contains many m4s segment (you can make your own MPD or download each audio and video segment separately from any MPD & put it in to a same folder):

  1. install GPAC.
  2. $MP4Client MYWorld.mpd will open Osmo4 player and you can see your video is playing. Enjoy..

FYI, local streaming server can also play this video:

$MP4Client http://localhost/MYWorld.mpd

if not working change segmentAlignment flag, i.e. <AdaptationSet segmentAlignment="true" subsegmentAlignment="true">.

like image 42
mojkaro1988 Avatar answered Sep 19 '22 14:09

mojkaro1988