diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 9898aa9abe..f540f19cdc 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -47,6 +47,7 @@ - [Stephane Senart](https://github.com/ssenart) - [Ömer Erdinç Yağmurlu](https://github.com/omeryagmurlu) - [Keegan Dahm](https://github.com/keegandahm) + - [GodTamIt](https://github.com/GodTamIt) # Emby Contributors diff --git a/src/scripts/browserDeviceProfile.js b/src/scripts/browserDeviceProfile.js index d40bee1fe7..7260cec047 100644 --- a/src/scripts/browserDeviceProfile.js +++ b/src/scripts/browserDeviceProfile.js @@ -668,10 +668,11 @@ import browser from './browser'; } if (canPlayVp8) { + // TODO: Remove vpx entry once servers are migrated profile.TranscodingProfiles.push({ Container: 'webm', Type: 'Video', - AudioCodec: 'vorbis', + AudioCodec: webmAudioCodecs.includes('opus') ? 'opus' : 'vorbis', VideoCodec: 'vpx', Context: 'Streaming', Protocol: 'http', @@ -679,6 +680,31 @@ import browser from './browser'; // Trying to transcode to 5 channels when there are only 2 speakers generally does not sound good MaxAudioChannels: physicalAudioChannels.toString() }); + profile.TranscodingProfiles.push({ + Container: 'webm', + Type: 'Video', + AudioCodec: webmAudioCodecs.includes('opus') ? 'opus' : 'vorbis', + VideoCodec: 'vp8', + Context: 'Streaming', + Protocol: 'http', + // If audio transcoding is needed, limit channels to number of physical audio channels + // Trying to transcode to 5 channels when there are only 2 speakers generally does not sound good + MaxAudioChannels: physicalAudioChannels.toString() + }); + } + + if (canPlayVp9) { + profile.TranscodingProfiles.push({ + Container: 'webm', + Type: 'Video', + AudioCodec: webmAudioCodecs.includes('opus') ? 'opus' : 'vorbis', + VideoCodec: 'vp9', + Context: 'Streaming', + Protocol: 'http', + // If audio transcoding is needed, limit channels to number of physical audio channels + // Trying to transcode to 5 channels when there are only 2 speakers generally does not sound good + MaxAudioChannels: physicalAudioChannels.toString() + }); } profile.TranscodingProfiles.push({