|Microsoft DirectX 9.0|
This topic applies to Windows XP Service Pack 1 only.
The KaraokeChannelContent property retrieves a value that indicates the type of content in the specified karaoke channel in the specified stream.
VidWebDVD.KaraokeChannelContent( lStream As Long, lChan As Long ) As Long
Long specifying the stream to check.
Long specifying the channel to check.
Returns an integer value whose individual bits specify the contents of the karaoke channel. Returned values include the following.
|0x0001||Guide vocal 1|
|0x0002||Guide vocal 2|
|0x0004||Guide melody 1|
|0x0008||Guide melody 2|
|0x0010||Guide melody A|
|0x0020||Guide melody B|
|0x0040||Sound effect A|
|0x0080||Sound effect B|
If the property fails, Err.Number may be set to one of the following values.
|VFW_E_DVD_INVALIDDOMAIN||You attempted to take the value in a domain that does not support this property.|
|E_NO_DVD_VOLUME||No DVD in the machine.|
|E_REGION_CHANGE_FAIL||The DVD has a different region than the player.|
|E_INVALIDARG||lStream is less than 0 or lChan is greater than 7.|
This property is read-only. DVD audio channel numbering is zero-based, so channels 2, 3, and 4 are the auxiliary karaoke channels. After the method returns, perform a bitwise AND operation on the return value to determine the contents of each channel. Because a single channel might have more than one type of content recorded on it, you should test for all the possible values even after a match is found.
The following code example demonstrates how to test the content of a stream's channel against each possible value:
iContent = VidWebDVD.KaraokeChannelContent(lStream, lChan) ' VB-style hex values. If(iContent And &H1) Then ' Set a check box or another UI control to ' indicate this channel has the Guide Vocal 1. End If If(iContent And &H2) Then ' Set a check box or another UI control to ' indicate this channel has the Guide Vocal 2. End If If(iContent And &H4) Then ' Set a check box or another UI control to ' indicate this channel has the Guide Melody 1. End If ' Repeat for each possible value for each channel.
After the user knows the contents of each channel, he or she must be able to adjust the volume or turn the individual channels on or off as needed. Implement this functionality in your application by using the KaraokeAudioPresentationMode property.
Note To play karaoke discs, the audio decoder on the user's system must be compatible with the DirectShow® 8 karaoke implementation.