mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00
Add missing AudioFormat encoding conversions
PiperOrigin-RevId: 423786422
This commit is contained in:
parent
f8de54e4a5
commit
79f3e2d862
@ -221,6 +221,17 @@ public final class MediaFormatUtil {
|
||||
case C.ENCODING_PCM_FLOAT:
|
||||
mediaFormatPcmEncoding = AudioFormat.ENCODING_PCM_FLOAT;
|
||||
break;
|
||||
case C.ENCODING_PCM_24BIT:
|
||||
mediaFormatPcmEncoding = AudioFormat.ENCODING_PCM_24BIT_PACKED;
|
||||
break;
|
||||
case C.ENCODING_PCM_32BIT:
|
||||
mediaFormatPcmEncoding = AudioFormat.ENCODING_PCM_32BIT;
|
||||
break;
|
||||
case C.ENCODING_INVALID:
|
||||
mediaFormatPcmEncoding = AudioFormat.ENCODING_INVALID;
|
||||
break;
|
||||
case Format.NO_VALUE:
|
||||
case C.ENCODING_PCM_16BIT_BIG_ENDIAN:
|
||||
default:
|
||||
// No matching value. Do nothing.
|
||||
return;
|
||||
|
@ -147,10 +147,10 @@ public class MediaFormatUtilTest {
|
||||
|
||||
@Test
|
||||
public void createMediaFormatFromFormat_withPcmEncoding_setsCustomPcmEncodingEntry() {
|
||||
Format format = new Format.Builder().setPcmEncoding(C.ENCODING_PCM_32BIT).build();
|
||||
Format format = new Format.Builder().setPcmEncoding(C.ENCODING_PCM_16BIT_BIG_ENDIAN).build();
|
||||
MediaFormat mediaFormat = MediaFormatUtil.createMediaFormatFromFormat(format);
|
||||
assertThat(mediaFormat.getInteger(MediaFormatUtil.KEY_PCM_ENCODING_EXTENDED))
|
||||
.isEqualTo(C.ENCODING_PCM_32BIT);
|
||||
.isEqualTo(C.ENCODING_PCM_16BIT_BIG_ENDIAN);
|
||||
assertThat(mediaFormat.containsKey(MediaFormat.KEY_PCM_ENCODING)).isFalse();
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user