mirror of
https://github.com/androidx/media.git
synced 2025-04-29 14:26:50 +08:00
Make some audio processors public
ChannelMappingAudioProcessor, TrimmingAudioProcessor and ToFloatPcmAudioProcessor are currently package-private even though they might be useful in custom audio processing chains or custom version of audio sinks. Issue: androidx/media#2339 PiperOrigin-RevId: 747857815
This commit is contained in:
parent
9cc7dd0dbe
commit
70e7121a51
@ -23,6 +23,9 @@
|
||||
* DataSource:
|
||||
* Audio:
|
||||
* Allow constant power upmixing/downmixing in DefaultAudioMixer.
|
||||
* Make `ChannelMappingAudioProcessor`, `TrimmingAudioProcessor` and
|
||||
`ToFloatPcmAudioProcessor` public
|
||||
([#2339](https://github.com/androidx/media/issues/2339)).
|
||||
* Video:
|
||||
* Add experimental `ExoPlayer` API to include the
|
||||
`MediaCodec.BUFFER_FLAG_DECODE_ONLY` flag when queuing decode-only input
|
||||
|
@ -23,6 +23,7 @@ import androidx.media3.common.Format;
|
||||
import androidx.media3.common.audio.AudioProcessor;
|
||||
import androidx.media3.common.audio.BaseAudioProcessor;
|
||||
import androidx.media3.common.util.Assertions;
|
||||
import androidx.media3.common.util.UnstableApi;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.util.Arrays;
|
||||
|
||||
@ -30,7 +31,8 @@ import java.util.Arrays;
|
||||
* An {@link AudioProcessor} that applies a mapping from input channels onto specified output
|
||||
* channels. This can be used to reorder, duplicate or discard channels.
|
||||
*/
|
||||
/* package */ final class ChannelMappingAudioProcessor extends BaseAudioProcessor {
|
||||
@UnstableApi
|
||||
public final class ChannelMappingAudioProcessor extends BaseAudioProcessor {
|
||||
|
||||
@Nullable private int[] pendingOutputChannels;
|
||||
@Nullable private int[] outputChannels;
|
||||
|
@ -19,6 +19,7 @@ import androidx.media3.common.C;
|
||||
import androidx.media3.common.Format;
|
||||
import androidx.media3.common.audio.AudioProcessor;
|
||||
import androidx.media3.common.audio.BaseAudioProcessor;
|
||||
import androidx.media3.common.util.UnstableApi;
|
||||
import androidx.media3.common.util.Util;
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
@ -34,7 +35,8 @@ import java.nio.ByteBuffer;
|
||||
* <li>{@link C#ENCODING_PCM_FLOAT} ({@link #isActive()} will return {@code false})
|
||||
* </ul>
|
||||
*/
|
||||
/* package */ final class ToFloatPcmAudioProcessor extends BaseAudioProcessor {
|
||||
@UnstableApi
|
||||
public final class ToFloatPcmAudioProcessor extends BaseAudioProcessor {
|
||||
|
||||
private static final int FLOAT_NAN_AS_INT = Float.floatToIntBits(Float.NaN);
|
||||
private static final double PCM_32_BIT_INT_TO_PCM_32_BIT_FLOAT_FACTOR = 1.0 / 0x7FFFFFFF;
|
||||
|
@ -20,11 +20,13 @@ import static java.lang.Math.min;
|
||||
import androidx.media3.common.C;
|
||||
import androidx.media3.common.Format;
|
||||
import androidx.media3.common.audio.BaseAudioProcessor;
|
||||
import androidx.media3.common.util.UnstableApi;
|
||||
import androidx.media3.common.util.Util;
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
/** Audio processor for trimming samples from the start/end of data. */
|
||||
/* package */ final class TrimmingAudioProcessor extends BaseAudioProcessor {
|
||||
@UnstableApi
|
||||
public final class TrimmingAudioProcessor extends BaseAudioProcessor {
|
||||
|
||||
private int trimStartFrames;
|
||||
private int trimEndFrames;
|
||||
|
Loading…
x
Reference in New Issue
Block a user