Closed
Bug 1049325
Opened 10 years ago
Closed 10 years ago
[Firefox OS] Last frame of video playback is not shown in PlatformDecoderModule
Categories
(Core :: Audio/Video, defect)
Tracking
()
RESOLVED
FIXED
2.1 S3 (29aug)
People
(Reporter: bwu, Assigned: bwu)
References
Details
Attachments
(2 files, 2 obsolete files)
13.99 KB,
patch
|
bwu
:
review+
|
Details | Diff | Splinter Review |
3.72 KB,
patch
|
bwu
:
review+
|
Details | Diff | Splinter Review |
FFOS's MP4 PlatformDecoderModule (bug 941302) doesn't handle EOS well. The Last frame of video playback is not shown.
Need to notify MediaCodec when there is no input frames any more and let codec push all the rest decoded frames out.
Testing contnet: http://people.mozilla.org/~cpearce/avatar.mp4 (Thanks for cpearce's info)
Assignee | ||
Updated•10 years ago
|
Assignee: nobody → bwu
Comment 1•10 years ago
|
||
Set to feat 2.1+ since it blocks 2.1 feat+ issue (bug 1027519).
feature-b2g: --- → 2.1
Comment 2•10 years ago
|
||
Codec indeed had this output(the last frame). But, it's handled in upper layer. Still working on it.
Target Milestone: --- → 2.1 S3 (29aug)
Assignee | ||
Comment 3•10 years ago
|
||
Notify decoder input EOS by inputting a null data and report MP4Reader output EOS (DrainComplete) when getting the last frame (EOS) from decoder.
Attachment #8475653 -
Flags: review?(cpearce)
Assignee | ||
Comment 4•10 years ago
|
||
Notify MediaCodec EOS when input data is null and return EOS error when getting the EOS flag from MediaCodec.
Attachment #8475657 -
Flags: review?(edwin)
Updated•10 years ago
|
Attachment #8475653 -
Flags: review?(cpearce) → review+
Comment 5•10 years ago
|
||
Based on the discussion with the partner, agreed to remove the feature-b2g flag on this.
feature-b2g: 2.1 → ---
Comment on attachment 8475657 [details] [diff] [review]
Bug-1049325-Part2-Notify-MediaCodec-input-EOS-and-report-EOS.patch
Review of attachment 8475657 [details] [diff] [review]:
-----------------------------------------------------------------
::: content/media/omx/MediaCodecProxy.cpp
@@ +479,5 @@
> metaData->setInt64(kKeyTime, timeUs);
> buffer->set_range(buffer->range_offset(), size);
> *aBuffer = buffer;
> + if (flags & MediaCodec::BUFFER_FLAG_EOS) {
> + return MediaCodec::BUFFER_FLAG_EOS;
Should this be returning |ERROR_END_OF_STREAM|?
Attachment #8475657 -
Flags: review?(edwin) → review+
Assignee | ||
Comment 7•10 years ago
|
||
(In reply to Edwin Flores [:eflores] [:edwin] from comment #6)
> Comment on attachment 8475657 [details] [diff] [review]
> Bug-1049325-Part2-Notify-MediaCodec-input-EOS-and-report-EOS.patch
>
> Review of attachment 8475657 [details] [diff] [review]:
> -----------------------------------------------------------------
>
> ::: content/media/omx/MediaCodecProxy.cpp
> @@ +479,5 @@
> > metaData->setInt64(kKeyTime, timeUs);
> > buffer->set_range(buffer->range_offset(), size);
> > *aBuffer = buffer;
> > + if (flags & MediaCodec::BUFFER_FLAG_EOS) {
> > + return MediaCodec::BUFFER_FLAG_EOS;
>
> Should this be returning |ERROR_END_OF_STREAM|?
Yes. Returning ERROR_END_OF_STREAM should be better since it is a more generic error code for EOS. I will change it.
Thanks for the suggestion!
Assignee | ||
Comment 8•10 years ago
|
||
Carry r+ from cpeare and have the corresponding minor change for comment 6.
Attachment #8475653 -
Attachment is obsolete: true
Attachment #8476487 -
Flags: review+
Assignee | ||
Comment 9•10 years ago
|
||
Carry r+ from edwin and have a small change per comment 6.
Attachment #8475657 -
Attachment is obsolete: true
Attachment #8476489 -
Flags: review+
Assignee | ||
Comment 10•10 years ago
|
||
Keywords: checkin-needed
Comment 11•10 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/a99f1ae04b4c
https://hg.mozilla.org/integration/mozilla-inbound/rev/2400a27d2bf1
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/a99f1ae04b4c
https://hg.mozilla.org/mozilla-central/rev/2400a27d2bf1
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•