Mercurial > mplayer.hg
changeset 4770:59f8fd64538b
autodetect vobsub filename, disable autosub if vobsub found.
author | atmos4 |
---|---|
date | Wed, 20 Feb 2002 22:41:06 +0000 |
parents | 75a701b39d61 |
children | ef9079037084 |
files | mplayer.c |
diffstat | 1 files changed, 16 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/mplayer.c Wed Feb 20 17:23:00 2002 +0000 +++ b/mplayer.c Wed Feb 20 22:41:06 2002 +0000 @@ -764,6 +764,22 @@ if(filename) mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_Playing, filename); + current_module="vobsub"; + if (vobsub_name){ + vo_vobsub=vobsub_open(vobsub_name); + if(vo_vobsub==NULL) + mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CantLoadSub,vobsub_name); + }else if(sub_auto && filename && (strlen(filename)>=5)){ + /* try to autodetect vobsub from movie filename ::atmos */ + char *buf = malloc((strlen(filename)-3) * sizeof(char)); + memset(buf,0,strlen(filename)-3); // make sure string is terminated + strncpy(buf, filename, strlen(filename)-4); + vo_vobsub=vobsub_open(buf); + free(buf); + } + if(vo_vobsub) + sub_auto=0; // don't do autosub for textsubs if vobsub found + #ifdef USE_SUB_OLD // check .sub if(sub_name){ @@ -789,13 +805,6 @@ if(subtitles && stream_dump_type==4) dump_mpsub(subtitles, fps); #endif - current_module="vobsub"; - if (vobsub_name){ - vo_vobsub=vobsub_open(vobsub_name); - if(vo_vobsub==NULL) - mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CantLoadSub,vobsub_name); - } - stream=NULL; demuxer=NULL; d_audio=NULL;