[MPlayer-dev-eng] mga + playlist broken
D Richard Felker III
dalias at aerifal.cx
Sun Apr 7 03:00:50 CEST 2002
On Sun, Apr 07, 2002 at 03:09:48AM +0200, Arpi wrote:
> Hi,
>
> > right now, playing multiple files with vo mga (or xmga i would assume)
> > is entirely broken. after the first file, mga preinit fails with
> > device busy. a quick investigation shows that mplayer is not leaving
> > the device after the first file, but it *is* leaving an old mmap in
> > place which keeps the device busy.
>
> cannot reproduce
>
> mplayer -vo mga *
> works fine, playing 17 files, mpg and avi (divx 3,4)...
>
> > would someone like to fix this properly, or is it ok if i just commit
> > a temporary workaround that makes mplayer never close the device and
> > keep using the same file descriptor if vo mga is needed again?
>
> i can't see what could be the problem for you.
> it opens the device at preinit() and close at uninit()
>
> maybe second mmap() can fail(), when config(0 is called more than once.
ok, i figured out when it happens. look at mga_init in mga_common.c.
if it's called more than once, the old map pointer stored in frames[0]
will be lost without ever being unmapped. i don't know why, but
mga_init can and *does* get called more than once when playing some
files -- maybe it has something to do with that aspect changing stuff
in vd_ffmpeg.c -- and it either needs to be able to handle multiple
calls (which correspond to multiple calls to video_out->config) or
there needs to be code in place elsewhere to ensure that config isn't
called more than once (however, as i understand it's supposed to be
perfectly valid for config to be called more than once).
if you'd like to grab the files i'm using, you can get them from
ftp://brightrain.aerifal.cx/pub/movies/xgdummy.avi
ftp://brightrain.aerifal.cx/pub/movies/waintro.avi
and try playing them in that order. (the ftp dir isnt browsable but
you can request those files directly by name...or i can upload to
mplayerhq if you prefer).
hope this helps,
rich
More information about the MPlayer-dev-eng
mailing list