Closed Bug 1108846 Opened 10 years ago Closed 10 years ago

generate progress events for resource fetch from MSE

Categories

(Core :: Audio/Video, defect)

x86_64
All
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla37
Tracking Status
firefox36 --- fixed
firefox37 --- fixed

People

(Reporter: karlt, Assigned: karlt)

References

(Blocks 1 open bug)

Details

Attachments

(1 file, 1 obsolete file)

      No description provided.
No longer depends on: 1108838
See Also: → 1108838
This corresponds to ChannelMediaResource::DoNotifyDataReceived().

I'm not clear on the distinction between NotifyBytesDownloaded() and
NotifyDataArrived(), but I expect they occur at the same time with MSE.
Attachment #8533420 - Flags: review?(kinetik)
Comment on attachment 8533420 [details] [diff] [review]
notify MediaSourceDecoder of bytes downloaded to trigger progress events

Review of attachment 8533420 [details] [diff] [review]:
-----------------------------------------------------------------

NotifyBytesDownloaded and NotifyDataArrived are similar and may be able to be merged with some refactoring.  Right now the intention is for NotifyDataArrived to give the reader read-only access to the data as it's received on the main thread (it was originally added to implement progressive updating of the WebMReader's buffer/time mapping), and NotifyBytesDownloaded to pump the progress event dispatch logic.

It seems slightly cleaner to call mParentDecoder->NotifyBytesDownloaded from TrackBuffer::AppendDataToCurrentResource since NBD and NDA are logically different.
Attachment #8533420 - Flags: review?(kinetik) → review+
This version calls NBD from TrackBuffer::AppendDataToCurrentResource().

The call should be after AppendData() for MediaDecoder::ComputePlaybackRate(),
but I'm not aware of ordering requirements wrt to NDA.
Attachment #8533999 - Flags: review?(kinetik)
Attachment #8533420 - Attachment is obsolete: true
Comment on attachment 8533999 [details] [diff] [review]
notify MediaSourceDecoder of bytes downloaded to
trigger progress events v2

Thanks!  There shouldn't be any order dependency between NDA and NBD, so that's good.  Technically, NDA is called before the data is in the MediaCache for ChannelMediaResources whereas here it's called after the data is available, but I don't think (& hope) the users are not dependent on that behaviour difference.
Attachment #8533999 - Attachment description: notify MediaSourceDecoder of bytes downloaded to trigger progress events v2 → notify MediaSourceDecoder of bytes downloaded to trigger progress events v2
Attachment #8533999 - Flags: review?(kinetik) → review+
https://hg.mozilla.org/mozilla-central/rev/66c75c0a2312
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla37
Comment on attachment 8533999 [details] [diff] [review]
notify MediaSourceDecoder of bytes downloaded to
trigger progress events v2

Approval Request Comment
[Feature/regressing bug #]: MSE
[User impact if declined]: Less consistent testing, sites more likely to serve Flash video.
[Describe test coverage new/current, TBPL]: Landed on m-c.
[Risks and why]: Low. Clean change.
[String/UUID change made/needed]: None.
Attachment #8533999 - Flags: approval-mozilla-aurora?
Attachment #8533999 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: