| Index: media/base/android/media_decoder_job.h
|
| diff --git a/media/base/android/media_decoder_job.h b/media/base/android/media_decoder_job.h
|
| index 77caa9feec7f059b52c0fe8896dfc7bc63b66a08..799f48b87e6b927884c225b2ef8675d87f02b4aa 100644
|
| --- a/media/base/android/media_decoder_job.h
|
| +++ b/media/base/android/media_decoder_job.h
|
| @@ -29,15 +29,18 @@ class MediaDecoderJob {
|
| };
|
|
|
| // Callback when a decoder job finishes its work. Args: whether decode
|
| - // finished successfully, presentation time, audio output bytes.
|
| + // finished successfully, presentation time, audio output bytes, current
|
| + // audio frame position, current time.
|
| // If the presentation time is equal to kNoTimestamp(), the decoder job
|
| // skipped rendering of the decoded output and the callback target should
|
| // update its clock to avoid introducing extra delays to the next frame.
|
| typedef base::Callback<void(MediaCodecStatus, base::TimeDelta,
|
| - size_t)> DecoderCallback;
|
| + size_t, int64, base::TimeTicks)> DecoderCallback;
|
| // Callback when a decoder job finishes releasing the output buffer.
|
| - // Args: audio output bytes, must be 0 for video.
|
| - typedef base::Callback<void(size_t)> ReleaseOutputCompletionCallback;
|
| + // Args: audio output bytes, current audio frame position, current time.
|
| + // All of them must be 0 or empty for video.
|
| + typedef base::Callback<void(size_t, int64, base::TimeTicks)>
|
| + ReleaseOutputCompletionCallback;
|
|
|
| virtual ~MediaDecoderJob();
|
|
|
| @@ -138,7 +141,9 @@ class MediaDecoderJob {
|
| // destruction was not pending, passes its arguments to |decode_cb_|.
|
| void OnDecodeCompleted(MediaCodecStatus status,
|
| base::TimeDelta presentation_timestamp,
|
| - size_t audio_output_bytes);
|
| + size_t audio_output_bytes,
|
| + int64 audio_head_position,
|
| + base::TimeTicks audio_render_time);
|
|
|
| // Helper function to get the current access unit that is being decoded.
|
| const AccessUnit& CurrentAccessUnit() const;
|
|
|