Commit Graph

215 Commits

Author SHA1 Message Date
Carsten "Tomcat" Book
e47f7c80c9 Backed out changeset d09b20eeb382 (bug 1242874) 2016-04-28 13:59:04 +02:00
Carsten "Tomcat" Book
55716aae6f Backed out changeset bd757c7d0bad (bug 1242874) 2016-04-28 13:59:01 +02:00
Alastor Wu
9f6316957f bug 1242874 - part5 : add test. r=baku, r=ehsan
MozReview-Commit-ID: 1X7xAbiKhC3
2016-04-28 00:23:52 +08:00
Alastor Wu
6540684075 Bug 1242874 - part3 : implement different suspended methods. r=baku, r=jwwang
MozReview-Commit-ID: Co4avRLWGRK
2016-04-28 00:23:42 +08:00
JW Wang
1d02e6fddb Bug 1265978. Part 1 - add mozDumpDebugInfo() to HTMLMediaElement.webidl. r=bz.
MozReview-Commit-ID: E0RZRyWnZrF
2016-04-11 12:02:43 +08:00
Gerald Squelart
ed80913b15 Bug 1248507 - p3. Use DecoderDoctorDiagnostics - r=jya,bz
DecoderDoctorDiagnostics are now used at places where Firefox Chrome and/or
websites checks whether some media formats may be played:
- audio|video.canPlayType()
- audio|video resource loader
- MediaSource.IsTypeSupported()
- MediaSource.AddSourceBuffer()

MozReview-Commit-ID: B1KdjXODq9j
2016-04-19 17:36:19 +10:00
William Chen
3f3db96963 Bug 1259590 - Remove B2G ACL code. r=khuey 2016-04-07 09:50:01 -07:00
Andreas Pehrson
89009d39d5 Bug 1208371 - Forward declare DOMMediaStream in HTMLMediaElement.h. r=jesup
MozReview-Commit-ID: KUPovpKfgek
2016-01-23 23:20:28 +08:00
Andreas Pehrson
23adbf5caf 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
2016-02-04 09:27:09 +08:00
Andreas Pehrson
1db5f12351 Bug 1208371 - Remove ref counting from DOMMediaStream::TrackListener. r=roc
This makes it consistent with PrincipalChangeObserver.

MozReview-Commit-ID: 91PtqFZRcW6
2016-01-05 10:16:28 +08:00
Andreas Pehrson
e43a311400 Bug 1208371 - Change HTMLMediaElement video sinks to check principal for video only tracks. r=mt
MozReview-Commit-ID: KGbyJDgpBOn
2016-01-26 15:36:52 +08:00
Andreas Pehrson
f2dac31c58 Bug 1208371 - Move HTMLMediaElement::CaptureStream to forward CORSMode changes through MediaStreamTrackSource. r=mt
MozReview-Commit-ID: 6bMpKO6ccjd
2016-01-05 10:16:27 +08:00
Andreas Pehrson
8f99be7608 Bug 1208371 - Make HTMLMediaElement::CaptureStream pass its principal to MediaStreamTrack. r=mt
MozReview-Commit-ID: 7ERLRSM8fz6
2016-01-14 18:34:39 +08:00
Andreas Pehrson
84e91fd789 Bug 1208371 - Add an interface DecoderPrincipalChangeObserver to HTMLMediaElement. r=roc
MozReview-Commit-ID: DwDHDE7SLxY
2016-01-14 11:38:08 +08:00
Jean-Yves Avenard
331f92a4c8 Bug 1246521: P1. Add MediaDecoderOwner::HasError method. r=gerald 2016-02-08 16:31:42 +11:00
Nicholas Nethercote
cab2654972 Bug 1181444 (part 1.5) - Remove dead PLDHashOperator declarations. r=froydnj. 2016-01-28 14:08:19 -08:00
Alastor Wu
200f23ab4c Bug 1238906 - part2 : notify audible state from MDSM to ME. r=jwwang 2016-01-21 10:27:38 +08:00
Jean-Yves Avenard
1af07b30da 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
c4450c2e3b 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
3a65043820 Bug 1238906 - part2 : notify audible state from MDSM to ME. r=jwwang 2016-01-18 10:50:47 +08:00
Sotaro Ikeda
67ee026f82 Bug 1205713 - Merge ImageHostOverlay/ImageClientOverlay to ImageHost/ImageClient r=nical 2015-12-29 01:07:33 -08:00
Alastor Wu
0e3ab60945 Bug 1224475 - Start agent after seeking. r=baku 2015-11-23 14:52:28 +08:00
Andrea Marchesini
bb0c4688f3 Bug 1213154 - tab-sound-icon should be supported by bfcache, r=roc 2015-11-23 11:35:14 +00:00
Jean-Yves Avenard
c9c13e4f45 Bug 1188887: P1. Allow seeking when readyState is HAVE_NOTHING. r=jwwang 2015-10-28 10:45:58 +11:00
Jean-Yves Avenard
1256b2036f 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
5c965d3bd4 Bug 1216308 - Hoist IsCallerChrome check in HTMLMediaElement::Play to API entry point. r=bz 2015-10-19 17:54:46 -07:00
Nathan Froyd
4e6d8f6705 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
2015-10-18 01:24:48 -04:00
Andrea Marchesini
0ed5d72754 Bug 1214659 - HTMLMediaElement::UpdateAudioChannelPlayingState() should be easy to read, r=roc 2015-10-15 00:59:00 +02:00
JW Wang
582b648a0d Bug 1214065 - Remove unused arguments from MediaDecoder::Load() and its friends. r=kinetik. 2015-10-14 11:46:27 +08:00
Andreas Pehrson
be6c681846 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.
2015-09-30 09:32:06 +08:00
Andreas Pehrson
9261227d49 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.
2015-09-30 09:31:54 +08:00
Wes Kocher
954ce67cb5 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
0a9f4caf61 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
5d4a30038f 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.
2015-09-25 23:23:31 +08:00
Andreas Pehrson
4132b4532f 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.
2015-09-25 23:23:18 +08:00
Gerald Squelart
f90ce6e64f Bug 1198435 - Call RemoveMediaElementFromURITable before modifying mLoadingSrc, so that a future LookupMediaElementURITable won't access this element anymore. r=rillian 2015-09-10 09:01:44 +02:00
Robert O'Callahan
6e3741b957 Bug 1200099. Stop using a distinct mPlaybackStream to play a media stream through an HTMLMediaElement. r=jwwang 2015-08-31 23:33:53 +12:00
Ehsan Akhgari
5c52312be6 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
c62449cc00 Backout bug 1200208 for build bustage on a CLOSED TREE 2015-08-31 16:49:27 -04:00
Ehsan Akhgari
8ebd48792f 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
8d905ff1e7 Backed out changeset 6b264cf230a0 (bug 1200208) for Windows bustage.
CLOSED TREE
2015-08-31 14:11:58 -04:00
Ehsan Akhgari
8711fed1f5 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
51ee816249 Bug 1175523 - Add HTMLMediaElement.srcObject alias to .mozSrcObject. r=roc, r=smaug 2015-07-14 00:04:14 -04:00
Randall Barker
3f3b4cacfb 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
4a401910e1 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
548360d6f6 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
26883126ea 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
bc08472553 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
e505cb1e39 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
0d7ca19bc1 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