⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 codec_io.cod

📁 wince 6.0 arm 音频驱动源码 waveDev方式
💻 COD
📖 第 1 页 / 共 3 页
字号:
; 124  :                     (LPVOID)(&CodecPathPara),
; 125  :                     sizeof(CODEC_PARAM_SET_PATH),
; 126  :                     (LPVOID)NULL,
; 127  :                     0,
; 128  :                     NULL,
; 129  :                     NULL); 

  00214	e3a03000	 mov         r3, #0
  00218	e58d300c	 str         r3, [sp, #0xC]
  0021c	e3a03000	 mov         r3, #0
  00220	e58d3008	 str         r3, [sp, #8]
  00224	e3a03000	 mov         r3, #0
  00228	e58d3004	 str         r3, [sp, #4]
  0022c	e3a03000	 mov         r3, #0
  00230	e58d3000	 str         r3, [sp]
  00234	e3a03008	 mov         r3, #8
  00238	e28d2010	 add         r2, sp, #0x10
  0023c	e3a01232	 mov         r1, #0x32, 4
  00240	e59f006c	 ldr         r0, [pc, #0x6C]
  00244	e5900000	 ldr         r0, [r0]
  00248	eb000000	 bl          DeviceIoControl
  0024c	e58d0030	 str         r0, [sp, #0x30]
  00250	e59d3030	 ldr         r3, [sp, #0x30]
  00254	e58d3018	 str         r3, [sp, #0x18]

; 130  :                     
; 131  :     if(bRetVal == FALSE) {

  00258	e59d3018	 ldr         r3, [sp, #0x18]
  0025c	e3530000	 cmp         r3, #0
  00260	1a00000c	 bne         |$LN1@AudioPathE|

; 132  :         RETAILMSG (1, (_T("AudioPathEnable Failed, Error ID: %d\r\n"),GetLastError())); 

  00264	eb000000	 bl          GetLastError
  00268	e58d0034	 str         r0, [sp, #0x34]
  0026c	e59d1034	 ldr         r1, [sp, #0x34]
  00270	e59f0038	 ldr         r0, [pc, #0x38]
  00274	eb000000	 bl          NKDbgPrintfW
  00278	e3a03001	 mov         r3, #1
  0027c	e58d3038	 str         r3, [sp, #0x38]
  00280	ea000001	 b           |$LN5@AudioPathE|
  00284	e3a03000	 mov         r3, #0
  00288	e58d3038	 str         r3, [sp, #0x38]
  0028c		 |$LN5@AudioPathE|

; 133  :         return FALSE;     

  0028c	e3a03000	 mov         r3, #0
  00290	e58d302c	 str         r3, [sp, #0x2C]
  00294	ea000001	 b           |$LN2@AudioPathE|
  00298		 |$LN1@AudioPathE|

; 134  :     } 
; 135  :     
; 136  :     return TRUE;   

  00298	e3a03001	 mov         r3, #1
  0029c	e58d302c	 str         r3, [sp, #0x2C]
  002a0		 |$LN2@AudioPathE|

; 137  : }

  002a0	e59d002c	 ldr         r0, [sp, #0x2C]
  002a4	e28dd03c	 add         sp, sp, #0x3C
  002a8	e89d6000	 ldmia       sp, {sp, lr}
  002ac	e12fff1e	 bx          lr
  002b0		 |$LN9@AudioPathE|
  002b0		 |$LN10@AudioPathE|
  002b0	00000000	 DCD         |??_C@_1EO@GICCHKGC@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAP?$AAa?$AAt?$AAh?$AAE?$AAn?$AAa?$AAb?$AAl?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?0?$AA?5?$AAE?$AAr?$AAr?$AAo?$AAr?$AA?5?$AAI?$AAD@|
  002b4		 |$LN11@AudioPathE|
  002b4	00000000	 DCD         |g_hCodecDeviceHandle|
  002b8		 |$M32141|

			 ENDP  ; |?AudioPathEnable@@YAHIH@Z|, AudioPathEnable

	EXPORT	|??_C@_1GE@MOMHCDKC@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAC?$AAo?$AAd?$AAe?$AAc?$AAS?$AAe?$AAt?$AAO?$AAu?$AAt?$AAS?$AAa?$AAm?$AAp?$AAl?$AAe?$AAR?$AAa?$AAt?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe@| [ DATA ] ; `string'
	EXPORT	|?AudioCodecSetOutSampleRate@@YAHW4CODEC_SAMPLERATE@@@Z| ; AudioCodecSetOutSampleRate

  00020			 AREA	 |.pdata|, PDATA
|$T32158| DCD	|$LN8@AudioCodec@3|
	DCD	0x40003504

  00000			 AREA	 |.rdata|, DATA, READONLY
|??_C@_1GE@MOMHCDKC@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAC?$AAo?$AAd?$AAe?$AAc?$AAS?$AAe?$AAt?$AAO?$AAu?$AAt?$AAS?$AAa?$AAm?$AAp?$AAl?$AAe?$AAR?$AAa?$AAt?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe@| DCB "A"
	DCB	0x0, "u", 0x0, "d", 0x0, "i", 0x0, "o", 0x0, "C", 0x0, "o"
	DCB	0x0, "d", 0x0, "e", 0x0, "c", 0x0, "S", 0x0, "e", 0x0, "t"
	DCB	0x0, "O", 0x0, "u", 0x0, "t", 0x0, "S", 0x0, "a", 0x0, "m"
	DCB	0x0, "p", 0x0, "l", 0x0, "e", 0x0, "R", 0x0, "a", 0x0, "t"
	DCB	0x0, "e", 0x0, " ", 0x0, "F", 0x0, "a", 0x0, "i", 0x0, "l"
	DCB	0x0, "e", 0x0, "d", 0x0, ",", 0x0, " ", 0x0, "E", 0x0, "r"
	DCB	0x0, "r", 0x0, "o", 0x0, "r", 0x0, " ", 0x0, "I", 0x0, "D"
	DCB	0x0, ":", 0x0, " ", 0x0, "%", 0x0, "d", 0x0, 0xd, 0x0, 0xa
	DCB	0x0, 0x0, 0x0				; `string'
; Function compile flags: /Odtp

  002b8			 AREA	 |.text|, CODE, ARM

  002b8		 |?AudioCodecSetOutSampleRate@@YAHW4CODEC_SAMPLERATE@@@Z| PROC ; AudioCodecSetOutSampleRate

; 141  : {

  002b8		 |$LN8@AudioCodec@3|
  002b8	e1a0c00d	 mov         r12, sp
  002bc	e92d0001	 stmdb       sp!, {r0}
  002c0	e92d5000	 stmdb       sp!, {r12, lr}
  002c4	e24dd038	 sub         sp, sp, #0x38
  002c8		 |$M32155|

; 142  :     BOOL bRetVal = TRUE;

  002c8	e3a03001	 mov         r3, #1
  002cc	e58d3014	 str         r3, [sp, #0x14]

; 143  :     
; 144  :     CODEC_PARAM_SET_SAMPLE_RATE CodecSRPara;
; 145  :     CodecSRPara.usType = TYPE_OUTPUT;

  002d0	e3a03002	 mov         r3, #2
  002d4	e1cd31b0	 strh        r3, [sp, #0x10]

; 146  :     CodecSRPara.usSampleRate = (UINT16)eSampleRate;

  002d8	e59d3040	 ldr         r3, [sp, #0x40]
  002dc	e1a03803	 mov         r3, r3, lsl #16
  002e0	e1a03823	 mov         r3, r3, lsr #16
  002e4	e1cd31b2	 strh        r3, [sp, #0x12]

; 147  :     
; 148  :     bRetVal = DeviceIoControl(g_hCodecDeviceHandle,
; 149  :                     REQ_AUDIO_SET_SAMPLE_RATE,
; 150  :                     (LPVOID)(&CodecSRPara),
; 151  :                     sizeof(CODEC_PARAM_SET_SAMPLE_RATE),
; 152  :                     (LPVOID)NULL,
; 153  :                     0,
; 154  :                     NULL,
; 155  :                     NULL); 

  002e8	e3a03000	 mov         r3, #0
  002ec	e58d300c	 str         r3, [sp, #0xC]
  002f0	e3a03000	 mov         r3, #0
  002f4	e58d3008	 str         r3, [sp, #8]
  002f8	e3a03000	 mov         r3, #0
  002fc	e58d3004	 str         r3, [sp, #4]
  00300	e3a03000	 mov         r3, #0
  00304	e58d3000	 str         r3, [sp]
  00308	e3a03004	 mov         r3, #4
  0030c	e28d2010	 add         r2, sp, #0x10
  00310	e3a01222	 mov         r1, #0x22, 4
  00314	e59f006c	 ldr         r0, [pc, #0x6C]
  00318	e5900000	 ldr         r0, [r0]
  0031c	eb000000	 bl          DeviceIoControl
  00320	e58d002c	 str         r0, [sp, #0x2C]
  00324	e59d302c	 ldr         r3, [sp, #0x2C]
  00328	e58d3014	 str         r3, [sp, #0x14]

; 156  :                     
; 157  :     if(bRetVal == FALSE) {

  0032c	e59d3014	 ldr         r3, [sp, #0x14]
  00330	e3530000	 cmp         r3, #0
  00334	1a00000c	 bne         |$LN1@AudioCodec@3|

; 158  :         RETAILMSG (1, (_T("AudioCodecSetOutSampleRate Failed, Error ID: %d\r\n"),GetLastError())); 

  00338	eb000000	 bl          GetLastError
  0033c	e58d0030	 str         r0, [sp, #0x30]
  00340	e59d1030	 ldr         r1, [sp, #0x30]
  00344	e59f0038	 ldr         r0, [pc, #0x38]
  00348	eb000000	 bl          NKDbgPrintfW
  0034c	e3a03001	 mov         r3, #1
  00350	e58d3034	 str         r3, [sp, #0x34]
  00354	ea000001	 b           |$LN5@AudioCodec@3|
  00358	e3a03000	 mov         r3, #0
  0035c	e58d3034	 str         r3, [sp, #0x34]
  00360		 |$LN5@AudioCodec@3|

; 159  :         return FALSE;     

  00360	e3a03000	 mov         r3, #0
  00364	e58d3028	 str         r3, [sp, #0x28]
  00368	ea000001	 b           |$LN2@AudioCodec@3|
  0036c		 |$LN1@AudioCodec@3|

; 160  :     } 
; 161  :     
; 162  :     return TRUE;    

  0036c	e3a03001	 mov         r3, #1
  00370	e58d3028	 str         r3, [sp, #0x28]
  00374		 |$LN2@AudioCodec@3|

; 163  : }

  00374	e59d0028	 ldr         r0, [sp, #0x28]
  00378	e28dd038	 add         sp, sp, #0x38
  0037c	e89d6000	 ldmia       sp, {sp, lr}
  00380	e12fff1e	 bx          lr
  00384		 |$LN9@AudioCodec@3|
  00384		 |$LN10@AudioCodec@3|
  00384	00000000	 DCD         |??_C@_1GE@MOMHCDKC@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAC?$AAo?$AAd?$AAe?$AAc?$AAS?$AAe?$AAt?$AAO?$AAu?$AAt?$AAS?$AAa?$AAm?$AAp?$AAl?$AAe?$AAR?$AAa?$AAt?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe@|
  00388		 |$LN11@AudioCodec@3|
  00388	00000000	 DCD         |g_hCodecDeviceHandle|
  0038c		 |$M32156|

			 ENDP  ; |?AudioCodecSetOutSampleRate@@YAHW4CODEC_SAMPLERATE@@@Z|, AudioCodecSetOutSampleRate

	EXPORT	|??_C@_1GC@MGPFDGMI@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAC?$AAo?$AAd?$AAe?$AAc?$AAS?$AAe?$AAt?$AAI?$AAn?$AAS?$AAa?$AAm?$AAp?$AAl?$AAe?$AAR?$AAa?$AAt?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd@| [ DATA ] ; `string'
	EXPORT	|?AudioCodecSetInSampleRate@@YAHW4CODEC_SAMPLERATE@@@Z| ; AudioCodecSetInSampleRate

  00028			 AREA	 |.pdata|, PDATA
|$T32173| DCD	|$LN8@AudioCodec@4|
	DCD	0x40003504

  00000			 AREA	 |.rdata|, DATA, READONLY
|??_C@_1GC@MGPFDGMI@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAC?$AAo?$AAd?$AAe?$AAc?$AAS?$AAe?$AAt?$AAI?$AAn?$AAS?$AAa?$AAm?$AAp?$AAl?$AAe?$AAR?$AAa?$AAt?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd@| DCB "A"
	DCB	0x0, "u", 0x0, "d", 0x0, "i", 0x0, "o", 0x0, "C", 0x0, "o"
	DCB	0x0, "d", 0x0, "e", 0x0, "c", 0x0, "S", 0x0, "e", 0x0, "t"
	DCB	0x0, "I", 0x0, "n", 0x0, "S", 0x0, "a", 0x0, "m", 0x0, "p"
	DCB	0x0, "l", 0x0, "e", 0x0, "R", 0x0, "a", 0x0, "t", 0x0, "e"
	DCB	0x0, " ", 0x0, "F", 0x0, "a", 0x0, "i", 0x0, "l", 0x0, "e"
	DCB	0x0, "d", 0x0, ",", 0x0, " ", 0x0, "E", 0x0, "r", 0x0, "r"
	DCB	0x0, "o", 0x0, "r", 0x0, " ", 0x0, "I", 0x0, "D", 0x0, ":"
	DCB	0x0, " ", 0x0, "%", 0x0, "d", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0
	DCB	0x0					; `string'
; Function compile flags: /Odtp

  0038c			 AREA	 |.text|, CODE, ARM

  0038c		 |?AudioCodecSetInSampleRate@@YAHW4CODEC_SAMPLERATE@@@Z| PROC ; AudioCodecSetInSampleRate

; 167  : {

  0038c		 |$LN8@AudioCodec@4|
  0038c	e1a0c00d	 mov         r12, sp
  00390	e92d0001	 stmdb       sp!, {r0}
  00394	e92d5000	 stmdb       sp!, {r12, lr}
  00398	e24dd038	 sub         sp, sp, #0x38
  0039c		 |$M32170|

; 168  :     BOOL bRetVal = TRUE;

  0039c	e3a03001	 mov         r3, #1
  003a0	e58d3014	 str         r3, [sp, #0x14]

; 169  :     
; 170  :     CODEC_PARAM_SET_SAMPLE_RATE CodecSRPara;
; 171  :     CodecSRPara.usType = TYPE_INPUT;

  003a4	e3a03001	 mov         r3, #1
  003a8	e1cd31b0	 strh        r3, [sp, #0x10]

; 172  :     CodecSRPara.usSampleRate = (UINT16)eSampleRate;

  003ac	e59d3040	 ldr         r3, [sp, #0x40]
  003b0	e1a03803	 mov         r3, r3, lsl #16
  003b4	e1a03823	 mov         r3, r3, lsr #16
  003b8	e1cd31b2	 strh        r3, [sp, #0x12]

; 173  :     
; 174  :     bRetVal = DeviceIoControl(g_hCodecDeviceHandle,
; 175  :                     REQ_AUDIO_SET_SAMPLE_RATE,
; 176  :                     (LPVOID)(&CodecSRPara),
; 177  :                     sizeof(CODEC_PARAM_SET_SAMPLE_RATE),
; 178  :                     (LPVOID)NULL,
; 179  :                     0,
; 180  :                     NULL,
; 181  :                     NULL); 

  003bc	e3a03000	 mov         r3, #0
  003c0	e58d300c	 str         r3, [sp, #0xC]
  003c4	e3a03000	 mov         r3, #0
  003c8	e58d3008	 str         r3, [sp, #8]
  003cc	e3a03000	 mov         r3, #0
  003d0	e58d3004	 str         r3, [sp, #4]
  003d4	e3a03000	 mov         r3, #0
  003d8	e58d3000	 str         r3, [sp]
  003dc	e3a03004	 mov         r3, #4
  003e0	e28d2010	 add         r2, sp, #0x10
  003e4	e3a01222	 mov         r1, #0x22, 4
  003e8	e59f006c	 ldr         r0, [pc, #0x6C]
  003ec	e5900000	 ldr         r0, [r0]
  003f0	eb000000	 bl          DeviceIoControl
  003f4	e58d002c	 str         r0, [sp, #0x2C]
  003f8	e59d302c	 ldr         r3, [sp, #0x2C]
  003fc	e58d3014	 str         r3, [sp, #0x14]

; 182  :                     
; 183  :     if(bRetVal == FALSE) {

  00400	e59d3014	 ldr         r3, [sp, #0x14]
  00404	e3530000	 cmp         r3, #0
  00408	1a00000c	 bne         |$LN1@AudioCodec@4|

; 184  :         RETAILMSG (1, (_T("AudioCodecSetInSampleRate Failed, Error ID: %d\r\n"),GetLastError())); 

  0040c	eb000000	 bl          GetLastError
  00410	e58d0030	 str         r0, [sp, #0x30]
  00414	e59d1030	 ldr         r1, [sp, #0x30]
  00418	e59f0038	 ldr         r0, [pc, #0x38]
  0041c	eb000000	 bl          NKDbgPrintfW
  00420	e3a03001	 mov         r3, #1
  00424	e58d3034	 str         r3, [sp, #0x34]
  00428	ea000001	 b           |$LN5@AudioCodec@4|
  0042c	e3a03000	 mov         r3, #0
  00430	e58d3034	 str         r3, [sp, #0x34]
  00434		 |$LN5@AudioCodec@4|

; 185  :         return FALSE;     

  00434	e3a03000	 mov         r3, #0
  00438	e58d3028	 str         r3, [sp, #0x28]
  0043c	ea000001	 b           |$LN2@AudioCodec@4|
  00440		 |$LN1@AudioCodec@4|

; 186  :     } 
; 187  :     
; 188  :     return TRUE;    

  00440	e3a03001	 mov         r3, #1
  00444	e58d3028	 str         r3, [sp, #0x28]
  00448		 |$LN2@AudioCodec@4|

; 189  : }

  00448	e59d0028	 ldr         r0, [sp, #0x28]
  0044c	e28dd038	 add         sp, sp, #0x38
  00450	e89d6000	 ldmia       sp, {sp, lr}
  00454	e12fff1e	 bx          lr
  00458		 |$LN9@AudioCodec@4|
  00458		 |$LN10@AudioCodec@4|
  00458	00000000	 DCD         |??_C@_1GC@MGPFDGMI@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAC?$AAo?$AAd?$AAe?$AAc?$AAS?$AAe?$AAt?$AAI?$AAn?$AAS?$AAa?$AAm?$AAp?$AAl?$AAe?$AAR?$AAa?$AAt?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd@|
  0045c		 |$LN11@AudioCodec@4|
  0045c	00000000	 DCD         |g_hCodecDeviceHandle|
  00460		 |$M32171|

			 ENDP  ; |?AudioCodecSetInSampleRate@@YAHW4CODEC_SAMPLERATE@@@Z|, AudioCodecSetInSampleRate

	EXPORT	|??_C@_1FG@BCLPINHB@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAC?$AAo?$AAd?$AAe?$AAc?$AAS?$AAe?$AAt?$AAV?$AAo?$AAl?$AAu?$AAm?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?0?$AA?5?$AAE?$AAr?$AAr?$AAo@| [ DATA ] ; `string'
	EXPORT	|?AudioCodecSetVolume@@YAHW4AUDIO_PERIPHERAL@@I@Z| ; AudioCodecSetVolume

  00030			 AREA	 |.pdata|, PDATA
|$T32188| DCD	|$LN8@AudioCodec@5|
	DCD	0x40003304

  00000			 AREA	 |.rdata|, DATA, READONLY
|??_C@_1FG@BCLPINHB@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAC?$AAo?$AAd?$AAe?$AAc?$AAS?$AAe?$AAt?$AAV?$AAo?$AAl?$AAu?$AAm?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?0?$AA?5?$AAE?$AAr?$AAr?$AAo@| DCB "A"
	DCB	0x0, "u", 0x0, "d", 0x0, "i", 0x0, "o", 0x0, "C", 0x0, "o"
	DCB	0x0, "d", 0x0, "e", 0x0, "c", 0x0, "S", 0x0, "e", 0x0, "t"
	DCB	0x0, "V", 0x0, "o", 0x0, "l", 0x0, "u", 0x0, "m", 0x0, "e"
	DCB	0x0, " ", 0x0, "F", 0x0, "a", 0x0, "i", 0x0, "l", 0x0, "e"
	DCB	0x0, "d", 0x0, ",", 0x0, " ", 0x0, "E", 0x0, "r", 0x0, "r"
	DCB	0x0, "o", 0x0, "r", 0x0, " ", 0x0, "I", 0x0, "D", 0x0, ":"
	DCB	0x0, " ", 0x0, "%", 0x0, "d", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0
	DCB	0x0					; `string'
; Function compile flags: /Odtp

  00460			 AREA	 |.text|, CODE, ARM

  00460		 |?AudioCodecSetVolume@@YAHW4AUDIO_PERIPHERAL@@I@Z| PROC ; AudioCodecSetVolume

; 193  : {

  00460		 |$LN8@AudioCodec@5|
  00460	e1a0c00d	 mov         r12, sp
  00464	e92d0003	 stmdb       sp!, {r0, r1}
  00468	e92d5000	 stmdb       sp!, {r12, lr}
  0046c	e24dd03c	 sub         sp, sp, #0x3C
  00470		 |$M32185|

; 194  :     BOOL bRetVal = TRUE;

  00470	e3a03001	 mov         r3, #1
  00474	e58d3018	 str         r3, [sp, #0x18]

; 195  :     
; 196  :     CODEC_PARAM_SET_GAIN CodecGainPara;
; 197  :     CodecGainPara.ulPeripheralID = (UINT32)eAudioPeri;

  00478	e59d3044	 ldr         r3, [sp, #0x44]
  0047c	e58d3010	 str         r3, [sp, #0x10]

; 198  :     CodecGainPara.ulGain = (UINT32)uVolume;

  00480	e59d3048	 ldr         r3, [sp, #0x48]
  00484	e58d3014	 str         r3, [sp, #0x14]

; 199  :     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -