summaryrefslogtreecommitdiffstats
path: root/dll_init.c
diff options
context:
space:
mode:
Diffstat (limited to 'dll_init.c')
-rw-r--r--dll_init.c28
1 files changed, 27 insertions, 1 deletions
diff --git a/dll_init.c b/dll_init.c
index 015ae87728..87a3b493c2 100644
--- a/dll_init.c
+++ b/dll_init.c
@@ -51,8 +51,29 @@ int init_acm_audio_codec(sh_audio_t *sh_audio){
sh_audio->o_wf.wFormatTag=WAVE_FORMAT_PCM;
sh_audio->o_wf.nBlockAlign=2*in_fmt->nChannels;
sh_audio->o_wf.wBitsPerSample=16;
+// sh_audio->o_wf.wBitsPerSample=in_fmt->wBitsPerSample;
sh_audio->o_wf.cbSize=0;
+ if(verbose) {
+ printf("Input format:\n");
+ printf(" wFormatTag %d\n", in_fmt->wFormatTag);
+ printf(" nChannels %d\n", in_fmt->nChannels);
+ printf(" nSamplesPerSec %ld\n", in_fmt->nSamplesPerSec);
+ printf(" nAvgBytesPerSec %d\n", in_fmt->nAvgBytesPerSec);
+ printf(" nBlockAlign %d\n", in_fmt->nBlockAlign);
+ printf(" wBitsPerSample %d\n", in_fmt->wBitsPerSample);
+ printf(" cbSize %d\n", in_fmt->cbSize);
+ printf("Output fmt:\n");
+ printf(" wFormatTag %d\n", sh_audio->o_wf.wFormatTag);
+ printf(" nChannels %d\n", sh_audio->o_wf.nChannels);
+ printf(" nSamplesPerSec %ld\n", sh_audio->o_wf.nSamplesPerSec);
+ printf(" nAvgBytesPerSec %d\n", sh_audio->o_wf.nAvgBytesPerSec);
+ printf(" nBlockAlign %d\n", sh_audio->o_wf.nBlockAlign);
+ printf(" wBitsPerSample %d\n", sh_audio->o_wf.wBitsPerSample);
+ printf(" cbSize %d\n", sh_audio->o_wf.cbSize);
+ }
+
+
win32_codec_name = sh_audio->codec->dll;
ret=acmStreamOpen(&sh_audio->srcstream,(HACMDRIVER)NULL,
in_fmt,&sh_audio->o_wf,
@@ -132,7 +153,12 @@ int acm_decode_audio(sh_audio_t *sh_audio, void* a_buffer,int minlen,int maxlen)
hr=acmStreamConvert(sh_audio->srcstream,&ash,0);
if(hr){
mp_msg(MSGT_WIN32,MSGL_DBG2,"ACM_Decoder: acmStreamConvert error %d\n",(int)hr);
-
+ switch(hr)
+ {
+ case ACMERR_NOTPOSSIBLE:
+ case ACMERR_UNPREPARED:
+ mp_msg(MSGT_WIN32, MSGL_DBG2, "ACM_Decoder: acmStreamConvert error: probarly not initialized!\n");
+ }
// return -1;
}
if(verbose>1)