Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ waveInSelectPorts(3mms) — Multimedia Services 2.4B

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

waveOutSelectPorts(3mms)

waveInSelectPorts(3mms)  —  Subroutines

 
 
 
 

Name

 
waveInSelectPorts --- Select the ports through which input of audio data is enabled.  This function is meaningful only for a wave input device with multiple ports. 
 
 

Syntax

 
 
 

 #include <mme/mme_api.h>
 MMRESULT waveInSelectPorts(UINT uClassDeviceID,
                           DWORD dwPortMask);
 

 
 
 

Arguments

 
UINT uClassDeviceID
Identifies the waveform audio input device.

 
DWORD dwPortMask
Specifies one or more ports to be selected.
 
 

Description

 
The waveInSelectPorts function enables audio input to be acquired through the ports specified by the dwPortMask parameter. The dwPortMask value is a bit mask; each bit set defines whether the corresponding port is to be selected. Mask values MME_PORTMASK_01 through MME_PORTMASK_32 are defined for use in specifying the port mask value. 
 

Extensions

 
The waveInSelectPorts function is a Digital extension to the Microsoft multimedia API specification. 
 
 

Return Values

 
Returns MMSYSERR_NOERROR if the function is successful; otherwise, it returns one of the following error codes:
 
 

 
MMSYSERR_BADDEVICEID@T{ The specified device ID is out of range. T} MMSYSERR_NOTSUPPORTED@T{ This function is not supported for this device. T} MMSYSERR_INVALPARAM@T{ The value of dwPortMask is not valid, or the selection of the ports specified is not supported by this device.  T}

 
 

Device-Specific Notes

 
The Alpha Baseboard wave audio input device does not support input port selection and returns MMSYSERR_NOTSUPPORTED.

 
The Digital J300 wave audio input device supports two ports.  Port 1 (MME_PORTMASK_01), the default port, corresponds to the 1/8-inch (3.45 mm) stereo input jack.  Port 2 (MME_PORTMASK_02) corresponds to the input portion of the headset jack.  Only one port may be selected at a time.
 

 
The MSB (Microsoft Sound Board or equivalent) input device supports multiple ports.  For the MSB:

 
Port 1 (MME_PORTMASK_01) corresponds to the microphone port.
 
Port 2 (MME_PORTMASK_02) corresponds to the line input port (left and right.
 
Port 3 (MME_PORTMASK_03) is not available on the Microsoft Sound Board.
 
Port 4 (MME_PORTMASK_04) corresponds to the internal loopback of the output to the input.
 

 
Internally, with reference to the audio chip signals, these ports correspond to the following:
 

 
1@Microphone@T{ MIC T} 2@Line Input@T{ AUX1 T} 3@Not Available@T{ LINE_IN T}  
4@Loopback@T{ LINE_OUT_LOOPBACK T}

 

The Personal Workstation audio device supports five input ports.  Only one input port at a time can be selected.  (See Appendix B of the Programmer’s Guide for more information about the these ports.) 
Port 1 (MME_PORTMASK_01) corresponds to the microphone port.
 
Port 2 (MME_PORTMASK_02) corresponds to the auxiliary CD-ROM port.
 
Port 3 (MME_PORTMASK_03) corresponds to the line input port.
 
Port 4 (MME_PORTMASK_04) corresponds to the playback mixer port. The playback mixer can be used to record the playback of an audio wave file stream mixed with audio input from another source.
 
Port 5 (MME_PORTMASK_05) corresponds to the record mixer port. The record mixer by default has all of its input signals muted.
 
 
The following Digital device-dependent names are defined in the file mmsystem.h. 
 
 

 #define MME_J300_STEREO_IN              MME_PORTMASK_01
#define MME_J300_LINE_IN                MME_PORTMASK_01
#define MME_J300_HEADSET_IN             MME_PORTMASK_02
#define MME_J300_PHONE_IN               MME_PORTMASK_02
 #define MME_MSB_MICROPHONE_IN           MME_PORTMASK_01
#define MME_MSB_LINE_IN                 MME_PORTMASK_02
#define MME_MSB_LINE_OUT_LOOPBACK_IN    MME_PORTMASK_04
 #define MME_ESS_MICROPHONE_IN           MME_PORTMASK_01
#define MME_ESS_AUX_CD_IN               MME_PORTMASK_02
#define MME_ESS_LINE_IN                 MME_PORTMASK_03
#define MME_ESS_PLAYBACK_MIXER_IN       MME_PORTMASK_04
#define MME_ESS_RECORD_MIXER_IN         MME_PORTMASK_05
 #define MME_MAXWAVEPORTDESCLEN 32 /∗ Maximum port description length ∗/
#define MME_MAXWAVEPORTS 32 /∗Maximum number of ports for a wave device ∗/
 

 

 
 
 

See Also

 
waveOutSelectPorts(3mms)
 
 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026