Skip to content

Commit cf8b35f

Browse files
committed
Remove audio/mp4 media type references, use video/mp4 only
1 parent 91a9a8b commit cf8b35f

1 file changed

Lines changed: 14 additions & 17 deletions

File tree

uwp/audio-video-camera/supported-play-type-strings.md

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -42,20 +42,19 @@ Many of these APIs return enumeration values that express the result as "NotSupp
4242

4343
## Media type and subtype
4444

45-
Windows APIs support content type strings with the media types `"video"` and `"audio"` and the subtype/container of `"mp4"`.
45+
Windows APIs only support content type strings with the media type `"video"` and the subtype/container of `"mp4"`.
4646

4747

4848
| Value | Description | Remarks |
49-
|-------|-------------|----------------|--------------------|
49+
|-------|-------------|----------------|
5050
| "video/mp4" | Video media type and MPEG-4 subtype/container. | |
51-
| "audio/mp4" | Audio media type and MPEG-4 subtype/container. | Used for audio-only codec capability queries. |
5251

5352

5453

5554
## Video codecs
5655

5756
| Value | Description | Remarks |
58-
|-------|-------------|----------------|--------------------|
57+
|-------|-------------|----------------|
5958
| "avc1" | H.264 | |
6059
| "hvc1" | HEVC | |
6160
| "hev1" | HEVC | |
@@ -116,21 +115,19 @@ It is up to the content provider to choose the resolution limit to use when this
116115

117116
### Supported audio endpoint codecs
118117

119-
Some audio encoding features require the audio endpoint to support the feature natively. The *audio-endpoint-codec* extension is useful for applications and streaming services, allowing them to figure out dynamically whether they should send stereo audio or 5.1 (because the device supports 5.1), and therefore control used bandwidth while maximizing audio quality.
120-
121-
The `audio-endpoint-codec` query differs from the `codecs` query because it determines whether the audio endpoint device connected to the PC supports the specified format. So, for example, if a PC has the software decoder for the AC3 codec, the `codecs=ac-3` query will succeed. If the PC is using basic headphones as the audio endpoint, the `audio-endpoint-codec=ac-3` query will fail. But if the PC is connected to an audio/video receiver that can decode AC3 format, the `audio-endpoint-codec=ac-3` query will pass.
118+
Some audio playback scenarios require the audio endpoint to support the a given audio codec or feature natively. The *audio-endpoint-codec* extension is useful for applications and streaming services, allowing them to figure out dynamically whether they should send stereo audio or 5.1 (because the device supports 5.1), and therefore control used bandwidth while maximizing audio quality. It also exposes information on whether the audio endpoint is connected to a device that can decode the audio format in hardware instead of relying on the software decoder on the system.
122119

123120
Support for *audio-endpoint-codec* was introduced in Windows 10, build 1803.
124121

125-
The following is an example content type string using *audio-endpoint-codec*.
122+
The following is an example content type string using *audio-endpoint-codec* checking for the audio endpoint hardware support for the Dolby Digital decoder.
126123

127124
`'video/mp4; codecs="avc1,mp4a"; features="audio-endpoint-codec=DD"'`
128125

129-
The following is an example content type string for uncompressed PCM audio.
126+
The following is an example content type string checking for the number of channels supported by the audio endpoint.
130127

131128
`'video/mp4; features="audio-endpoint-codec=PCM2.0"'`
132129

133-
Note that if the endpoint supports more or the same number of channels as specified, the check will succeed. So, if the system is configured for 5.1 audio, then checks for "PCM2.0" and "PCM5.1" will pass, but a check for "PCM7.1" will fail.
130+
Note that if the endpoint supports more or the same number of channels as specified, the check will succeed. So, if the system is configured for 5.1 audio, then checks for "PCM2.0" and "PCM5.1" will pass, but a check for "PCM7.1" will return a failure.
134131

135132

136133
| Codec string | Description | Remarks |
@@ -145,6 +142,9 @@ Note that if the endpoint supports more or the same number of channels as specif
145142
| PCM7.1 | Uncompressed 7.1 channel audio | |
146143
| AC3 | Dolby Digital | |
147144

145+
> [!NOTE]
146+
> The `codecs=ac-3` query and the `audio-endpoint-codec=DD` query check for different capabilities despite both referencing the Dolby Digital codec. The `codecs` query checks whether a software decoder is present on the system that can decode the format, while the `audio-endpoint-codec` query checks whether the connected audio endpoint device natively supports the format. The result of one query does not affect the other — a system can have a software decoder without a capable endpoint or a capable endpoint without a software decoder.
147+
148148
### Audio capability query examples
149149

150150
Windows supports enhanced MIME CanPlayType queries that allow a client to discover the audio capabilities of a device. You can query the CanPlayType/IsTypeSupported API for audio capabilities to find out what codecs are available on the machine, the number of speakers the system is configured for, and the capabilities of the connected audio endpoint device.
@@ -153,13 +153,10 @@ Windows supports enhanced MIME CanPlayType queries that allow a client to discov
153153

154154
Use the `codecs` parameter to determine whether the system has a software decoder that can decode the specified audio format into PCM and play it through the connected speaker or headphone configuration.
155155

156-
`"audio/mp4; codecs=\"ac-3\""`
156+
`"video/mp4; codecs=\"ac-3\""`
157157

158158
This query checks whether there is a software decoder that can decode AC-3 (Dolby Digital) audio.
159159

160-
> [!NOTE]
161-
> The `codecs=ac-3` query and the `audio-endpoint-codec=DD` query check for different capabilities despite both referencing the Dolby Digital codec. The `codecs` query checks whether a software decoder is present on the system that can decode the format, while the `audio-endpoint-codec` query checks whether the connected audio endpoint device natively supports the format. The result of one query does not affect the other — a system can have a software decoder without a capable endpoint, or a capable endpoint without a software decoder.
162-
163160
**Querying for audio endpoint device capabilities**
164161

165162
Use the `audio-endpoint-codec` feature to determine the capabilities of the audio endpoint device, such as whether the system is connected to an audio/video receiver (AVR) that can decode a specific audio format.
@@ -180,16 +177,16 @@ This query checks whether the system is configured for 5.1 speakers and can play
180177

181178
When systems with Dolby Atmos or headphones that support Virtual Surround Sound (VSS) are considered, the number of possible hardware and software combinations can be very large. The following table shows the query results for `audio-endpoint-codec` and `codecs` across representative device configurations.
182179

183-
| # | Device configuration | Dolby SW decoder | DD | DD+ | DD+JOC | PCM2.0 | PCM5.1 | PCM7.1 | codecs=ac-3 |
180+
| # | Device configuration | Dolby SW Decoder | DD | DD+ | DD+JOC | PCM2.0 | PCM5.1 | PCM7.1 | codecs=ac-3 |
184181
|---|---------------------|---------------|:---:|:---:|:------:|:------:|:------:|:------:|:-----------:|
185182
| 1 | Headphones with Atmos, VSS enabled | Installed ||||||||
186183
| 2 | Headphones without Atmos, VSS disabled | Installed ||||||||
187184
| 3 | Headphones without Atmos, VSS enabled | Installed ||||||||
188185
| 4 | Headphones without Atmos, VSS enabled | Not installed ||||||||
189186
| 5 | 5.1 speakers (no AVR) | Installed ||||||||
190187
| 6 | 5.1 speakers (no AVR) | Not installed ||||||||
191-
| 7 | Atmos-capable AVR, configured for 5.1 | Installed ||||||| |
192-
| 8 | Atmos-capable AVR, configured for 5.1 | Not installed ||||||| |
188+
| 7 | Atmos-capable AVR, configured for 5.1 | Not Installed ||||||| |
189+
| 8 | Non-Atmos AVR, configured for 5.1 | Installed ||||||| |
193190

194191
The DD, DD+, DD+JOC, PCM2.0, PCM5.1, and PCM7.1 columns show the results of the `audio-endpoint-codec` feature query.
195192

0 commit comments

Comments
 (0)