diff options
author | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-03-28 20:40:21 +0000 |
---|---|---|
committer | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-03-28 20:40:21 +0000 |
commit | 5475823f41bfe971bec6dd2208dd7c01bc11edd8 (patch) | |
tree | 69fec4aa970acebcae084d086f6a7846f5b669f2 /libmpdemux/open.c | |
parent | e55db72e97eb5f652db237cb16abb79d4f2c927d (diff) | |
download | mpv-5475823f41bfe971bec6dd2208dd7c01bc11edd8.tar.bz2 mpv-5475823f41bfe971bec6dd2208dd7c01bc11edd8.tar.xz |
DVDnav support patch by David Holm and Kees Cook <mplayer@outflux.net>
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5381 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/open.c')
-rw-r--r-- | libmpdemux/open.c | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/libmpdemux/open.c b/libmpdemux/open.c index 2e8f55d6de..ce37aa1d45 100644 --- a/libmpdemux/open.c +++ b/libmpdemux/open.c @@ -31,6 +31,11 @@ int dvd_last_chapter=0; int dvd_angle=1; char* dvd_device=NULL; char* cdrom_device=NULL; +int dvd_nav=0; + +#ifdef USE_DVDNAM +#include <dvdnav.h> +#endif #ifdef USE_DVDREAD @@ -110,10 +115,29 @@ if(vcd_track){ #endif //============ Open DVD title ============== +#ifdef USE_DVDNAV +if(dvd_nav){ + dvdnav_t *dvdnav; + int event,len,tmplen=0; + if(!filename) filename=DEFAULT_DVD_DEVICE; + if(dvdnav_open(&dvdnav,filename)!=DVDNAV_STATUS_OK) { + mp_msg(MSGT_OPEN,MSGL_ERR,MSGTR_CantOpenDVD,filename); + return NULL; + } + + stream=new_stream(-1,STREAMTYPE_DVDNAV); + if (!stream) { + mp_msg(MSGT_OPEN,MSGL_ERR,MSGTR_Exit_error); + return NULL; + } + stream->priv=(void*)dvdnav; + return stream; +} +#endif #ifdef USE_DVDREAD if(dvd_title){ // int ret,ret2; - dvd_priv_t *d; + dvd_priv_t *d; int ttn,pgc_id,pgn; dvd_reader_t *dvd; dvd_file_t *title; |