summaryrefslogtreecommitdiffstats
path: root/mplayer.c
diff options
context:
space:
mode:
authornicodvb <nicodvb@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-07-04 20:40:18 +0000
committernicodvb <nicodvb@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-07-04 20:40:18 +0000
commit405a7e52e3d2e6c21e0fbade03c3c5f03bda4de5 (patch)
treed978a726bbda4e8cecc4879f1818f8ae6f1877d4 /mplayer.c
parentf07aeccfc7753b48c8b5725af9c4889dbbf55ecd (diff)
downloadmpv-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.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/mplayer.c b/mplayer.c
index 975a9839df..bc63dbe857 100644
--- a/mplayer.c
+++ b/mplayer.c
@@ -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 ============================*/