Commit Graph

808 Commits

Author SHA1 Message Date
Kaku Kuo
419eeaab31 Bug 1346498 part 7 - remove outdated comments in HTMLMediaElement.cpp; r=jwwang
MDSM's dormant mechanism has nothing to do with the HTMLMediaElement's states now.

MozReview-Commit-ID: 4RSHsexy7fi
2017-03-11 16:33:50 +08:00
Kaku Kuo
534d42fb9c Bug 1345403 part 3 - Test element becomes tainted by DrawImage; r=jwwang,smaug
MozReview-Commit-ID: 9Txz4FbFtPe
2017-03-08 20:22:05 +08:00
Kaku Kuo
7802474ab9 Bug 1345403 part 2 - Mark element tainted when DrawImage is used; r=jwwang,mattwoodrow
Mark video element as tainted (stored on the decoder owned by video element) when the video is used as source to drawImage() on canvas.

MozReview-Commit-ID: HdciVwhqPu3
2017-03-08 19:41:08 +08:00
Iris Hsiao
7f2d7798aa Backed out 5 changesets (bug 1345403) for permanent failure in autophone Mdm tests
Backed out changeset f6415ae0ba89 (bug 1345403)
Backed out changeset ac12e246a808 (bug 1345403)
Backed out changeset a3e4ce12194f (bug 1345403)
Backed out changeset ba072186c917 (bug 1345403)
Backed out changeset 7a7d6e9b8329 (bug 1345403)
2017-03-13 15:28:14 +08:00
Kaku Kuo
d0e1629ba0 Bug 1345403 part 3 - Test element becomes tainted by DrawImage; r=jwwang,smaug
MozReview-Commit-ID: 9Txz4FbFtPe
2017-03-08 20:22:05 +08:00
Kaku Kuo
32a89952db Bug 1345403 part 2 - Mark element tainted when DrawImage is used; r=jwwang,mattwoodrow
Mark video element as tainted (stored on the decoder owned by video element) when the video is used as source to drawImage() on canvas.

MozReview-Commit-ID: HdciVwhqPu3
2017-03-08 19:41:08 +08:00
Michael Layzell
227013f950 Bug 1331434 - Part 9: Return after ErrorResult::Throw in /dom, r=ehsan
MozReview-Commit-ID: CWjx4L8LTr9
2017-03-07 19:06:48 -05:00
Wei-Cheng Pan
7a678cdad2 Bug 1310127 - Part 17: Use MOZ_MUST_USE in netwerk/protocol/http r=smaug
MozReview-Commit-ID: 5gvVZtsa3yS
2016-12-20 11:49:32 +08:00
David Major
b1e362f6f7 Bug 1344615: Remove nsXPCOMStrings.{h,cpp} r=bsmedberg
These are now dead code.

MozReview-Commit-ID: AClU0Qx3kmN
2017-03-06 17:52:54 +13:00
Carsten "Tomcat" Book
b67f88b34f merge mozilla-inbound to mozilla-central a=merge 2017-03-06 10:53:27 +01:00
Alastor Wu
7ff7d706d0 Bug 1343465 - part1 : check audio track to decide the audible state when the media element was muted. r=baku
If the media starts after muting the tab, IsOwnerAudible() would always return
"eNotAudible". It causes that the "play tab" icon can't be displayed because we
only show the "play tab" icon for the "eMaybeAudible" or "eAudible".

We should check whether owner owns the audio track to decide the return value.

MozReview-Commit-ID: DGwkArx0a4R
2017-03-04 16:51:12 +08:00
Alastor Wu
3e5501715a Bug 1338137 - part1 : ref media content when the media element bind to tree. r=baku
In bug1319771, we found that the tab would become visible unexpectly in short
period in some situations. We don't want to resume the tab in this kind of
situation, so we check whether there is any alive media component in the tab
using IsServiceStarted(). However, since we have lots different ways to create
the service, this function is not accurate at all.

Therefore, we can add media element directly to the document when it binds to
tree so that we can really know whether there is any alive media component.

MozReview-Commit-ID: FvZFg91IqgE
2017-03-04 01:14:24 +08:00
karo
6eca568326 Bug 1343409 - HTMLMediaElement::MozRequestDebugInfo returns EMEInfo. r=cpearce
MozReview-Commit-ID: 1iQP3OJmwdP
2017-03-01 12:56:29 +13:00
Patrick McManus
e07d03fbf9 Bug 1344374 - remove now-meaningless nsIRequest::INHIBIT_PIPELINE r=hurley 2017-03-03 16:46:53 -05:00
Gerald Squelart
e49c0b5b9a Bug 1343161 - MediaDecoderOwner::DecodeWarning and HTMLMediaElement implementation - r=jya
Similar to DecodeError, except we allow decoding to continue.

MozReview-Commit-ID: FN9m03o6GXV
2017-02-27 12:12:37 +11:00
Gerald Squelart
f0f4a75981 Bug 1343161 - StoreDecodeError from HTMLMediaElement::DecodeError - r=jya
MozReview-Commit-ID: 8Q66JScrrxS
2017-02-21 14:02:11 +11:00
Alastor Wu
d91f6f9f1f Bug 1339230 - part2 : should be non-audible when media is suspended. r=baku
MozReview-Commit-ID: GtktbXEpuUU
2017-02-24 17:15:22 +08:00
Alastor Wu
f0cc040c78 Bug 1192818 - part4 : only mute media element if there is alive track. r=jwwang
If we don't have any alive track in MediaTrackList, we don't need to mute
MediaElement.

MozReview-Commit-ID: 9vY692O7N0e
2017-02-23 14:16:44 +08:00
Alastor Wu
a79d7e38d5 Bug 1192818 - part1 : dispatch DOMAudioPlaybackStopped when mute the tab. r=baku
The root cause of the intermittent fail is because "DOMAudioPlaybackStopped" has no directly relationship with browser.mute()/unmute().

In [1], the "DOMAudioPlaybackStopped" is caused by audio stop playing, not by calling the browser.mute(). If the audio stops playing before calling the wait_for_event(), the test would be time-out. I guess the bug 1302280 is also caused by same reason.

So this patch would do two thinngs,
1. dispatch "DOMAudioPlaybackStopped" when we mute tab
2. loop the audio in test file, to make sure the "DOMAudioPlaybackStopped" is
   dispatched when muting the audio, not the file ended.
[1] https://goo.gl/ymUv8P

MozReview-Commit-ID: 5RnyBRE73lQ
2017-02-23 14:15:45 +08:00
Sebastian Hengst
95a9b8273e Backed out changeset 38fa2ec33fa4 (bug 1192818) for frequently failing test_noAudioNotificationOnVolume0Element.html on Android 4.3 debug. r=backout 2017-02-21 19:30:26 +01:00
bechen
acc801bc69 Bug 1334112 - part2: When changing the readyState to HAVE_FUTURE_DATA and HAVE_ENOUGH_DATA, the texttracks must be loaded. r=jwwang
MozReview-Commit-ID: I7oA3TleAFo
2017-02-21 15:44:00 +08:00
Alastor Wu
3d07567345 Bug 1192818 - part1 : dispatch DOMAudioPlaybackStopped when mute the tab. r=baku
The root cause of the intermittent fail is because "DOMAudioPlaybackStopped" has no directly relationship with browser.mute()/unmute().

In [1], the "DOMAudioPlaybackStopped" is caused by audio stop playing, not by calling the browser.mute(). If the audio stops playing before calling the wait_for_event(), the test would be time-out. I guess the bug 1302280 is also caused by same reason.

So this patch would do two thinngs,
1. dispatch "DOMAudioPlaybackStopped" when we mute tab
2. loop the audio in test file, to make sure the "DOMAudioPlaybackStopped" is
   dispatched when muting the audio, not the file ended.
[1] https://goo.gl/ymUv8P

MozReview-Commit-ID: 703JHj9dICT
2017-02-21 18:41:09 +08:00
Tom Tromey
a4b717ab39 Bug 1060419 - make log_print use Printf.h, r=froydnj
MozReview-Commit-ID: BIZ1GQEZ1vs
2016-12-15 20:16:31 -07:00
karo
9ea1606552 Bug 1339961 - Check for 'debugger' privilege when accessing HTMLMediaElement.mozMediaSourceObject, mozDebugReaderData, mozRequestDebugInfo(). r=kentuckyfriedtakahe,smaug
MozReview-Commit-ID: 5Rhc0Ukn1W4
2017-02-10 08:54:12 +13:00
Chris Pearce
468b3f3ca8 Bug 1338032 - Report VP9 in MP4 not supported in HTMLMediaElement.canPlayType, but supported in MediaSource.isTypeSupported(). r=gerald
We don't have an MP4 demuxer that can handle VP9 in non-fragmented MP4.  Jay's
change to DecoderTraits in Bug 1339204 will make MediaSource.isTypeSupported()
report that it can play VP9 in MP4. But we don't want to report that we can
play VP9 in MP4 in HTMLMediaElement.canPlayType(), as usually canPlayType() is
used with the intention to check for whether fragmented MP4 can be played. So
we need to special case canPlayType() so that it reports that it can't play
VP9 in MP4.

The upcoming Rust demuxer will be able to support VP9 in MP4, so once we've
enabled that, we can confidently report in canPlayType that we support VP9 in
MP4.

MozReview-Commit-ID: G0q5ho5N2wr
2017-02-15 13:37:01 +13:00
Andrea Marchesini
c2c4520b46 Bug 1338538 - Remove AutoNoJSAPI in HTMLMediaElement, r=alwu 2017-02-13 15:40:28 +01:00
Kaku Kuo
db68392a1c Bug 1337301 part 2 - modify the MarkAsContentSource() API; r=gerald
MozReview-Commit-ID: 7hgZZUEvDEK
2017-02-07 18:20:47 +08:00
JW Wang
bde43eaa67 Bug 1333289. Part 2 - retrieve debugging data from MediaDecoder/MDSM. r=jya
MozReview-Commit-ID: F4AxZFBPVPB
2017-01-24 10:49:37 +08:00
JW Wang
b094aaadf4 Bug 1333289. Part 1 - add a function to the webidl to retrieve debugging data in an asynchronous way. r=bz
MozReview-Commit-ID: AXTpOYaq56A
2017-01-18 16:14:57 +08:00
JW Wang
9c13d6d3d9 Bug 1333576 - Ensure Shutdown() is called before releasing the decoder. r=gerald
MozReview-Commit-ID: CBEOgh5v90L
2017-01-25 10:49:29 +08:00
Bill McCloskey
fd6bcfe3ff Bug 1331804 - New naming scheme for runnables (r=ehsan)
MozReview-Commit-ID: FOfrUXwGYws
2017-01-24 16:34:37 -08:00
Wes Kocher
ac78cfc4f2 Backed out 8 changesets (bug 1331804, bug 1332100) for windows vm debug dt5 failures a=backout
Backed out changeset 8bf7f0e27c6c (bug 1331804)
Backed out changeset 600c0b9026c2 (bug 1331804)
Backed out changeset 3a5b5b9ecace (bug 1331804)
Backed out changeset c76432c9954e (bug 1331804)
Backed out changeset 46a9096745e7 (bug 1332100)
Backed out changeset 8b751230fa23 (bug 1331804)
Backed out changeset 2810212347fd (bug 1331804)
Backed out changeset be72b7763910 (bug 1331804)

MozReview-Commit-ID: Ywdsr4GZ4a
2017-01-24 15:12:21 -08:00
Bill McCloskey
724a87f692 Bug 1331804 - New naming scheme for runnables (r=ehsan)
MozReview-Commit-ID: FOfrUXwGYws
2017-01-24 10:04:55 -08:00
Carsten "Tomcat" Book
de43371883 merge mozilla-inbound to mozilla-central a=merge 2017-01-23 11:15:58 +01:00
Alastor Wu
c39197f821 Bug 1322505 - part2 : reset suspend type for blocked media after calling media.pause(). r=baku
If the blocked media is paused before resuming it, we should not resume it again
after the tab is visible. The way to achieve that is to unregister the agent so
AudioChannelService can't resume that media because we have disconnected their
relationship.

MozReview-Commit-ID: 6Dq4K9hVsU0
2017-01-23 10:52:06 +08:00
Alastor Wu
996cf78de5 Bug 1322505 - part1 : rename audio channel wrapper's function. r=baku
Rename function and modify the comment.

MozReview-Commit-ID: F5JTmPvH7GC
2017-01-23 10:52:04 +08:00
Bevis Tseng
d028a1f078 Bug 1314833 - Part 2.2: Use AbstractThread::CreateDirectTaskDrainer() to Drain Direct Tasks Dispatched to MediaStreamGraph. f=rjesup,r=padenot,jwwang
MozReview-Commit-ID: 1KgE3uKu4CG
2016-12-07 22:00:12 -10:00
Bevis Tseng
80ea683dc0 Bug 1314833 - Part 2.1: Factor out AbstractThread::MainThread() used in Media Playback. r=billm,jwwang
MozReview-Commit-ID: 9yJi3iDtVZG
2016-11-29 13:03:36 +08:00
Phil Ringnalda
b728b48d1d Backed out 4 changesets (bug 1322505) for frequent timeouts in browser_block_autoplay_media_pausedAfterPlay.js
Backed out changeset dad8acbe41e9 (bug 1322505)
Backed out changeset 861f01ee0e6e (bug 1322505)
Backed out changeset ddf90342d71d (bug 1322505)
Backed out changeset 049ab1a92da6 (bug 1322505)
2017-01-19 21:57:46 -08:00
Alastor Wu
96b3d80ac4 Bug 1322505 - part2 : reset suspend type for blocked media after calling media.pause(). r=baku
If the blocked media is paused before resuming it, we should not resume it again
after the tab is visible. The way to achieve that is to unregister the agent so
AudioChannelService can't resume that media because we have disconnected their
relationship.

MozReview-Commit-ID: 6Dq4K9hVsU0
2017-01-20 11:30:03 +08:00
Alastor Wu
077a2ef142 Bug 1322505 - part1 : rename audio channel wrapper's function. r=baku
Rename function and modify the comment.

MozReview-Commit-ID: F5JTmPvH7GC
2017-01-20 11:29:51 +08:00
JW Wang
75bcb52440 Bug 1332160 - use nsCString internally whenever possible. r=gerald
MozReview-Commit-ID: 1DUaJWfbL88
2017-01-18 16:51:31 +08:00
Gerald Squelart
34b7caba8a Bug 1331770 - Rename 'MediaContentType' to 'MediaContainerType' - r=jya
MozReview-Commit-ID: F0BWai8vPyo
2017-01-18 11:59:03 +11:00
Chris Pearce
9799825be6 Bug 1329543 - Remove IsPrimetimeKeySystem(string) from Gecko. r=gerald
MozReview-Commit-ID: LX1ywPZDHtj
2017-01-09 21:51:40 +08:00
Gerald Squelart
7150a6f27e Bug 1329561 - MediaContentType is always valid - r=jya
MediaContentType can only be created through MakeMediaContentType(), which
returns a Maybe<MediaContentType>.
If the return value is Nothing, parsing failed.
Otherwise the contained MediaContentType object is guaranteed to be valid;
E.g., GetMIMEType() will always return a non-empty string.

Note that this interface will change a lot in the following bugs&patches, so
please don't worry about the 'Get' in the never-failing GetMIMEType(), it will
be gone soon!

MozReview-Commit-ID: IjGKkQ6RVd4
2016-12-01 12:56:11 +11:00
Kilik Kuo
b8d985efc5 Bug 1316573 - Reset the information in EncryptionInfo to make MediaElement reusable from encrypted content to plain content. r=jya
MozReview-Commit-ID: 4OU0sb2OSzi
2017-01-12 11:33:55 +08:00
Andreas Pehrson
adf481a046 Bug 1329075 - Avoid an infinite event loop spin. r=jesup
Because we add tracks to the output streams async, it's possible to switch the
mSrcStream of a media element and *then* get a notification of an added track,
when this track originated from the old mSrcStream.
If the new mSrcStream is an output stream of the media element, this would
again add a new track async, which on the next event loop spin would show up
on mSrcStream, and the loop continues.

MozReview-Commit-ID: HmKgXLYmubh
2017-01-09 19:10:48 +01:00
Andreas Pehrson
1e53104c97 Bug 1329075 - Add asserts to StreamCaptureTrackSource for sanity. r=jesup
MozReview-Commit-ID: EeSKM4JHWGv
2017-01-09 17:02:13 +01:00
Andreas Pehrson
ff7d5fdf42 Bug 1329075 - Fix potential null deref issues in media element track sources. r=jesup
MozReview-Commit-ID: ExUh2magc2z
2017-01-09 17:00:43 +01:00
Andreas Pehrson
515070fdd2 Bug 1329075 - Fix assertion failure in debug build. r=jesup
With the attached test case I was failing an assert in a debug build because
NotifyMediaTrackEnabled exited early due to `mReadyState == HAVE_NOTHING` but
NotifyMediaTrackDisabled didn't. The latter would fail an assert.

MozReview-Commit-ID: 7Frpj62s0Bc
2017-01-09 16:36:00 +01:00