[MPlayer-dev-eng] Playlists & MPlayer

Arpi arpi at thot.banki.hu
Sat Jan 11 21:18:09 CET 2003


Hi,

> > and it may work, at least for playlists <2048 (maybe <=2048) bytes.
> > (maybe this size limit exists only for streamed (non-seekable) playlist
> > files)
> 
> Are you sure there is a playlist-limit ? I tried one from my local webserver, 
> that was 282418 bytes big and it still worked :)

282kb long playlist? nice :)

hmm, maybe the http:// streaming enables cache by default.

at least i know that several demuxers read even megabytes of the file
before deciding it is not that fileformat (big error-resistance:)).
and since streamed files are non-seekable, it's not possible to reset stream
to pos=0 after all demuxer failed, to parse as playlist.
exceptions are:
- file is shorter than 2048 bytes, then it fits into stream layer's buffer
- cache is enabled and enough big to keep the whole file?
- you re-open the file when parsing as playlist (maybe? not optimal, but
  should always work...)

> > > A quick hack turned out to solve the problem:
> >
> > .. [ugly thing] :)
> 
> That seems to be necessary, before rewrite of demuxers after 0.90 :-/ ...

:(

we should move that into a function at least

> > > This works with streamed and local files ... (Why didn't anyone try this
> > > before ?)
> >
> > dunno
> 
> :)
> 
> >
> > > Btw. before I forget plaintext-parsing is not broken, but somewhat too
> > > error-tolerant (Tries to include file with not allowed characters for
> > > example ...)
> >
> > patches welcomed.
> > also support for that silly win.ini-style format:
> > [Reference]
> > Ref1=http://195.228.246.70:80/0111/orult.wmv
> 
> ok, see patch in other mail ...

nice, there are no lines without 'playtree' word in it :)
i like playtree so much :)

> > > Ok, this works, but is imho not nice, as it duplicates code ... (Can
> > > Streaming layer ever detect the format right in all cases ?)
> >
> > since when is it the job of the stream layer to detect format?
> > ok i know there are some hacks in the network streaming code (network.c)
> > to guess fileformat from MIME types, but it's a hack.
> 
> I thought the same, because of that I want to have it in the demux-level ...

:)

> > fileformat detection should be content-based (only), and done by demuxer.c
> > by probing each demuxer.
> >
> > > And for example for mov-referencing this has to be duplicated once more
> > > ...
> >
> > demuxer layer shouldn't meet (directly) to playtree.
> > keep demuxers clean, and mplayer-independent ('make test' in libmpdemux/
> > dir)
> 
> of course ...

ok

> > > I therefor vote for a function, that does this:
> > >
> > > e.g.: playtree_add_playlist(playtree_t entry)
> > >
> > > And I think it would be even more nice to have this playlist-parsing in
> > > an own demuxer ... (It is some kind of demuxing, isn't it ?)
> >
> > good q.
> > i don't think it's demuxing, but placing it into the demuxer layer has some
> > advantages. so why not :)
> 
> :)
> 
> >
> > > It would be even more nice, to have that "Sorry, this file format is not
> > > recognized/supported" gone away, which of course now appears ...
> >
> > yep
> ok
:)

(hmm. what a constructive comments :))

> > > Alas, there remain some questions open:
> > >
> > > - Is such a function wished and should it be included in demuxer-level ?
> > >   - If so, how can it pass entry to mplayer.c (using some of the
> > > demuxer->audio/video pointers as a hack ??? :-( )
> >
> > for now (<=v0.90), it shouldn't be in demuxers.
> > the 'Sorry, this file format is ...' should be printed by mplayer, after
> > probing parse_playlist() after demux_open() failed.
> 
> ok, I'll implement this and send patch ...

great

> > after 0.90, we'll see. i'm planning to redesign demuxers, so we can count
> > on the playlist issue too (and the subtitles too, it's another issue).
> 
> yes, a demux-redesign would be great ...

but it will be hard to avoid the story of libvo2 :(

> What I think works best for now are the audio/video_decoders. It is such a 
> great architecture ... :)

btw any volunteers to move audio encoders from mencoder.c to ae_*.c files?


A'rpi / Astral & ESP-team

--
Developer of MPlayer, the Movie Player for Linux - http://www.MPlayerHQ.hu


More information about the MPlayer-dev-eng mailing list