mirror of
https://github.com/samsonjs/media.git
synced 2026-03-29 10:05:48 +00:00
Merge pull request #9163 from ProtoScott:feature/dtsx_codec_updates
PiperOrigin-RevId: 386428758
This commit is contained in:
commit
8e29e76b51
5 changed files with 17 additions and 2 deletions
|
|
@ -103,6 +103,9 @@
|
|||
* Deprecate `setControlDispatcher` in `PlayerView`, `StyledPlayerView`,
|
||||
`PlayerControlView`, `StyledPlayerControlView` and
|
||||
`PlayerNotificationManager`.
|
||||
* Extractors:
|
||||
* Add support for DTS-UHD in MP4
|
||||
([#9163](https://github.com/google/ExoPlayer/issues/9163).
|
||||
* Ad playback:
|
||||
* Support changing ad break positions in the player logic
|
||||
([#5067](https://github.com/google/ExoPlayer/issues/5067).
|
||||
|
|
|
|||
|
|
@ -76,6 +76,7 @@ public final class MimeTypes {
|
|||
public static final String AUDIO_DTS = BASE_TYPE_AUDIO + "/vnd.dts";
|
||||
public static final String AUDIO_DTS_HD = BASE_TYPE_AUDIO + "/vnd.dts.hd";
|
||||
public static final String AUDIO_DTS_EXPRESS = BASE_TYPE_AUDIO + "/vnd.dts.hd;profile=lbr";
|
||||
public static final String AUDIO_DTS_UHD = BASE_TYPE_AUDIO + "/vnd.dts.uhd";
|
||||
public static final String AUDIO_VORBIS = BASE_TYPE_AUDIO + "/vorbis";
|
||||
public static final String AUDIO_OPUS = BASE_TYPE_AUDIO + "/opus";
|
||||
public static final String AUDIO_AMR = BASE_TYPE_AUDIO + "/amr";
|
||||
|
|
@ -380,10 +381,14 @@ public final class MimeTypes {
|
|||
return MimeTypes.AUDIO_E_AC3_JOC;
|
||||
} else if (codec.startsWith("ac-4") || codec.startsWith("dac4")) {
|
||||
return MimeTypes.AUDIO_AC4;
|
||||
} else if (codec.startsWith("dtsc") || codec.startsWith("dtse")) {
|
||||
} else if (codec.startsWith("dtsc")) {
|
||||
return MimeTypes.AUDIO_DTS;
|
||||
} else if (codec.startsWith("dtse")) {
|
||||
return MimeTypes.AUDIO_DTS_EXPRESS;
|
||||
} else if (codec.startsWith("dtsh") || codec.startsWith("dtsl")) {
|
||||
return MimeTypes.AUDIO_DTS_HD;
|
||||
} else if (codec.startsWith("dtsx")) {
|
||||
return MimeTypes.AUDIO_DTS_UHD;
|
||||
} else if (codec.startsWith("opus")) {
|
||||
return MimeTypes.AUDIO_OPUS;
|
||||
} else if (codec.startsWith("vorbis")) {
|
||||
|
|
|
|||
|
|
@ -137,9 +137,10 @@ public final class MimeTypesTest {
|
|||
assertThat(MimeTypes.getMediaMimeType("ec-3")).isEqualTo(MimeTypes.AUDIO_E_AC3);
|
||||
assertThat(MimeTypes.getMediaMimeType("ec+3")).isEqualTo(MimeTypes.AUDIO_E_AC3_JOC);
|
||||
assertThat(MimeTypes.getMediaMimeType("dtsc")).isEqualTo(MimeTypes.AUDIO_DTS);
|
||||
assertThat(MimeTypes.getMediaMimeType("dtse")).isEqualTo(MimeTypes.AUDIO_DTS);
|
||||
assertThat(MimeTypes.getMediaMimeType("dtse")).isEqualTo(MimeTypes.AUDIO_DTS_EXPRESS);
|
||||
assertThat(MimeTypes.getMediaMimeType("dtsh")).isEqualTo(MimeTypes.AUDIO_DTS_HD);
|
||||
assertThat(MimeTypes.getMediaMimeType("dtsl")).isEqualTo(MimeTypes.AUDIO_DTS_HD);
|
||||
assertThat(MimeTypes.getMediaMimeType("dtsx")).isEqualTo(MimeTypes.AUDIO_DTS_UHD);
|
||||
assertThat(MimeTypes.getMediaMimeType("opus")).isEqualTo(MimeTypes.AUDIO_OPUS);
|
||||
assertThat(MimeTypes.getMediaMimeType("vorbis")).isEqualTo(MimeTypes.AUDIO_VORBIS);
|
||||
assertThat(MimeTypes.getMediaMimeType("mp4a")).isEqualTo(MimeTypes.AUDIO_AAC);
|
||||
|
|
|
|||
|
|
@ -164,6 +164,9 @@ import java.util.List;
|
|||
@SuppressWarnings("ConstantCaseForConstants")
|
||||
public static final int TYPE_dtse = 0x64747365;
|
||||
|
||||
@SuppressWarnings("ConstantCaseForConstants")
|
||||
public static final int TYPE_dtsx = 0x64747378;
|
||||
|
||||
@SuppressWarnings("ConstantCaseForConstants")
|
||||
public static final int TYPE_ddts = 0x64647473;
|
||||
|
||||
|
|
|
|||
|
|
@ -965,6 +965,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||
|| childAtomType == Atom.TYPE_dtse
|
||||
|| childAtomType == Atom.TYPE_dtsh
|
||||
|| childAtomType == Atom.TYPE_dtsl
|
||||
|| childAtomType == Atom.TYPE_dtsx
|
||||
|| childAtomType == Atom.TYPE_samr
|
||||
|| childAtomType == Atom.TYPE_sawb
|
||||
|| childAtomType == Atom.TYPE_lpcm
|
||||
|
|
@ -1371,6 +1372,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||
mimeType = MimeTypes.AUDIO_DTS_HD;
|
||||
} else if (atomType == Atom.TYPE_dtse) {
|
||||
mimeType = MimeTypes.AUDIO_DTS_EXPRESS;
|
||||
} else if (atomType == Atom.TYPE_dtsx) {
|
||||
mimeType = MimeTypes.AUDIO_DTS_UHD;
|
||||
} else if (atomType == Atom.TYPE_samr) {
|
||||
mimeType = MimeTypes.AUDIO_AMR_NB;
|
||||
} else if (atomType == Atom.TYPE_sawb) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue