-
Notifications
You must be signed in to change notification settings - Fork 6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Count droppedFrames in tunneling mode #7100
Comments
I am not very sure about it but since decoding of video is not in exoplayer code, it cannot determine if a frame is late, very late or should be dropped when tunneling mode is enabled |
The tunneling decoder reports rendered frames with the callback As the tunneling decoders are not required to call Unfortunately I will not access to a tunneling setup until the London office reopens (COVID-19 confinement). |
@Cizor, changxiangzhong in #7544 has done some testing regarding the tunneling I would encourage you to try the same methodology if possible to validate that it successfully detects drop frames for your devices. |
@krocard I've found in the @Override
protected void onProcessedOutputBuffer(long presentationTimeUs) {
super.onProcessedOutputBuffer(presentationTimeUs);
bufferCount++;
long expectedTimestampUs = dequeueTimestamp();
if (expectedTimestampUs != presentationTimeUs) {
throw new IllegalStateException("Expected to dequeue video buffer with presentation "
+ "timestamp: " + expectedTimestampUs + ". Instead got: " + presentationTimeUs
+ " (Processed buffers since last flush: " + bufferCount + ").");
}
} Essentially, this |
I agree that this should be an effective approach to detect missing frame. |
Searched documentation and issues
[REQUIRED] Question
How to count dropped frames count when tunneling mode is enabled?
For non tunneling mode I am using decoderCounters.droppedBufferCount but code in MediaCodecVideoRenderer doesn't seem to handle it for tunneling mode. Please advise.
Link to test content
Content used from Demo app
The text was updated successfully, but these errors were encountered: