[MPlayer-dev-eng] [PATCH] dvdnav

Nico Sabbi nicola_sabbi at fastwebnet.it
Sat Jan 28 09:26:55 CET 2006


Ötvös Attila wrote:

>Fixed (I hope so working):
>
>- DVDNAV stream seek error:0
>- Menu & Movie aspect ratio
>- build with not using --enable-dvdnav
>- Menu sound
>- "watch dog" in wait event handler
>
>New options:
>
>-dvdnav-newwin: if vts change event then close current vo window and 
>open new vo window (default)
>-dvdnav-nonewwin: if vts change event then continue play in current vo
>window
>
>http://dcxx.fw.hu/
>
>Best regards!
>Attila
>
>  
>
Hi,
I'm impressed by your effort, but I wish you would fix some fundamental 
issues before going on:

- the patch below is not acceptable because 1) it reintroduces 
demuxer-specific code in demuxer.c
(that we worked hard to clean) and 2) it's a huge hack. You can get 
something similar but cleaner
implementing a new DEMUXER_CTRL call.

--- libmpdemux/demuxer.c        2006-01-17 21:04:49.000000000 +0100
+++ libmpdemux/demuxer.c        2006-01-27 22:40:17.000000000 +0100
@@ -370,6 +373,19 @@
       --ds->packs;
       return 1; //ds->buffer_size;
     }
+#ifdef USE_MPDVDNAV
+    if(demux->stream->type==STREAMTYPE_DVDNAV && (
+       (dvdnav_isevent_lock((dvdnav_priv_t*)(demux->stream->priv)) && 
ds==demux->video && (demux->audio->packs>=128)) || /* slow wait max=
4096 : only stream length time query max=128 */

[snip]


- I'm sure you can clean and place decode_video_still() in a custom 
decoder (maybe something
like libmpcodecs/vd_videostill.c)

- the biggest one: stream_dvdnav.c seems to be the whole libdvdnav 
unrolled in one file
+ mplayer's specific stream code. If so, it's not acceptable, either.
Can't you simply link to the official libdvdnav? If not (yet), try to 
get your patches applied by
the maintaner of the library or remove your additions. In any case I'm 
against importing
dvdnav in mplayer (especially in this all-in-one form).

BTW, since the current dvdnav code is hopelessly  broken why don't we 
remove it completely?

Thanks,
    Nico




More information about the MPlayer-dev-eng mailing list