Mercurial > mplayer.hg
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 |