# HG changeset patch # User arpi # Date 1031005184 0 # Node ID cd12b5ad8f666ff0ea1164d21ecc5fe304013497 # Parent 95740a8fc77fd8756779d469283addfbe39b3166 -vfm should override status/priority diff -r 95740a8fc77f -r cd12b5ad8f66 mplayer.c --- a/mplayer.c Mon Sep 02 20:10:10 2002 +0000 +++ b/mplayer.c Mon Sep 02 22:19:44 2002 +0000 @@ -1238,7 +1238,7 @@ break; } if(audio_codec && strcmp(sh_audio->codec->name,audio_codec)) continue; - else if(audio_fm && strcmp(sh_audio->codec->drv,audio_fm)) continue; + if(audio_fm && strcmp(sh_audio->codec->drv,audio_fm)) continue; mp_msg(MSGT_CPLAYER,MSGL_INFO,"%s audio codec: [%s] afm:%s (%s)\n", audio_codec?mp_gettext("Forcing"):mp_gettext("Detected"),sh_audio->codec->name,sh_audio->codec->drv,sh_audio->codec->info); break; @@ -1295,13 +1295,16 @@ init_video(sh_video,video_codec,NULL,-1); } else { int status; - // try in stability order: UNTESTED, WORKING, BUGGY, BROKEN - if(video_fm) mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_TryForceVideoFmtStr,video_fm); - for(status=CODECS_STATUS__MAX;status>=CODECS_STATUS__MIN;--status){ - if(video_fm) // try first the preferred codec family: + // try in stability order: UNTESTED, WORKING, BUGGY. never try CRASHING. + if(video_fm){ + // try first the preferred codec family: + mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_TryForceVideoFmtStr,video_fm); + for(status=CODECS_STATUS__MAX;status>=CODECS_STATUS__MIN;--status) if(init_video(sh_video,NULL,video_fm,status)) break; - if(init_video(sh_video,NULL,NULL,status)) break; } + if(!sh_video->inited) + for(status=CODECS_STATUS__MAX;status>=CODECS_STATUS__MIN;--status) + if(init_video(sh_video,NULL,NULL,status)) break; } if(!sh_video->inited){ mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CantFindVideoCodec,sh_video->format);