Commit Graph

52917 Commits

Author SHA1 Message Date
Wes Kocher
8f0a108b9a Backed out 6 changesets (bug 1288329) for wpt failures a=backout
Backed out changeset f33cb032cc9f (bug 1288329)
Backed out changeset 49ea83d00a77 (bug 1288329)
Backed out changeset 1406c14098f1 (bug 1288329)
Backed out changeset 936b73eb37c6 (bug 1288329)
Backed out changeset a1c4d9b9de32 (bug 1288329)
Backed out changeset a76b6e559777 (bug 1288329)

--HG--
extra : amend_source : 4e054fc4af62693934a4ae450a9595443b6a961d
2016-07-29 12:36:20 -07:00
Benoit Girard
fbfff14ea5 Bug 1289813 - split out safe mode from FEATURE_FAILURE_WEBGL_DISABLED. r=jrmuizel
MozReview-Commit-ID: Jmp911jYjix

--HG--
extra : rebase_source : 825eaae61c3a685ff2853eba3820a02087779dd5
2016-07-29 14:28:51 -04:00
Jean-Yves Avenard
0e81b8c032 Bug 1288329: [ogg] P5. Adjust mochitests. r=gerald
There are various differences between the new ogg player and the old OggReader that leads to inconsistencies on how durations are reported.

1- The old OggReader only use the end time as duration of the video, ignoring the start time of the first sample. This leads to incorrect duration calculation.
2- The OggReader do not ignore undecodable frames located at the beginning of the video, and those are used by the MDSM to calculate the start time. This leads to durations sometimes being shorter than they ought to.

MozReview-Commit-ID: 6yi1P4N6tPE

--HG--
extra : rebase_source : 31c0346c677f07e39c865d4f9f25dc0ebb70b18b
2016-07-28 22:52:08 +10:00
Jean-Yves Avenard
cf4fb9d4df Bug 1288329: [ogg] P4. Fix coding style. r=gerald,jwwang
MozReview-Commit-ID: 1bAE92BECRD

--HG--
extra : rebase_source : 586e6b91e374bdc49fe4b2e6b72cf2c90a563cf2
2016-07-29 10:47:03 +10:00
Jean-Yves Avenard
e884bc2dfb Bug 1288329: [ogg] P3. Never take into considerations frames prior the first keyframe. r=gerald
MozReview-Commit-ID: 1aJSbJb9kQW

--HG--
extra : rebase_source : d80d8ff96cf23a15a48f9a08eb7e034ffc096d98
2016-07-29 10:38:36 +10:00
Jean-Yves Avenard
eba49ebd1c Bug 1288329: [ogg/vorbis] P2. Pass extra information to the decoder so that it can perform proper trimmer. r=gerald,jwwang
The OggReader always passed a complete ogg_packet to the vorbis decoder, ensuring that the right number of frames was be returned. In the conversion to the new architecture, this information got lost making the vorbis decoder always return more frames than normal on the last packet.

MozReview-Commit-ID: HYHxqXfYntJ

--HG--
extra : rebase_source : 3aa215576fe77357dd9a484626c0e5759aeedb3c
2016-07-29 02:19:21 +10:00
Jean-Yves Avenard
eabdba0469 Bug 1288329: [ogg] P1. Add support for metadata chaining in OggDemuxer. r=gerald,jwwang
This is not the cleanest approach, but ensures identical behavior with the OggReader when it comes to firing loadedmetadata event and handling the change of seekability.

A more universal solution could be considered involving the MediaFormatReader and changing the MediaDataDemuxer API, of interest would be adding support for a new event fired whenever we have a change of content or metadata (useful with MSE or recorded webm of a WebRTC session

MozReview-Commit-ID: BojB2r1CtA3

--HG--
extra : rebase_source : 04704c13bfbdc83fe7c03505876deb8cda2043e6
2016-07-28 15:32:11 +10:00
Jean-Yves Avenard
4d168d7572 Bug 1289438: [ogg] P5. Don't seek back to first buffered position during reset. r=gerald
A call to reset is always followed by a call to Seek; seeking is an heavy operation with ogg so let's minimize the number of times we are actually seeking.

MozReview-Commit-ID: Jz7dL9IFM14

--HG--
extra : rebase_source : b4c861b5963647292e3c8d8c8b8ac7ce097112fa
2016-07-27 17:57:22 +10:00
Jean-Yves Avenard
9ac2a30001 Bug 1289438: [ogg] P4. Use SaferMultDiv where appropriate. r=gerald
MozReview-Commit-ID: 3AWTGciNj4D

--HG--
extra : rebase_source : 0ac681e9733d581a0a44af5376c74826c4302f09
2016-07-27 17:17:21 +10:00
Jean-Yves Avenard
cee6294430 Bug 1289438: [ogg] P3 Fix code style. r=gerald
MozReview-Commit-ID: K6qpPVgsIi7

--HG--
extra : rebase_source : 879a2f3c3cddb54ab13a1dd2f070199e58e7cf5b
2016-07-27 17:01:27 +10:00
Jean-Yves Avenard
e25ebdddd2 Bug 1289438: [ogg] P2. Re-enable earlier test now the seeking behaves as expected. r=cpearce,gerald
Note that the closest keyframes are for video 0.666667 and audio 0.645805, however the current OggReader still incorrectly seeks audio to an
earlier time as it seek to the index page boundary.

MozReview-Commit-ID: 5g7FHFmRQXD

--HG--
extra : rebase_source : cb105bafdf6aaa0f441da5130571b0b0b8e3a3f0
2016-07-27 16:21:47 +10:00
Jean-Yves Avenard
90527cf816 Bug 1289438: [ogg] P1. Always seek to the closest keyframe. r=brion+1012
MozReview-Commit-ID: 1IGFgU1GFz5

--HG--
extra : rebase_source : 2f84397152bc5c142aef104e59862a5a0aeb264f
2016-07-27 16:19:03 +10:00
Jean-Yves Avenard
525aebc682 Bug 1288331: [ogg] P2. Fix fast seek mochitest. r=cpearce
Fast seek in the old OggReader is broken: the audio track isn't seeked to the video track in order to preserve A/V sync and we end up always performing an accurate seek which explain why this test succeeded before.
The page index is only made of two entries, and so the first video frame returned after a seek, if within the first index will always have a time of 0.

MozReview-Commit-ID: 2EYzLMWRZAi

--HG--
extra : rebase_source : a7c73a757a841550cc7c5d2a0a7229a037a2bb9f
2016-07-27 00:12:28 +10:00
Jean-Yves Avenard
d8e3cd1eab Bug 1288331: [ogg] P1. Seek audio track and video track independently from one another. r=brion+1012
MozReview-Commit-ID: 3ZOuzLNbPiq

Bug 1288331: [ogg] P1 amend

MozReview-Commit-ID: BoeDuGziBX5

--HG--
extra : rebase_source : 54220233aa4e0d54154edbb32c879935866f4745
2016-07-26 23:03:36 +10:00
Jean-Yves Avenard
d9896af911 Bug 1289059: P1. Add MediaDemuxer generic logging. r=cpearce
MozReview-Commit-ID: 453QrMX1nWp

--HG--
extra : rebase_source : 679586d22a380e57c19c1e78b29e71282c08ecbf
2016-07-24 22:30:07 +10:00
Jean-Yves Avenard
2de6846418 Bug 1168674: [ogg] P8. Fix metadata retrieval. r=brion+1012
MozReview-Commit-ID: BMUNy4zyWMz

--HG--
extra : rebase_source : 6bd1242b5195d1d2093df670797fcabbb6f8cc98
2016-07-27 12:22:31 +10:00
Jean-Yves Avenard
b0edcccd34 Bug 1168674: [ogg] P7. Properly mark overridden methods. r=gerald
MozReview-Commit-ID: 5aICN1aQwgC

--HG--
extra : rebase_source : a5ab7663bb831153d8c984e0f55ff338f574bb23
2016-07-26 16:39:44 +10:00
Jean-Yves Avenard
17bf74890d Bug 1168674: [vorbis] P6. Do not tweak first decoded sample time. r=cpearce
r?cpearce

A hack was in place to ensure that the first returned sample would have
a time of 0 so that the media start time would be 0. This was incorrect
for two primary reasons:
- The media start time is adjusted according to the first sample anyway.
- When seeking to 0, the first sample would have a time different to the
first sample decoded (when we want them to have the same time).

MozReview-Commit-ID: IyuT9O2F4EZ

--HG--
extra : rebase_source : 74b29eb5970c67aed6ca568d1882e3b6c54a6637
2016-07-25 19:14:39 +10:00
Jean-Yves Avenard
1125dc098d Bug 1168674: [ogg] P5. Use common demuxing methods. r=brion+1012
This ensure that the first sample demuxed will be identical to the first
one demuxed following a seek to the beginning.
Also, only demux the next packet when none is queued rather than all the time.

MozReview-Commit-ID: 5wtFVLiCAW

--HG--
extra : rebase_source : ce73d35f68fb800608a1182843de1d4abd469081
2016-07-25 19:06:20 +10:00
Jean-Yves Avenard
928589a0d1 Bug 1168674: [ogg] P4. Skip over header packets when seeking close to the start. r=brion+1012
MozReview-Commit-ID: F0Ezo0yfOyo

--HG--
extra : rebase_source : aac013a5b6065efed696e9929c63789f72ee1f5d
2016-07-21 17:56:01 +10:00
Brion Vibber
7f2fa5c20a Bug 1168674: [ogg] P3. Add theora MediaDataDecoder. r=me
MozReview-Commit-ID: 7ZJD21JMXBY

--HG--
extra : rebase_source : 5108040c8de69e52bdd96842315e5a5e70c65ff7
2016-07-21 11:36:47 +10:00
Brion Vibber
847a1df7ea Bug 1168674: [ogg] P2. Hook up new OggDemuxer. r=me
Not on by default yet. use media.format-reader.ogg preference

MozReview-Commit-ID: 7pH67XERTbW

--HG--
extra : rebase_source : 9868f07f622782b4859b95f237f7ee516345c2b2
2016-07-21 11:34:42 +10:00
Brion Vibber
173a4b9f77 Bug 1168674: [ogg] P1. Add OggDemuxer object. r=me
MozReview-Commit-ID: ChEceup4MYh

--HG--
extra : rebase_source : 0dc2c481c3bb3554484aac4227e92261c2341c66
2016-07-21 11:28:47 +10:00
Alexandre Lissy
72456298c6 Bug 1290460 - Update AllocationHandle for MediaEngineGonk r=padenot
MozReview-Commit-ID: KVVPjWfDSlu

--HG--
extra : rebase_source : ccc67d374a14bc3b84f0e1e9acad829e684afe72
2016-07-29 15:56:02 +02:00
Carsten "Tomcat" Book
8c47612fee merge mozilla-inbound to mozilla-central a=merge 2016-07-29 11:56:43 +02:00
Bobby Holley
7c2695a9d0 Bug 1290214 - Remove NS_ERROR for media queries and @font-face. r=emilio 2016-07-28 17:25:46 -07:00
Bobby Holley
81084cfef0 Bug 1290214 - Remove NS_ERROR in the case where we skip checking the stylesheet service. r=emilio 2016-07-28 17:25:44 -07:00
Bobby Holley
b92154b20a Bug 1290214 - Stop asserting when we don't have enough information to use the servo backend. r=emilio
In practice I'm pretty sure these cases wouldn't have a content docshell anyway.
We probably don't need more robust machinery here, since eventually we'll just
make stylo pref-based for every new prescontext regardless of type.
2016-07-28 17:25:41 -07:00
Jeff Gilbert
0ee365e60a Bug 1289653 - Mark tests.
MozReview-Commit-ID: IWB8gBthP2v
2016-07-28 14:37:41 -07:00
Jeff Gilbert
d6af553fb8 Bug 1289653 - Disallow null pixels in texSubImage. - r=mtseng
MozReview-Commit-ID: HgbJEhykEda
2016-07-28 14:37:41 -07:00
Jeff Gilbert
2d3a353980 Bug 1289652 - Disabled arrays don't change getVertexAttrib for SIZE,TYPE. - r=mtseng
MozReview-Commit-ID: 71RJlIFayNH
2016-07-28 14:33:38 -07:00
JW Wang
8d82fea425 Bug 1289683 - Prevent notifications from AudioOffloadPlayer after shutdown. r=sotaro
MozReview-Commit-ID: J4t4aYZyfVz

--HG--
extra : rebase_source : 16597bdf0f31264bbdb51764de06a99bb6ff8c95
2016-07-27 15:04:07 +08:00
Gerald Squelart
0ea69c7f48 Bug 1289668 - Report inter-keyframe telemetry - r=kamidphish
Use the new FrameStatistics members to report telemetry about inter-keyframe
timings.

MozReview-Commit-ID: 1ZWU2qpSWyC

--HG--
extra : rebase_source : f13fffc2bc81ad6090c3f494cc99e1d198f3256d
2016-07-27 15:43:01 +10:00
Gerald Squelart
2a787d2521 Bug 1289668 - Record inter-keyframe statistics - r=kamidphish
FrameStatisticsData can now store inter-keyframe information, which is
provided by the MediaFormatReader (based on live decoding).

MozReview-Commit-ID: HhBy6pgT6ZX

--HG--
extra : rebase_source : 6a072623e8a5b0f23b81307e8ea4b19a3e21b252
2016-07-26 09:36:55 +10:00
Gerald Squelart
374f22a566 Bug 1289668 - HTMLMediaElement uses video decoder's frame statistics - r=kamidphish
HTMLVideoElement can expose its thread-safe FrameStatistics object, so that
HTMLMediaElement can access more adequate data for its telemetry, without
having to use an intermediary (and potentially less accurate)
VideoPlaybackQuality object.

This will also help with accessing other/new FrameStatistics members later on.

MozReview-Commit-ID: AT7mEGy0zGr

--HG--
extra : rebase_source : 35bf6673cc0acd9d4e6e1a58c573749689614d43
2016-07-26 11:32:58 +10:00
Gerald Squelart
7bea2e1262 Bug 1289668 - Refactor FrameStatistics writers to use Data struct - r=kamidphish
Decoders now use FrameStatisticsData to gather data for their frame-related
notifications. This will ease introducing new members later on.

MozReview-Commit-ID: DWdOSPX3JM

--HG--
extra : rebase_source : a3e05f34353a397d1c82b3f4d935c0864f90556e
2016-07-18 10:41:40 +10:00
Gerald Squelart
16ceda9794 Bug 1289668 - Use 64 bits to store FrameStatistics values - r=kamidphish
Decoders uses 64-bit values to count frames, so we should use the same type
in FrameStatistics.

Because VideoPlaybackQuality can only use 32 bits (as defined in W3C specs),
we need to ensure that imported FrameStatistics numbers can fit in 32 bits,
while keeping their ratios the same.

MozReview-Commit-ID: 3pUTGK0ekGv

--HG--
extra : rebase_source : 627fada111b51b8830fd38bf6d60a79b899ce603
2016-07-18 10:51:30 +10:00
Gerald Squelart
9448bd8536 Bug 1289668 - Refactor FrameStatistics - r=kamidphish
Move FrameStatistics' data into separate struct, so that it can more easily be
changed and passed around, outside of the lock-controlled FrameStatistics
object.

MozReview-Commit-ID: TfsMRJhVfQ

--HG--
extra : rebase_source : 8c4c6a23c8c2d6ff4272f9f918c9510326691148
2016-07-18 09:51:25 +10:00
Gerald Squelart
56c9933215 Bug 1289668 - FrameStatistics style - r=kamidphish
MozReview-Commit-ID: B9yEd7tqfAN

--HG--
extra : rebase_source : 3b1bfd11c604f9e57321c842f4893192ca9b77b5
2016-07-15 16:48:56 +10:00
Gerald Squelart
10c9db905a Bug 1289668 - VideoPlaybackQuality style - r=kamidphish
MozReview-Commit-ID: EorsgpmZM1S

--HG--
extra : rebase_source : cfaac027ac12b4a5e219b4eeb5b0360b5e464461
2016-07-15 16:48:26 +10:00
Gerald Squelart
8d5de8656a Bug 1289674 - Don't record video telemetry when there is no video - r=kamidphish
MozReview-Commit-ID: nJniysQfpM

--HG--
extra : rebase_source : 4d158a46f233dcefbbfc36a47a29af15be690f21
2016-07-27 16:26:45 +10:00
Jan-Ivar Bruaroey
44c9f33c25 Bug 1289857 - Fix MediaTrackConstraints.cpp to compile with --disable-webrtc again. r=mjf
MozReview-Commit-ID: GgVNQSbPCwf

--HG--
extra : rebase_source : ac3a7c53c3ac8c5b98e05b6d72ddb2badd58617a
2016-07-28 12:03:40 -04:00
Jan-Ivar Bruaroey
abbd438d8f Bug 1286096 - Wire up audio getSettings(). r=padenot,smaug
MozReview-Commit-ID: KH6xcAnd3DX

--HG--
extra : rebase_source : a473d25cec56ee5bf2cd7b5114d7038e45d6a9d8
2016-07-16 15:33:54 -04:00
Jan-Ivar Bruaroey
e2c982dd72 Bug 1286096 - Consider competing audio constraints as well. r=padenot
MozReview-Commit-ID: APPg2UBgNYo

--HG--
extra : rebase_source : 02e05f0e0677d80711a0d27902f17b3f31136db4
2016-07-15 19:55:59 -04:00
Ben Kelly
1ba8e28352 Bug 1288915 P2 Verify that synthetic download works with a Content-Encoding header set. r=jdm 2016-07-28 15:51:51 -04:00
Wes Kocher
c7656c1da3 Backed out changeset c0bf6e0b8f1d (bug 1173199) for build bustage CLOSED TREE 2016-07-28 11:48:20 -07:00
Jan-Ivar Bruaroey
1f7f1269f6 Bug 1286096 - Move UpdateSingleSource pattern to MediaEngine base class for reuse. r=padenot
MozReview-Commit-ID: IJjZayOSxp4

--HG--
extra : rebase_source : de44566213623492982653c90793be9cceee539b
2016-07-13 16:07:03 -04:00
Jan-Ivar Bruaroey
9f23bcc615 Bug 1286096 - Move AllocationHandle used for cameras to MediaEngineSource base class to reuse for microphones. r=padenot
MozReview-Commit-ID: BcmlKnHhe0o

--HG--
extra : rebase_source : 45342801548033ddbb2c0e060a6c6685bcb910b9
2016-07-12 23:25:07 -04:00
Jan-Ivar Bruaroey
2982c3ee86 Bug 1286096 - Remove fakeTracks constraint. r=drno,smaug
MozReview-Commit-ID: I9ZsufufRYg

--HG--
extra : rebase_source : 6d3ace3a22ce34586da4899cc0f7b2727a5fc6e0
2016-07-11 19:27:43 -04:00
Jan-Ivar Bruaroey
36d85898ac Bug 1286096 - Enable width/height constraints on fake device. r=padenot
MozReview-Commit-ID: 1SPPbysZjqL

--HG--
extra : rebase_source : aa52d5d518fc1f52c81709c22212c892b0527d46
2016-07-11 16:52:20 -04:00