Closed Bug 1059613 Opened 10 years ago Closed 9 years ago

MediaCodecReader playback sometimes doesn't trigger EOS to StateMachine?

Categories

(Core :: Audio/Video, defect)

All
Gonk (Firefox OS)
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: bechen, Assigned: bechen)

References

Details

After bug 1043900, the MediaCodecReader should handle EOS properly.
Bug during these days, I found sometimes the stream does not trigger EOS.

STR:
1. enable MediaCoder preference.
2. open browser to view a HTTP streaming (I use a MP4 file)
3. sometimes the EOS is not triggered at the end of stream. (maybe 20%?)

Not sure how to reproduce it, but once it happened, we can reproduce it by play the stream again. And then if I press home key to close the process, it won't happened again.
Update status:
I have verified the StateMachine go into DECODER_STATE_COMPLETED when the issue happened.
http://dxr.mozilla.org/mozilla-central/source/content/media/MediaDecoderStateMachine.cpp#2405

But the control bar still keeps on the "pause icon". So we can exclude MediaCodecReader because it had invoked OnAudioEOS and OnVideoEOS.
After some investigation, the audio thread stuck in AudioStream::Write function because the buffer is full.

And we think it's audio driver's problem because the flame device I used can not output any sounds even dtmf. By Randy's help, he tries to make a phone call on this device and then the audio driver seems be fixed or restart. Once the device can output sounds, the eos problem goes away.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.