Dear Experts, In Video playback, the current algorithm uses the audio track's time source as reference and based on the thresholds, a decision is taken if a video frame can be rendered or dropped or delayed. This is implemented in AwesomePlayer.cpp, onVideoEvent method.
If there is some block in the system due to some hardware issue which introduces a very long delay, the current algorithm starts dropping the video frames. However, the decision to drop a frame is taken after the same has been decoded and not during parsing. In other words, all subsequent frames potentially would be dropped and the catch-up or resynchronization depends on the speed of the decoder. However, this leads a bad user experience as the video playback appears stuck/stalled. In these scenarios, shouldn't the system be able to resynchronize faster i.e. skip frames at parser level and start decoding from a key frame at the new position? Could someone explain why a similar strategy wasn't adopted? Thanks in advance. Ganesh -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

