Playing m3u8 playlists..

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
hippojay Offline
Fan
Posts: 300
Joined: Mar 2008
Reputation: 14
Location: Sheffield, UK
Post: #1
I've been having some trouble getting XBMC to play m3u8 playlists, and I'm not sure if they are supported (or if I'm doing something wrong).

NOTICE: Creating InputStream
NOTICE: Creating Demuxer
ERROR: CDVDDemuxFFmpeg::Open - error probing input format, http://blahblahblah/something.m3u8
ERROR: CDVDPlayer::OpenDemuxStream - Error creating demuxer
NOTICE: CDVDPlayer::OnExit()
NOTICE: CDVDPlayer::OnExit() deleting input stream
ERROR: Playlist Player: skipping unplayable item: 0, path [plugin://blahblahblah]

Is the error becuase the m3u8 file doesn't have an "input format" or because it cannot read the format from the streams inside the playlist. The files are all .ts files..
find quote
jmarshall Offline
Team-XBMC Developer
Posts: 26,181
Joined: Oct 2003
Reputation: 176
Post: #2
Not supported I should think. How do they differ from .m3u?

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


[Image: badge.gif]
find quote
hippojay Offline
Fan
Posts: 300
Joined: Mar 2008
Reputation: 14
Location: Sheffield, UK
Post: #3
The m3u8 has extra TAGs to allow for streaming and rate adaption. It's basically the HTTP Live Streaming method.

The file to be streamed is broken down into several hundred smaller pieces of several seconds (for example a ninty minute file might be 680 parts of 8 seconds) - this allows for several streams of different quality to be switched between.

These files are mpeg encoded .ts file. As a quick test, I simply pulled out the parts and put them into a xbmc.playlist. This works and I get playback, although there is a stutter when a new file is loaded.

I'm not so bothered about switching rates, more the seemless playback of a playlist, but i'm not sure that this is possible right now.

I've seen that a ticket is open (http://trac.xbmc.org/ticket/11175) which looks to implment HTTP Live Streaming using either changes to ffmpeg or some code that boxee has to deal with playlists.
find quote
spiff Offline
Retired Developer
Posts: 12,386
Joined: Nov 2003
Post: #4
this is being worked on yes. by refactoring the boxee code.
find quote
hippojay Offline
Fan
Posts: 300
Joined: Mar 2008
Reputation: 14
Location: Sheffield, UK
Post: #5
Thanks - I'll keep an eye on the ticket and see how it goes.
find quote
nixterrimus Offline
Junior Member
Posts: 13
Joined: Oct 2008
Reputation: 0
Post: #6
Any news on the backport from Boxee? I'm really excited about having the ability to stream from IOS and test some of my own http live streaming content.

-Nick
find quote
spiff Offline
Retired Developer
Posts: 12,386
Joined: Nov 2003
Post: #7
See my pull request for basic support. Stream selection is just a hack yet since an ffmpeg update is needed
find quote
hippojay Offline
Fan
Posts: 300
Joined: Mar 2008
Reputation: 14
Location: Sheffield, UK
Post: #8
Just checking it out on my own build now and seems to play fine. These are just playlists with a single quality streams though (which is all I was after), so no switching between streams..

Guess i'll just wait now till it hits the GIT..

EDIT: Sorry, for got to say thanks...

EDIT2: just watched a 2 hour film (2000+ segments) and it didn't miss a beat. Seek forwards and backwards works fine too.
(This post was last modified: 2011-05-12 00:56 by hippojay.)
find quote
frgr Offline
Junior Member
Posts: 6
Joined: May 2011
Reputation: 0
Post: #9
hippojay Wrote:Just checking it out on my own build now and seems to play fine. These are just playlists with a single quality streams though (which is all I was after), so no switching between streams..

Guess i'll just wait now till it hits the GIT..

EDIT: Sorry, for got to say thanks...

EDIT2: just watched a 2 hour film (2000+ segments) and it didn't miss a beat. Seek forwards and backwards works fine too.
Forgive my ignorance but how exactly did you get the .m3u8 update? I have some understanding of Github but it sounds like you did not get it from there?
find quote
hippojay Offline
Fan
Posts: 300
Joined: Mar 2008
Reputation: 14
Location: Sheffield, UK
Post: #10
All the info is on github. Look at the Pull requests on the XBMC repository and there is one from around the 17th April by Spiff which covers this.

https://github.com/cptspiff/xbmc/commits/hls

I then cloned the main repo, and manually made those changes (as couldn't work out how to clone a branch of spiffs XBMC dev fork). Luckily the number of changes are pretty small.

Build and away. Only built for Windows though, as that's my primary XBMC platform at the mo.
find quote
frgr Offline
Junior Member
Posts: 6
Joined: May 2011
Reputation: 0
Post: #11
Thanks for the info, I'm going to give that a try tonight
find quote
spiff Offline
Retired Developer
Posts: 12,386
Joined: Nov 2003
Post: #12
"git pull git://github.com/cptspiff/xbmc.git hls" would achieve what you couldn't figure out Smile
find quote
hippojay Offline
Fan
Posts: 300
Joined: Mar 2008
Reputation: 14
Location: Sheffield, UK
Post: #13
Ta and noted...

Also - I guess this won't get pulled into the master until the stream selection logic is worked out?
find quote
spiff Offline
Retired Developer
Posts: 12,386
Joined: Nov 2003
Post: #14
correct.
find quote
frgr Offline
Junior Member
Posts: 6
Joined: May 2011
Reputation: 0
Post: #15
Thanks for the help. This was my first time using Git and compiling anything and it went flawlessly. Now I just need to hope for an updated AirPlayer that allows for proper resumption and timeline scrubbing.
find quote
Post Reply