comparison mplayer.c @ 1738:888b395b277c

nosound problems fixed
author arpi
date Tue, 28 Aug 2001 22:46:15 +0000
parents 1a8e6e3bee3d
children 64247d7d0076
comparison
equal deleted inserted replaced
1737:00505a8fa2b4 1738:888b395b277c
780 audio_family=-1; 780 audio_family=-1;
781 continue; 781 continue;
782 } 782 }
783 mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CantFindAudioCodec,sh_audio->format); 783 mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CantFindAudioCodec,sh_audio->format);
784 mp_msg(MSGT_CPLAYER,MSGL_HINT, MSGTR_TryUpgradeCodecsConfOrRTFM,get_path("codecs.conf")); 784 mp_msg(MSGT_CPLAYER,MSGL_HINT, MSGTR_TryUpgradeCodecsConfOrRTFM,get_path("codecs.conf"));
785 sh_audio=NULL; 785 free_sh_audio(sh_audio); sh_audio=NULL; d_audio->sh=NULL;
786 break; 786 break;
787 } 787 }
788 if(audio_codec && strcmp(sh_audio->codec->name,audio_codec)) continue; 788 if(audio_codec && strcmp(sh_audio->codec->name,audio_codec)) continue;
789 else if(audio_family!=-1 && sh_audio->codec->driver!=audio_family) continue; 789 else if(audio_family!=-1 && sh_audio->codec->driver!=audio_family) continue;
790 mp_msg(MSGT_CPLAYER,MSGL_INFO,"%s audio codec: [%s] drv:%d (%s)\n",audio_codec?"Forcing":"Detected",sh_audio->codec->name,sh_audio->codec->driver,sh_audio->codec->info); 790 mp_msg(MSGT_CPLAYER,MSGL_INFO,"%s audio codec: [%s] drv:%d (%s)\n",audio_codec?"Forcing":"Detected",sh_audio->codec->name,sh_audio->codec->driver,sh_audio->codec->info);
794 794
795 if(sh_audio){ 795 if(sh_audio){
796 mp_msg(MSGT_CPLAYER,MSGL_V,"Initializing audio codec...\n"); 796 mp_msg(MSGT_CPLAYER,MSGL_V,"Initializing audio codec...\n");
797 if(!init_audio(sh_audio)){ 797 if(!init_audio(sh_audio)){
798 mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CouldntInitAudioCodec); 798 mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CouldntInitAudioCodec);
799 sh_audio=0; 799 free_sh_audio(sh_audio); sh_audio=NULL; d_audio->sh=NULL;
800 } else { 800 } else {
801 mp_msg(MSGT_CPLAYER,MSGL_INFO,"AUDIO: srate=%d chans=%d bps=%d sfmt=0x%X ratio: %d->%d\n",sh_audio->samplerate,sh_audio->channels,sh_audio->samplesize, 801 mp_msg(MSGT_CPLAYER,MSGL_INFO,"AUDIO: srate=%d chans=%d bps=%d sfmt=0x%X ratio: %d->%d\n",sh_audio->samplerate,sh_audio->channels,sh_audio->samplesize,
802 sh_audio->sample_format,sh_audio->i_bps,sh_audio->o_bps); 802 sh_audio->sample_format,sh_audio->i_bps,sh_audio->o_bps);
803 } 803 }
804 } 804 }
895 strcpy(encode_index_name,encode_name); 895 strcpy(encode_index_name,encode_name);
896 strcat(encode_index_name,".index"); 896 strcat(encode_index_name,".index");
897 if((encode_file=fopen(encode_index_name,"wb"))) 897 if((encode_file=fopen(encode_index_name,"wb")))
898 fclose(encode_file); 898 fclose(encode_file);
899 else encode_index_name=NULL; 899 else encode_index_name=NULL;
900 sh_audio=0; // disable audio !!!!! 900 free_sh_audio(sh_audio); sh_audio=NULL; d_audio->sh=NULL; // disable audio !!!!!
901 } 901 }
902 902
903 // ========== Init keyboard FIFO (connection to libvo) ============ 903 // ========== Init keyboard FIFO (connection to libvo) ============
904 904
905 make_pipe(&keyb_fifo_get,&keyb_fifo_put); 905 make_pipe(&keyb_fifo_get,&keyb_fifo_put);
1013 if(strlen(info->comment) > 0) 1013 if(strlen(info->comment) > 0)
1014 mp_msg(MSGT_CPLAYER,MSGL_V,"AO: Comment: %s\n", info->comment); 1014 mp_msg(MSGT_CPLAYER,MSGL_V,"AO: Comment: %s\n", info->comment);
1015 if(!audio_out->init(force_srate?force_srate:sh_audio->samplerate, 1015 if(!audio_out->init(force_srate?force_srate:sh_audio->samplerate,
1016 sh_audio->channels,sh_audio->sample_format,0)){ 1016 sh_audio->channels,sh_audio->sample_format,0)){
1017 mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CannotInitAO); 1017 mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CannotInitAO);
1018 sh_audio=0; audio_out=NULL; 1018 free_sh_audio(sh_audio); sh_audio=NULL; d_audio->sh=NULL;
1019 } 1019 }
1020 1020
1021 // printf("Audio buffer size: %d bytes, delay: %5.3fs\n",audio_buffer_size,audio_buffer_delay); 1021 // printf("Audio buffer size: %d bytes, delay: %5.3fs\n",audio_buffer_size,audio_buffer_delay);
1022 1022
1023 // fixup audio buffer size: 1023 // fixup audio buffer size:
1031 1031
1032 sh_video->timer=0; 1032 sh_video->timer=0;
1033 if(sh_audio) sh_audio->timer=0; 1033 if(sh_audio) sh_audio->timer=0;
1034 1034
1035 if(!sh_audio){ 1035 if(!sh_audio){
1036 mp_msg(MSGT_CPLAYER,MSGL_INFO,"Audio: no sound\n"); 1036 mp_msg(MSGT_CPLAYER,MSGL_INFO,"Audio: no sound!!!\n");
1037 if(verbose) mp_msg(MSGT_CPLAYER,MSGL_V,"Freeing %d unused audio chunks\n",d_audio->packs); 1037 if(verbose) mp_msg(MSGT_CPLAYER,MSGL_V,"Freeing %d unused audio chunks\n",d_audio->packs);
1038 ds_free_packs(d_audio); // free buffered chunks 1038 ds_free_packs(d_audio); // free buffered chunks
1039 d_audio->id=-2; // do not read audio chunks 1039 d_audio->id=-2; // do not read audio chunks
1040 if(sh_audio) if(sh_audio->a_buffer) free(sh_audio->a_buffer);
1041 if(audio_out){ audio_out->uninit(); audio_out=NULL;} // close device 1040 if(audio_out){ audio_out->uninit(); audio_out=NULL;} // close device
1042 } 1041 }
1043 1042
1044 current_module=NULL; 1043 current_module=NULL;
1045 1044