Граф коммитов

109 Коммитов

Автор SHA1 Сообщение Дата
William Chen 303bd1fd42 Bug 1259590 - Remove B2G ACL code. r=khuey 2016-04-07 09:50:01 -07:00
Andreas Pehrson 46569d09a9 Bug 1208371 - Forward declare DOMMediaStream in HTMLMediaElement.h. r=jesup
MozReview-Commit-ID: KUPovpKfgek

--HG--
extra : rebase_source : 89b1b623399b7ebc9711f5a012fd9e69b60b32db
2016-01-23 23:20:28 +08:00
Andreas Pehrson e899edc733 Bug 1208371 - Ensure a media element's ImageContainer is protected when playing a stream. r=mt,jesup
HTMLMediaElement needs special protection when playing a stream since its
ImageContainer can outlive the video track of a stream.

Consider for instance when a (cross-origin) video track is removed from a
DOMMediaStream by a user and the remaining video track (non-CORS) does not yet
contain any actual video frames. The HTMLMediaElement will display a frame from
the removed track but the DOMMediaStream's principal has been updated to not
include the principal from the removed track.

With this patch we handle this by letting VideoFrameContainer notify
HTMLMediaElement when it has flushed out all video frames belonging to a
certain PrincipalHandle. I.e., when a new PrincipalHandle has been applied to the
underlying ImageContainer.

MozReview-Commit-ID: LvIZPl6Rdgj

--HG--
extra : rebase_source : cfbad5e5e7f43af4da4bfc213494b7b8e22cde17
2016-02-04 09:27:09 +08:00
Andreas Pehrson 705ec66ce8 Bug 1208371 - Remove ref counting from DOMMediaStream::TrackListener. r=roc
This makes it consistent with PrincipalChangeObserver.

MozReview-Commit-ID: 91PtqFZRcW6

--HG--
extra : rebase_source : e39abb668be7fbd0dae0a701ec17b048c8761879
2016-01-05 10:16:28 +08:00
Andreas Pehrson c742b9dadf Bug 1208371 - Change HTMLMediaElement video sinks to check principal for video only tracks. r=mt
MozReview-Commit-ID: KGbyJDgpBOn

--HG--
extra : rebase_source : 526556a2174417ec68cb0a84acb1f3fe704ebaf0
2016-01-26 15:36:52 +08:00
Andreas Pehrson 00a36d0421 Bug 1208371 - Move HTMLMediaElement::CaptureStream to forward CORSMode changes through MediaStreamTrackSource. r=mt
MozReview-Commit-ID: 6bMpKO6ccjd

--HG--
extra : rebase_source : 86e9eb25c3401f566a07549d068336c0a6bdcd73
2016-01-05 10:16:27 +08:00
Andreas Pehrson 70707f7c85 Bug 1208371 - Make HTMLMediaElement::CaptureStream pass its principal to MediaStreamTrack. r=mt
MozReview-Commit-ID: 7ERLRSM8fz6

--HG--
extra : rebase_source : 99504bb19ac35eea6889a507589710c3575e8b0f
2016-01-14 18:34:39 +08:00
Andreas Pehrson ba233fd622 Bug 1208371 - Add an interface DecoderPrincipalChangeObserver to HTMLMediaElement. r=roc
MozReview-Commit-ID: DwDHDE7SLxY

--HG--
extra : rebase_source : 73f74260d8b62bb4838ab5a5c4b2153a251c5d95
2016-01-14 11:38:08 +08:00
Jean-Yves Avenard 722e4fee21 Bug 1246521: P1. Add MediaDecoderOwner::HasError method. r=gerald 2016-02-08 16:31:42 +11:00
Nicholas Nethercote ac9a8bf77c Bug 1181444 (part 1.5) - Remove dead PLDHashOperator declarations. r=froydnj.
--HG--
extra : rebase_source : 82888ad8037a6024508b042030469fac5a8f5fa4
2016-01-28 14:08:19 -08:00
Alastor Wu abde274a94 Bug 1238906 - part2 : notify audible state from MDSM to ME. r=jwwang
--HG--
extra : rebase_source : 74629c314b3d828a5d9b514bf6cca87f7c1f57de
2016-01-21 10:27:38 +08:00
Jean-Yves Avenard f80d48caac Bug 1236703: P3. Add moz specific method to retrieve debug data to media object IDL. r=bz 2016-01-20 09:50:26 +11:00
Sebastian Hengst 9249e58bdf Backed out 2 changesets (bug 1238906) for bustage in M(2) on OSX and Windows. r=bustage
Backed out changeset e729b30ba7b4 (bug 1238906)
Backed out changeset 1857bca40ac4 (bug 1238906)
2016-01-18 13:11:43 +01:00
Alastor Wu bbcb84cc7b Bug 1238906 - part2 : notify audible state from MDSM to ME. r=jwwang
--HG--
extra : transplant_source : %A6I%CA%AC%95%AD%0C%7D%40K%8C_%8B%3D%15%BC%F7%FB%86%27
2016-01-18 10:50:47 +08:00
Sotaro Ikeda 6247e12af2 Bug 1205713 - Merge ImageHostOverlay/ImageClientOverlay to ImageHost/ImageClient r=nical 2015-12-29 01:07:33 -08:00
Alastor Wu 026c271021 Bug 1224475 - Start agent after seeking. r=baku
--HG--
extra : rebase_source : 70fe070940ffa16cb4638df0f1ec5d62830c9a32
2015-11-23 14:52:28 +08:00
Andrea Marchesini f44bf80ff9 Bug 1213154 - tab-sound-icon should be supported by bfcache, r=roc 2015-11-23 11:35:14 +00:00
Jean-Yves Avenard fb6bbafe09 Bug 1188887: P1. Allow seeking when readyState is HAVE_NOTHING. r=jwwang 2015-10-28 10:45:58 +11:00
Jean-Yves Avenard 38486b8704 Bug 1217304: P1. Only fire loadeddata once the first frame has been decoded. r=jwwang
We can't determine otherwise if data is actually playable at the current position
2015-10-23 23:34:05 +11:00
Bobby Holley 3b14342481 Bug 1216308 - Hoist IsCallerChrome check in HTMLMediaElement::Play to API entry point. r=bz 2015-10-19 17:54:46 -07:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Andrea Marchesini d92668f3a0 Bug 1214659 - HTMLMediaElement::UpdateAudioChannelPlayingState() should be easy to read, r=roc 2015-10-15 00:59:00 +02:00
JW Wang 1cc6677a90 Bug 1214065 - Remove unused arguments from MediaDecoder::Load() and its friends. r=kinetik. 2015-10-14 11:46:27 +08:00
Andreas Pehrson eb480b5acd Bug 1103188 - Break out MediaTrackListListener to an interface. r=roc
Other modules than MediaTrackLists may want to receive updates on a
DOMMediaStream's track set. This moves the MediaTrackListListener out of
the MediaTrackList class into DOMMediaStream as a general interface.

The logic for adding MediaTracks to the MediaTrackList when
MediaStreamTracks are added or removed from a DOMMediaStream is moved to
HTMLMediaElement as this fits the model better - HTMLMediaElement is the
owner of the MediaTrackLists.

--HG--
extra : commitid : 3I8mAeBB3oL
extra : rebase_source : 66b8ffcfb5343811c181e4169f295b08494f2ee0
2015-09-30 09:32:06 +08:00
Andreas Pehrson 937747498a Bug 1170958 - Refactor DOMMediaStream to contain a 3-stage track chain. r=roc
This lets us separate tracks by ownership like so:
* Input    - Owned by the producer of the DOMMediaStream (gUM etc.)
* Owned    - Contains Input tracks (per above) or tracks cloned tracks
             if this DOMMediaStream is a clone.
* Playback - Contains Owned tracks plus tracks addTrack()ed to this
             DOMMediaStream minus tracks removeTrack()ed from this
             DOMMediaStream.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : fba22e96c6c65a74e012509f3da67a4d7df7a244
2015-09-30 09:31:54 +08:00
Wes Kocher 03a1803261 Backed out 9 changesets (bug 1170958) for frequent test_getUserMedia_addTrackRemoveTrack.html failures
Backed out changeset 277c1f8098d1 (bug 1170958)
Backed out changeset aa86bb9eea95 (bug 1170958)
Backed out changeset 8af8b85a4b26 (bug 1170958)
Backed out changeset ec1bf225e9cb (bug 1170958)
Backed out changeset 4a04ddca2b6b (bug 1170958)
Backed out changeset e85c9977a311 (bug 1170958)
Backed out changeset 16b40ff04e8f (bug 1170958)
Backed out changeset ad206925c84a (bug 1170958)
Backed out changeset 2106eccec79b (bug 1170958)
2015-09-25 13:08:55 -07:00
Wes Kocher b4a25c9f58 Backed out 7 changesets (bug 1103188) for frequent test_getUserMedia_addTrackRemoveTrack.html failures
Backed out changeset f0f33a8ef14c (bug 1103188)
Backed out changeset dbe0ebdebad5 (bug 1103188)
Backed out changeset bb656022a1a7 (bug 1103188)
Backed out changeset cc6b5f5ba444 (bug 1103188)
Backed out changeset ca97d52bf144 (bug 1103188)
Backed out changeset de8cc967f8eb (bug 1103188)
Backed out changeset 6da8f4905060 (bug 1103188)
2015-09-25 13:08:44 -07:00
Andreas Pehrson 9d10fc1441 Bug 1103188 - Break out MediaTrackListListener to an interface. r=roc
Other modules than MediaTrackLists may want to receive updates on a
DOMMediaStream's track set. This moves the MediaTrackListListener out of
the MediaTrackList class into DOMMediaStream as a general interface.

The logic for adding MediaTracks to the MediaTrackList when
MediaStreamTracks are added or removed from a DOMMediaStream is moved to
HTMLMediaElement as this fits the model better - HTMLMediaElement is the
owner of the MediaTrackLists.

--HG--
extra : commitid : FxucwRqUZUo
2015-09-25 23:23:31 +08:00
Andreas Pehrson eacfc2cf0e Bug 1170958 - Refactor DOMMediaStream to contain a 3-stage track chain. r=roc
This lets us separate tracks by ownership like so:
* Input    - Owned by the producer of the DOMMediaStream (gUM etc.)
* Owned    - Contains Input tracks (per above) or tracks cloned tracks
             if this DOMMediaStream is a clone.
* Playback - Contains Owned tracks plus tracks addTrack()ed to this
             DOMMediaStream minus tracks removeTrack()ed from this
             DOMMediaStream.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Gerald Squelart f31596e5a6 Bug 1198435 - Call RemoveMediaElementFromURITable before modifying mLoadingSrc, so that a future LookupMediaElementURITable won't access this element anymore. r=rillian
--HG--
extra : rebase_source : 9702e206ed2bfaa0d32449e4f8798348ed307b63
2015-09-10 09:01:44 +02:00
Robert O'Callahan 6abd4c751d Bug 1200099. Stop using a distinct mPlaybackStream to play a media stream through an HTMLMediaElement. r=jwwang
--HG--
extra : commitid : 3xsVxxZxINX
extra : rebase_source : 7c51fb071f9f303919ece13ff44d7a9a4cc438a9
2015-08-31 23:33:53 +12:00
Ehsan Akhgari 3bdf742e41 Bug 1200208 - Send the audio-playback notification when the page calls HTMLMediaElement::Play() before the metadata has been fully loaded; r=baku 2015-08-31 20:44:23 -04:00
Ehsan Akhgari b2e0a0c784 Backout bug 1200208 for build bustage on a CLOSED TREE 2015-08-31 16:49:27 -04:00
Ehsan Akhgari 8809ddec9b Bug 1200208 - Send the audio-playback notification when the page calls HTMLMediaElement::Play() before the metadata has been fully loaded; r=baku 2015-08-31 16:24:51 -04:00
Ryan VanderMeulen 851115d952 Backed out changeset 6b264cf230a0 (bug 1200208) for Windows bustage.
CLOSED TREE
2015-08-31 14:11:58 -04:00
Ehsan Akhgari 1fd49e2d20 Bug 1200208 - Send the audio-playback notification when the page calls HTMLMediaElement::Play() before the metadata has been fully loaded; r=baku 2015-08-31 13:44:55 -04:00
Jan-Ivar Bruaroey f01e4a40fe Bug 1175523 - Add HTMLMediaElement.srcObject alias to .mozSrcObject. r=roc, r=smaug
--HG--
extra : rebase_source : 3fa835114a9157f872bd52e585f5c7c9c84e7e2f
2015-07-14 00:04:14 -04:00
Randall Barker 40f480f76d Bug 1178858 - Video would not playback after seek seekbar first if media.autoplay.enabled = false. r=cpearce
When autoplay is disabled, the media element was not detecting user
initiated seeking so when a script attempted to play after seeking,
playing would be blocked.
2015-07-24 15:56:00 +02:00
Paul Adenot 2ab300ac7b Bug 1156472 - Part 6 - Connect HTMLMediaElement and AudioContext to the capture stream when capturing is needed. r=roc 2015-07-24 14:28:17 +02:00
Wes Kocher 83b4188234 Backed out 14 changesets (bug 1156472) for test_getUserMedia_audioCapture.html failures on b2g emulator
Backed out changeset deec8eb18346 (bug 1156472)
Backed out changeset 0f5bec4c05ba (bug 1156472)
Backed out changeset 2dd83ac00bf9 (bug 1156472)
Backed out changeset abd4e47887f7 (bug 1156472)
Backed out changeset 4824d9874663 (bug 1156472)
Backed out changeset 12805598e6fa (bug 1156472)
Backed out changeset e2f0062a1f67 (bug 1156472)
Backed out changeset 99ef8e436a7f (bug 1156472)
Backed out changeset 65bbfc1546af (bug 1156472)
Backed out changeset 2ab4f16eaf0a (bug 1156472)
Backed out changeset 7f565685e20a (bug 1156472)
Backed out changeset 28c03c98cb2b (bug 1156472)
Backed out changeset d477cfba6e1d (bug 1156472)
Backed out changeset 9819fa56caa1 (bug 1156472)
2015-07-24 13:15:57 -07:00
Paul Adenot b195db60a7 Bug 1156472 - Part 6 - Connect HTMLMediaElement and AudioContext to the capture stream when capturing is needed. r=roc 2015-07-24 14:28:17 +02:00
Carsten "Tomcat" Book 2b73aa4f63 Backed out 14 changesets (bug 1156472) for bustage on a CLOSED TREE
Backed out changeset 2ddbf85a42c0 (bug 1156472)
Backed out changeset 306d02e17081 (bug 1156472)
Backed out changeset 03598139f39a (bug 1156472)
Backed out changeset 4b1e6069b598 (bug 1156472)
Backed out changeset 6c588a5eaaec (bug 1156472)
Backed out changeset 8c98d7beaea7 (bug 1156472)
Backed out changeset fbf59fbb5875 (bug 1156472)
Backed out changeset 66479dd9eed9 (bug 1156472)
Backed out changeset c8502deeed33 (bug 1156472)
Backed out changeset 1a60ff1149a1 (bug 1156472)
Backed out changeset af1638279785 (bug 1156472)
Backed out changeset 8210276a98ca (bug 1156472)
Backed out changeset 13730e7c5997 (bug 1156472)
Backed out changeset 05acb71cf981 (bug 1156472)
2015-07-24 17:08:37 +02:00
Paul Adenot c1a9ba0ab9 Bug 1156472 - Part 6 - Connect HTMLMediaElement and AudioContext to the capture stream when capturing is needed. r=roc 2015-07-24 14:28:17 +02:00
Bobby Holley 04eaf4c167 Bug 1184634 - Move various includes into the mozilla namespace. r=gerald
I did my a quick best-effort pass to fix up the most egregious ordering
problems. I left some big pre-existing messes alone.
2015-07-16 22:23:18 -07:00
Andrea Marchesini 4d18f7a4df Bug 1183700 - Don't prevent playback of media elements in a muted tab on desktop, r=ehsan
--HG--
rename : toolkit/content/tests/browser/browser_mediaPlayback.js => toolkit/content/tests/browser/browser_mediaPlayback_mute.js
rename : toolkit/content/tests/browser/browser_mute.js => toolkit/content/tests/browser/browser_mute2.js
rename : toolkit/content/tests/browser/file_mediaPlayback.html => toolkit/content/tests/browser/file_mediaPlayback2.html
rename : toolkit/content/tests/browser/file_mediaPlaybackFrame.html => toolkit/content/tests/browser/file_mediaPlaybackFrame2.html
2015-07-16 19:34:30 +01:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Ehsan Akhgari 59e89cba9d Bug 1180535 - Dispatch the media-playback notification when navigating away from a page that has a media element playing; r=baku
When navigating away from a document, we mute the playing media elements
through the NotifyOwnerDocumentActivityChanged() notification.
Sometimes, that function may notify the audio channel agent through its
call to AddRemoveSelfReference() which may call
UpdateAudioChannelPlayingState() and notify the agent, but when we're
navigating away from the page, playingThroughTheAudioChannel will always
be equal to mPlayingThroughTheAudioChannel, which causes us to not
notify the audio channel agent.

This patch fixes this by separating NotifyOwnerDocumentActivityChanged()
from its internal consumers, and forcefully notifying the audio channel
agent when we navigate away.
2015-07-11 13:16:39 -04:00
Andrea Marchesini db14826639 Bug 1113086 - AudioChannel policy in Browser API - patch 1 - BrowserElementAudioChannel, r=ehsan
--HG--
rename : dom/audiochannel/AudioChannelAgent.h => dom/browser-element/BrowserElementAudioChannel.h
rename : dom/audiochannel/tests/file_telephonyPolicy.html => dom/browser-element/mochitest/test_browserElement_inproc_AudioChannel.html
rename : dom/audiochannel/tests/file_telephonyPolicy.html => dom/browser-element/mochitest/test_browserElement_oop_AudioChannel.html
rename : dom/audiochannel/AudioChannelCommon.h => dom/webidl/BrowserElementAudioChannel.webidl
2015-07-10 17:38:44 +01:00
Carsten "Tomcat" Book c07e36b612 Backed out changeset bcfbdb934c37 (bug 1113086) for breaking cpp tests with timeouts in TestAudioChannelService.exe
--HG--
rename : dom/webidl/BrowserElementAudioChannel.webidl => dom/audiochannel/AudioChannelCommon.h
rename : dom/browser-element/mochitest/test_browserElement_oop_AudioChannel.html => dom/audiochannel/tests/file_telephonyPolicy.html
2015-07-11 14:14:58 +02:00
Carsten "Tomcat" Book b8617ced73 Backed out changeset e11a8496bf63 (bug 1180535) 2015-07-11 14:13:32 +02:00