mirror of
https://github.com/samsonjs/media.git
synced 2026-03-27 09:45:47 +00:00
Add MediaCodecInfo to MediaCodecRenderer::onReadyToInitializeCodec
This commit is contained in:
parent
424b43d2eb
commit
f149cb28a3
3 changed files with 7 additions and 5 deletions
|
|
@ -1216,7 +1216,7 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
|
|||
if (codecOperatingRate <= assumedMinimumCodecOperatingRate) {
|
||||
codecOperatingRate = CODEC_OPERATING_RATE_UNSET;
|
||||
}
|
||||
onReadyToInitializeCodec(inputFormat);
|
||||
onReadyToInitializeCodec(codecInfo, inputFormat);
|
||||
codecInitializingTimestamp = getClock().elapsedRealtime();
|
||||
MediaCodecAdapter.Configuration configuration =
|
||||
getMediaCodecConfiguration(codecInfo, inputFormat, crypto, codecOperatingRate);
|
||||
|
|
@ -1495,10 +1495,11 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
|
|||
*
|
||||
* <p>The default implementation is a no-op.
|
||||
*
|
||||
* @param codecInfo The {@link MediaCodecInfo} the codec which is being configured.
|
||||
* @param format The {@link Format} for which the codec is being configured.
|
||||
* @throws ExoPlaybackException If an error occurs preparing for initializing the codec.
|
||||
*/
|
||||
protected void onReadyToInitializeCodec(Format format) throws ExoPlaybackException {
|
||||
protected void onReadyToInitializeCodec(MediaCodecInfo codecInfo, Format format) throws ExoPlaybackException {
|
||||
// Do nothing.
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1214,7 +1214,7 @@ public class MediaCodecVideoRenderer extends MediaCodecRenderer
|
|||
|
||||
@CallSuper
|
||||
@Override
|
||||
protected void onReadyToInitializeCodec(Format format) throws ExoPlaybackException {
|
||||
protected void onReadyToInitializeCodec(MediaCodecInfo codecInfo, Format format) throws ExoPlaybackException {
|
||||
if (videoSink != null && !videoSink.isInitialized()) {
|
||||
try {
|
||||
videoSink.initialize(format);
|
||||
|
|
|
|||
|
|
@ -78,6 +78,7 @@ import androidx.media3.exoplayer.Renderer;
|
|||
import androidx.media3.exoplayer.SeekParameters;
|
||||
import androidx.media3.exoplayer.analytics.AnalyticsListener;
|
||||
import androidx.media3.exoplayer.mediacodec.MediaCodecAdapter;
|
||||
import androidx.media3.exoplayer.mediacodec.MediaCodecInfo;
|
||||
import androidx.media3.exoplayer.mediacodec.MediaCodecSelector;
|
||||
import androidx.media3.exoplayer.source.MediaSource;
|
||||
import androidx.media3.exoplayer.video.MediaCodecVideoRenderer;
|
||||
|
|
@ -662,12 +663,12 @@ public final class ExperimentalFrameExtractor {
|
|||
|
||||
@CallSuper
|
||||
@Override
|
||||
protected void onReadyToInitializeCodec(Format format) throws ExoPlaybackException {
|
||||
protected void onReadyToInitializeCodec(MediaCodecInfo codecInfo, Format format) throws ExoPlaybackException {
|
||||
if (isTransferHdr(format.colorInfo) && toneMapHdrToSdr) {
|
||||
// Setting the VideoSink format to SDR_BT709_LIMITED tone maps to SDR.
|
||||
format = format.buildUpon().setColorInfo(SDR_BT709_LIMITED).build();
|
||||
}
|
||||
super.onReadyToInitializeCodec(format);
|
||||
super.onReadyToInitializeCodec(codecInfo, format);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
Loading…
Reference in a new issue