diff options
author | nicodvb <nicodvb@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-07-04 20:40:18 +0000 |
---|---|---|
committer | nicodvb <nicodvb@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-07-04 20:40:18 +0000 |
commit | 405a7e52e3d2e6c21e0fbade03c3c5f03bda4de5 (patch) | |
tree | d978a726bbda4e8cecc4879f1818f8ae6f1877d4 /mplayer.c | |
parent | f07aeccfc7753b48c8b5725af9c4889dbbf55ecd (diff) | |
download | mpv-405a7e52e3d2e6c21e0fbade03c3c5f03bda4de5.tar.bz2 mpv-405a7e52e3d2e6c21e0fbade03c3c5f03bda4de5.tar.xz |
support for audio streams that appear after unsuccessful probing
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18902 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'mplayer.c')
-rw-r--r-- | mplayer.c | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -2345,6 +2345,7 @@ if(sh_audio){ mp_msg(MSGT_CPLAYER,MSGL_INFO,"==========================================================================\n"); if(!init_best_audio_codec(sh_audio,audio_codec_list,audio_fm_list)){ sh_audio=d_audio->sh=NULL; // failed to init :( + d_audio->id = -2; return; } else inited_flags|=INITED_ACODEC; @@ -2378,6 +2379,7 @@ if(sh_audio){ mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CannotInitAO); uninit_player(INITED_ACODEC); // close codec sh_audio=d_audio->sh=NULL; // -> nosound + d_audio->id = -2; return; } else { // SUCCESS: @@ -3611,7 +3613,7 @@ if(!sh_audio){ mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_NoSound); mp_msg(MSGT_CPLAYER,MSGL_V,"Freeing %d unused audio chunks.\n",d_audio->packs); ds_free_packs(d_audio); // free buffered chunks - d_audio->id=-2; // do not read audio chunks + //d_audio->id=-2; // do not read audio chunks //uninit_player(INITED_AO); // close device } if(!sh_video){ @@ -3650,6 +3652,11 @@ if(play_n_frames==0){ while(!eof){ float aq_sleep_time=0; +if(!sh_audio && d_audio->sh) { + sh_audio = d_audio->sh; + sh_audio->ds = d_audio; + reinit_audio_chain(); +} /*========================== PLAY AUDIO ============================*/ |