changeset 10550:7860a71ba82c

For a request by Gabu, i've cut & fix a part of Joey's dvd aid switching patch, to always use the first audio track of DVD, unless -alang or -aid is used. I think it will be almost always teh id 128. (actual number comes from the .IFO) (reported ok - Gabu)
author gabucino
date Sat, 09 Aug 2003 14:23:16 +0000
parents df2cf884f701
children b16cc4867b2d
files libmpdemux/open.c mplayer.c
diffstat 2 files changed, 5 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/libmpdemux/open.c	Sat Aug 09 12:07:18 2003 +0000
+++ b/libmpdemux/open.c	Sat Aug 09 14:23:16 2003 +0000
@@ -618,7 +618,8 @@
 int dvd_aid_from_lang(stream_t *stream, unsigned char* lang){
 dvd_priv_t *d=stream->priv;
 int code,i;
-  while(lang && strlen(lang)>=2){
+if(lang){
+  while(strlen(lang)>=2){
     code=lang[1]|(lang[0]<<8);
     for(i=0;i<d->nr_of_channels;i++){
 	if(d->audio_streams[i].language==code){
@@ -631,7 +632,8 @@
     lang+=2; while (lang[0]==',' || lang[0]==' ') ++lang;
   }
   mp_msg(MSGT_OPEN,MSGL_WARN,"No matching DVD audio language found!\n");
-  return -1;
+}
+return d->nr_of_channels ? d->audio_streams[0].id : -1;
 }
 
 int dvd_sid_from_lang(stream_t *stream, unsigned char* lang){
--- a/mplayer.c	Sat Aug 09 12:07:18 2003 +0000
+++ b/mplayer.c	Sat Aug 09 14:23:16 2003 +0000
@@ -1319,7 +1319,7 @@
 #ifdef USE_DVDREAD
 if(stream->type==STREAMTYPE_DVD){
   current_module="dvd lang->id";
-  if(audio_lang && audio_id==-1) audio_id=dvd_aid_from_lang(stream,audio_lang);
+  if(audio_id==-1) audio_id=dvd_aid_from_lang(stream,audio_lang);
   if(dvdsub_lang && dvdsub_id==-1) dvdsub_id=dvd_sid_from_lang(stream,dvdsub_lang);
   current_module=NULL;
 }