mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00
Deduplicate some of the calls to DefaultVideoSink methods
Some DefaultVideoSink methods are called once per sequence, but this doesn't make sense as the DefaultVideoSink is connected to the VideoGraph output. This CL calls the DefaultVideoSink method only for the primary sequence. The other problematic DefaultVideoSink method calls will be moved in follow-up CLs. This is part of the effort to prepare PlaybackVideoGraphWrapper for multi-sequence. PiperOrigin-RevId: 742625589
This commit is contained in:
parent
2141d9ef9c
commit
595b75b7d3
@ -637,6 +637,11 @@ public final class PlaybackVideoGraphWrapper implements VideoSinkProvider, Video
|
|||||||
defaultVideoSink.setBufferTimestampAdjustmentUs(bufferTimestampAdjustmentUs);
|
defaultVideoSink.setBufferTimestampAdjustmentUs(bufferTimestampAdjustmentUs);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void setChangeFrameRateStrategy(
|
||||||
|
@C.VideoChangeFrameRateStrategy int changeFrameRateStrategy) {
|
||||||
|
defaultVideoSink.setChangeFrameRateStrategy(changeFrameRateStrategy);
|
||||||
|
}
|
||||||
|
|
||||||
private boolean shouldRenderToInputVideoSink() {
|
private boolean shouldRenderToInputVideoSink() {
|
||||||
return totalVideoInputCount != C.LENGTH_UNSET
|
return totalVideoInputCount != C.LENGTH_UNSET
|
||||||
&& totalVideoInputCount == registeredVideoInputCount;
|
&& totalVideoInputCount == registeredVideoInputCount;
|
||||||
@ -850,13 +855,17 @@ public final class PlaybackVideoGraphWrapper implements VideoSinkProvider, Video
|
|||||||
@Override
|
@Override
|
||||||
public void setVideoFrameMetadataListener(
|
public void setVideoFrameMetadataListener(
|
||||||
VideoFrameMetadataListener videoFrameMetadataListener) {
|
VideoFrameMetadataListener videoFrameMetadataListener) {
|
||||||
|
if (inputIndex == PRIMARY_SEQUENCE_INDEX) {
|
||||||
PlaybackVideoGraphWrapper.this.setVideoFrameMetadataListener(videoFrameMetadataListener);
|
PlaybackVideoGraphWrapper.this.setVideoFrameMetadataListener(videoFrameMetadataListener);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setPlaybackSpeed(@FloatRange(from = 0, fromInclusive = false) float speed) {
|
public void setPlaybackSpeed(@FloatRange(from = 0, fromInclusive = false) float speed) {
|
||||||
|
if (inputIndex == PRIMARY_SEQUENCE_INDEX) {
|
||||||
PlaybackVideoGraphWrapper.this.setPlaybackSpeed(speed);
|
PlaybackVideoGraphWrapper.this.setPlaybackSpeed(speed);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setVideoEffects(List<Effect> videoEffects) {
|
public void setVideoEffects(List<Effect> videoEffects) {
|
||||||
@ -892,7 +901,9 @@ public final class PlaybackVideoGraphWrapper implements VideoSinkProvider, Video
|
|||||||
@Override
|
@Override
|
||||||
public void setChangeFrameRateStrategy(
|
public void setChangeFrameRateStrategy(
|
||||||
@C.VideoChangeFrameRateStrategy int changeFrameRateStrategy) {
|
@C.VideoChangeFrameRateStrategy int changeFrameRateStrategy) {
|
||||||
defaultVideoSink.setChangeFrameRateStrategy(changeFrameRateStrategy);
|
if (inputIndex == PRIMARY_SEQUENCE_INDEX) {
|
||||||
|
PlaybackVideoGraphWrapper.this.setChangeFrameRateStrategy(changeFrameRateStrategy);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
x
Reference in New Issue
Block a user