Closed Bug 896303 Opened 6 years ago Closed 6 years ago

Media Recording - Calling start on a MediaRecorder object with no parameters results in ondataavailable events firing, even though they shouldn't be

Categories

(Core :: Audio/Video: Recording, defect)

defect
Not set

Tracking

()

VERIFIED FIXED
mozilla25

People

(Reporter: jsmith, Assigned: rlin)

References

Details

(Whiteboard: [MR1.2])

Attachments

(1 file, 1 obsolete file)

STR

1. Load https://bug891722.bugzilla.mozilla.org/attachment.cgi?id=773094 in Nightly
2. In the console, type mediaRecorder.start();
3. Wait a few seconds

Expected

No ondataavailable events should fire.

Actual

ondataavailable events fire every couple of seconds.
Blocks: 803414
Assignee: nobody → rlin
No longer blocks: 803414
Attached patch patch v1 (obsolete) — Splinter Review
Test case can be:
Call the start() function and check if can invoke the requestData() to get the blob data.
Attachment #779846 - Flags: review?(roc)
Bonus points btw for a mochitest here.
We can have a common js to get the mediaStream from variety source. :)
Comment on attachment 779846 [details] [diff] [review]
patch v1

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

::: content/media/MediaRecorder.cpp
@@ +146,5 @@
>      for (uint i = 0; i < outputBufs.Length(); i++) {
>        mEncodedBufferCache->AppendBuffer(outputBufs[i]);
>      }
>  
> +    if ((TimeStamp::Now() - lastBlobTimeStamp).ToMilliseconds() > mTimeSlice && mTimeSlice > 0) {

Check mTimeSlice > 0 first, since the call to Now() is slightly expensive.
Attachment #779846 - Flags: review?(roc) → review+
Whiteboard: [MR1.2]
Attached patch check-in patchSplinter Review
check-in patch.
Hi Jason, Could you also cover this test case?
(In reply to Randy Lin [:rlin] from comment #5)
> Created attachment 780289 [details] [diff] [review]
> check-in patch
> 
> check-in patch.
> Hi Jason, Could you also cover this test case?

Sure, I can cover it.
Blocks: 889772
Whiteboard: [MR1.2] → checkin-needed, [MR1.2]
FYI - checkin-needed is a keyword, not a whiteboard tag.
Keywords: checkin-needed
Whiteboard: checkin-needed, [MR1.2] → [MR1.2]
Attachment #779846 - Attachment is obsolete: true
https://hg.mozilla.org/mozilla-central/rev/4cdfb15c711e
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
Keywords: verifyme
QA Contact: jsmith
Verified on trunk - no parameters is correctly not firing ondataavailable events by default. Only requestData and calling stop invokes the ondataavailable event to fire. Also regression tested start with parameters as well to ensure it still works.
Status: RESOLVED → VERIFIED
Keywords: verifyme
Depends on: 898956
No longer depends on: 898956
Tracking development of mochitest in bug 899878.
No longer blocks: 889772
Depends on: 899878
Component: Video/Audio → Video/Audio: Recording
No longer blocks: MediaRecording
You need to log in before you can comment on or make changes to this bug.