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

926 Коммитов

Автор SHA1 Сообщение Дата
JW Wang 05b9e78f7b Bug 1319293 - Enable dormant for dom/media/mediasource/test/test_PlayEvents.html r=jya
MozReview-Commit-ID: 1cRcyTfF0Qc

--HG--
extra : rebase_source : e1d77bfdda8de1f46fd4d717024bdc6c9d924b74
extra : source : be6a71fc9ee695ec0461499b951f5939d254e9cf
2016-11-22 14:59:00 +08:00
JW Wang a8b746d049 Bug 1318982 - Enable dormant for most media mochitests. r=jya
MozReview-Commit-ID: 7AXEhCmFUeR

--HG--
extra : rebase_source : fa42b09dda75c3385edc6f7decc240816195722b
extra : intermediate-source : 3376be75b913bbc3bd0920828f9e756982e9cac3
extra : source : ffee549ec036bc3ec1b9b1bccb26314c5adb5096
2016-11-02 16:56:38 +08:00
JW Wang c73002e638 Bug 1315591 - remove duplicated waitUntilTime() in test_BufferingWait[_mp4].html. r=jya
MozReview-Commit-ID: 12Z9TJ4WVVt

--HG--
extra : rebase_source : 34b9d33b354c41f02ce0da7dfcf13612e809bd34
2016-11-07 11:49:38 +08:00
Jean-Yves Avenard ad3b3a4b82 Bug 1314533: [MSE] P6. Allow to detect error during preliminary container parsing. r=gerald
MozReview-Commit-ID: KZ858ISWDmu

--HG--
extra : rebase_source : 776e858619f13178193a9be2e0857c69dea15984
2016-11-04 23:09:47 +11:00
Jean-Yves Avenard a7ef8c33da Bug 1314533: [MSE] P4. Reject invalid webm block. r=gerald
An invalid webm block at this stage is either a non init segment or non media segment.

MozReview-Commit-ID: 46NrhCwqas1

--HG--
extra : rebase_source : b5be124fc0789cfe0fe757c5fb83f18a769a8bd4
2016-11-04 02:16:53 +11:00
Jean-Yves Avenard 5c340b140f Bug 1314533: [MSE] P3. Reject invalid MP4 boxes. r=gerald
MozReview-Commit-ID: F0FcQDqsLk7

--HG--
extra : rebase_source : 91d878d277013b7d78c32b9b0855d38989e94741
2016-11-04 01:49:19 +11:00
Jean-Yves Avenard d7ed0c4335 Bug 1314533: [MSE] P2. Reject appendBuffer if invalid data found. r=gerald
This still requires all the ContainerParser to be updated in properly handling errors.

MozReview-Commit-ID: A7gDmXSJXmc

--HG--
extra : rebase_source : c438fdd40deb843e43f341d107e48171141dc746
2016-11-02 21:39:14 +11:00
Jean-Yves Avenard fa47b59611 Bug 1314533: [MSE] P1. Change member prototype. r=gerald
MozReview-Commit-ID: L8H4oDoTm2b

--HG--
extra : rebase_source : d78504699223bfd63624bf2e603d274d4c06cca8
2016-11-02 21:29:13 +11:00
Sebastian Hengst 8ee9323cd0 Bug 1310297 - Remove test annotations using b2g, mulet or gonk: dom/media. r=RyanVM
MozReview-Commit-ID: JVsnpnBDeCC

--HG--
extra : rebase_source : 5a7ccee10b094808e3ee73de7a226306a9fd55fd
2016-11-05 11:29:16 +01:00
JW Wang 9fcd26988d Bug 1311872. Part 1 - remove dormant code from MediaDecoder and its friends. We will let MDSM solely decide when to enter/exit dormant. r=cpearce,jya
MozReview-Commit-ID: 4rRSGcruy7Z

--HG--
extra : rebase_source : 6bff3bde442dbc96ce23a4a1aabae9ec79f1b9f0
extra : intermediate-source : 456de41037090ff072925d937b001de31a479556
extra : source : 525be5a0f46950ced9efba9a7cfeda26ce73cfb8
2016-10-20 15:20:25 +08:00
bechen b903d81761 Bug 1286738 - part4-fixWebMAudio: audio/webm doesn't need the IsWebMForced() check. r=jya
MozReview-Commit-ID: 1BWpKvT3XTs

--HG--
extra : rebase_source : b834c1f767b35036928c3d59663b62ead7482ea9
2016-10-26 17:31:22 +08:00
bechen 24016416cb Bug 1286738 - part3-mediasource: Enable fennec vp9 only if we have hw deocder. r=jya
MozReview-Commit-ID: BwAZTrgXcaP

--HG--
extra : rebase_source : 85ed47735c51281053b409d25bdebd6dad3aa1bc
2016-10-26 17:08:21 +08:00
Jean-Yves Avenard b59dab94ce Bug 1314212: P2. Update and re-enable MSE mochitest. r=gerald
MozReview-Commit-ID: Lm09FxaYr7w

--HG--
extra : rebase_source : 7473a65f36f47e0c2aaf4dab9892594bc08346bb
2016-11-02 18:05:51 +11:00
Jean-Yves Avenard 0f06937c17 Bug 1314212: P1. Update and re-enable MSE mochitest. r=gerald
MozReview-Commit-ID: 9hYddtEWexz

--HG--
extra : rebase_source : dce11a935d64ddc2a4a2855d2ba0ec1af54a9653
2016-11-01 18:36:07 +11:00
Phil Ringnalda a2f4b15464 Merge m-c to autoland 2016-10-18 19:50:46 -07:00
Jean-Yves Avenard 4db3f07930 Bug 1311137: [MSE] Ensure buffered range doesn't get modified during run. r=gerald
Previously two separate monitors were used to find the highest end time, and then work on tracks, introducing the possibility that tracks could be modified between these two operations. Now only one monitor is used to ensure consistency.

MozReview-Commit-ID: 1foB82S6W1Z

--HG--
extra : rebase_source : 817ff8cf231372a4db90b2c11f3bb60d1031fa89
2016-10-19 10:28:49 +11:00
Jonathan Hao ad4fb47b95 Bug 1264595 - Test whether auto-revocation is removed. r=karlt 2016-10-18 15:56:00 +08:00
Jean-Yves Avenard 393d5d4fe1 Bug 1305876: P3. Make function members const. r=gerald
MozReview-Commit-ID: 6R9Y9ofjKp8
2016-10-13 18:59:17 +11:00
Jean-Yves Avenard eb41ff60cb Bug 1305876: P2. Do not modify internal data when calculating buffered ranges. r=gerald
MozReview-Commit-ID: 29WJozhIrEP
2016-10-13 18:59:17 +11:00
Jean-Yves Avenard b835f66b3a Bug 1305876: P1. Add diagnostic assert to more easily identify issue. r=gerald
MozReview-Commit-ID: BJhHLHRhnQw
2016-10-13 18:59:17 +11:00
Gerald Squelart 72c393635b Bug 1176218 - p5. Use DecoderTraits::CanHandleContentType in MediaSource - r=jya
Replace both uses of nsContentTypeParser with MediaContentType.

MozReview-Commit-ID: KV7ze3ASRf3

--HG--
extra : rebase_source : b3d102b02fa671d0a42d70ae7fe66bdd51ac5d86
2016-09-29 23:10:15 +10:00
Jean-Yves Avenard 8ad335efb0 Bug 1305347: [MSE] Break removal loop early when possible. r=gerald
MozReview-Commit-ID: 2Pl3drov8tT

--HG--
extra : rebase_source : ccf512533b71315400bf5db77147d47a4e342162
2016-10-06 17:32:39 +11:00
JW Wang bb286ff881 Bug 1307055. Part 2 - remove unnecessary pref settings and unused functions. r=cpearce
MozReview-Commit-ID: IQHrWAwrMMZ

--HG--
extra : rebase_source : 04e5c65b386270e1231e6720f1635f19c0a58e24
2016-10-03 15:20:31 +08:00
Carsten "Tomcat" Book 762cd18602 Merge mozilla-central to autoland 2016-09-28 16:52:13 +02:00
Chris Pearce 22b3d81155 Bug 1300069 - Remove TrackBuffersManager::mIsEncrypted. r=jya
It's write only, so there's no point storing this, and it's not accurate
anyway, as it's actually tracking whether there's encrypted init data in
the media, not whether its got encrypted tracks.


MozReview-Commit-ID: 78iFUyXwRBV

--HG--
extra : rebase_source : f500b90d32da042a550172128a4c79c142048a98
extra : amend_source : c4e31f686e2c0f2c400225919c45c3a530373a8c
2016-09-28 13:45:25 +13:00
James Cheng 48efb9caad Bug 1300654 Part1-Remove MOZ_EME from code base. r=cpearce,smaug
MozReview-Commit-ID: JboGO0w4tcE

--HG--
extra : rebase_source : abfe53f30081f74fc39c900cab48d08c7574bfec
2016-09-08 18:06:20 +08:00
Jean-Yves Avenard 05df96f1aa Bug 1302573: [MSE] P5. Always evict data as soon as we can. r=gerald
While never evicting less than 512kB saves CPU cycles, it reduces the chances to evict data when we actually need to and requires currentTime to advance much further.

MozReview-Commit-ID: LcQFFtarbbi

--HG--
extra : rebase_source : 381de3d926bbb12377f4332eb87c08b52a56551a
2016-09-25 21:55:26 +10:00
Jean-Yves Avenard 46aeb460fb Bug 1302573: [MSE] P4. Be consistent in datatype being used. r=gerald
When using gcc on linux, about:media shows incorrect content due to incorrect printf formatter.

MozReview-Commit-ID: IWtl6cX1OFA

--HG--
extra : rebase_source : 392143e1f5a3af3b9353a6824487c328ab9a3878
2016-09-24 20:43:32 +10:00
Jean-Yves Avenard 35a0f6dbcf Bug 1302573: [MSE] P3. Display evictable amount in about:media output. r=gerald
MozReview-Commit-ID: 1cs2aAxSH4A

--HG--
extra : rebase_source : cad708cb139aff03d91f338827f579c18551c99a
2016-09-24 16:38:14 +10:00
Jean-Yves Avenard 93fe7f08f6 Bug 1302573: [MSE] P2. Keep track of how much data can be evicted prior to current demuxing position. r=gerald
The MSE specs require a synchronous step which would evict data prior to an appendBuffer. This is however, fundamentally incompatible with our multi-threaded, almost lock-free architecture.

So instead, we keep track of how much data we have prior to currentTime, and check that value before appending new data.

MozReview-Commit-ID: Fl58R7dZsig

--HG--
extra : rebase_source : 41ea607249f94d1e1034055789160fab79616990
2016-09-22 20:03:13 +10:00
Jean-Yves Avenard 726e1c5c1c Bug 1302573: [MSE] P1. Add mochitest. r=gerald
MozReview-Commit-ID: 9zAZ8x3kwQ7

--HG--
extra : rebase_source : caf5853d097beeb57e87e6dee692cc445b2c9c29
2016-09-22 19:55:38 +10:00
Matt Woodrow fd9a067c7e Bug 1288618 - Part 4: Fix some namespace collisions in media code. r=jya 2016-09-21 21:24:43 +12:00
Matthew Woodrow 76c0ae8105 Bug 1288618 - Part 1: Use gfxVars for CanUseHardwareVideoDecoding so we can access it in the GPU process. r=dvander 2016-08-25 15:48:35 +12:00
Carsten "Tomcat" Book f918af64da Backed out 16 changesets (bug 1288618) for bustage on a CLOSED TREE
Backed out changeset 06187d250f7a (bug 1288618)
Backed out changeset 2a47f8ea1d89 (bug 1288618)
Backed out changeset e179c8e8265d (bug 1288618)
Backed out changeset 25396a1af922 (bug 1288618)
Backed out changeset e98f835c6ee5 (bug 1288618)
Backed out changeset 24df0e89b273 (bug 1288618)
Backed out changeset f8bbdabdb6da (bug 1288618)
Backed out changeset 8b0adeab93df (bug 1288618)
Backed out changeset 95f23366de82 (bug 1288618)
Backed out changeset 63a9c689e1d5 (bug 1288618)
Backed out changeset 8f67443dccb8 (bug 1288618)
Backed out changeset 4e7fe69d5f45 (bug 1288618)
Backed out changeset 53b113acee42 (bug 1288618)
Backed out changeset 2583ae4e2e3b (bug 1288618)
Backed out changeset 75a61d0e71b7 (bug 1288618)
Backed out changeset da740b4fd484 (bug 1288618)
2016-09-21 08:44:11 +02:00
Matt Woodrow f1a988d8b3 Bug 1288618 - Part 4: Fix some namespace collisions in media code. r=jya
--HG--
extra : rebase_source : 1dc38db46d939be4b96d087101f99e8fb45b81b5
2016-09-21 15:36:09 +12:00
Matthew Woodrow cc6a2ea1e1 Bug 1288618 - Part 1: Use gfxVars for CanUseHardwareVideoDecoding so we can access it in the GPU process. r=dvander
--HG--
extra : rebase_source : 3e5e4d3cebeda21a080a0f5c9bcec95ba54f960c
2016-08-25 15:48:35 +12:00
Carsten "Tomcat" Book 45927144b4 Backed out changeset e00026b645d2 (bug 1288618) for valgrind failures 2016-09-15 16:34:35 +02:00
Carsten "Tomcat" Book 7c52462ae3 Backed out changeset 5b279f726a5e (bug 1288618) 2016-09-15 16:34:13 +02:00
Matt Woodrow 810ad19979 Bug 1288618 - Part 4: Fix some namespace collisions in media code. r=jya 2016-09-15 23:17:59 +12:00
Matthew Woodrow 0cd90578a4 Bug 1288618 - Part 1: Use gfxVars for CanUseHardwareVideoDecoding so we can access it in the GPU process. r=dvander 2016-08-25 15:48:35 +12:00
Carsten "Tomcat" Book d2c3fe7fd3 merge autoland to mozilla-central a=merge 2016-09-14 12:07:02 +02:00
Ben Kelly f0d440f9d1 Bug 1300118 P1 Make TaskQueue deliver runnables to nsIEventTarget. r=bholley 2016-09-13 20:12:15 -07:00
Jean-Yves Avenard 95ee05fbb7 Bug 1302465: [MSE] Schedule eviction, even if previously the source buffer was full. r=gerald
Conditions may have changed (such as currentTime moving since the last attempt). So we try again.

MozReview-Commit-ID: 2zexl1FzOd7

--HG--
extra : rebase_source : 5c21f6edc438fb012e18eda45237383fc8b83794
2016-09-14 09:28:01 +10:00
Jean-Yves Avenard 5b7653c571 Bug 1299072: P14. Use MediaResult between TrackBuffersManager and MediaSourceDemuxer. r=gerald
MozReview-Commit-ID: 99EopLYqjWh

--HG--
extra : rebase_source : a5c54de401dc0ef3d20b3c35a724666c152d6c0d
2016-09-12 15:44:31 +10:00
Jean-Yves Avenard 57a4871bb2 Bug 1299072: P13. Use MediaResult with TrackBuffersManager internal promises. r=gerald
MozReview-Commit-ID: AjeEAGGsetQ

--HG--
extra : rebase_source : c8b3ec6247314e53cb2c5bef1db6bb5f84d0a371
2016-09-12 15:17:16 +10:00
Jean-Yves Avenard 20dc9102e8 Bug 1299072: P12. Use MediaResult for MediaDataDemuxer promises. r=gerald
MozReview-Commit-ID: JeQrmoHbb8m

--HG--
extra : rebase_source : 1f4581e5789f18b358a6f5bb5f8595cc7a75110b
2016-09-12 12:22:20 +10:00
Jean-Yves Avenard 162fa5f03b Bug 1299072: P11. Use MediaResult with AppendBuffer promises. r=gerald
Will allow to pass detailed failure causes in a followup patch.

MozReview-Commit-ID: 5yGjzZNcYWg

--HG--
extra : rebase_source : fdd76c98900320352ee3c349de1c40df29122ca9
2016-09-12 08:54:10 +10:00
Jean-Yves Avenard 6a25692b20 Bug 1299072: P10. Pass decoding error details to media element's error attribute. r=jwwang
MozReview-Commit-ID: 49DurV9WI5S

--HG--
extra : rebase_source : 469e6ed4e222fb6d6ac34843c3c3346a044c6023
2016-09-11 00:56:09 +10:00
Wes Kocher 42f4e48aee Backed out 6 changesets (bug 1300118) for frequent Windows VM Xpcshell failures a=backout CLOSED TREE
Backed out changeset 24f714ad248c (bug 1300118)
Backed out changeset 6fe61ed092e8 (bug 1300118)
Backed out changeset dd18e29b64bf (bug 1300118)
Backed out changeset 50882fb40551 (bug 1300118)
Backed out changeset 60e82c1780e5 (bug 1300118)
Backed out changeset e40df52925d5 (bug 1300118)

--HG--
extra : amend_source : 7475f45d827654abe309696d73fd86e75a497c32
2016-09-12 16:34:41 -07:00
Ben Kelly 621f6bacd6 Bug 1300118 P1 Make TaskQueue deliver runnables to nsIEventTarget. r=bholley 2016-09-12 12:32:20 -07:00
Ben Kelly a8a4ae3c4f Backout rev 5c7368370ff9 to 980659720b86 (bug 1300118 and bug 1300658) for incorrect bug number in commit message. r=me 2016-09-12 12:29:17 -07:00
Ben Kelly 157b0fe1ed Bug 1300118 P1 Make TaskQueue deliver runnables to nsIEventTarget. r=bholley 2016-09-12 11:21:01 -07:00
Jean-Yves Avenard dc791c944e Bug 1280023: [MSE] P2. Drop audio size threshold to 10MB. r=gerald
Following bug 1301307, exception is properly thrown when buffer is full, giving the opportunity to the JS player to adjust accordingly. Confirmed to work with YouTube with an audio threshold of only 1MB.

MozReview-Commit-ID: 77K8UPhb9zj

--HG--
extra : rebase_source : 64b75f7f563ba9d6fc0c6feeaf7c945894fd6a06
2016-09-08 21:16:14 +10:00
Jean-Yves Avenard 96b8e1d552 Bug 1280023: [MSE] P1. Never evict data in the media segment currently being played. r=gerald
MozReview-Commit-ID: 3yCHYzdavWA

--HG--
extra : rebase_source : 96d4197501d0e629130524f415e7c39b0ca82072
2016-09-08 21:00:46 +10:00
Jean-Yves Avenard be3f2c08c0 Bug 1301307: [MSE] Throw error when sourcebuffer is full and no data could be evicted. r=gerald
MozReview-Commit-ID: GWil57B0QBc

--HG--
extra : rebase_source : b1ba6f150546f2f9fe4c0b6780bce7c97c0a95bc
2016-09-08 19:58:32 +10:00
Gerald Squelart df2f457e83 Bug 1298710 - Remove ByteReader::DiscardRemaining and AutoByteReader - r=jya
DiscardRemaning was needed to prevent debug-time assertion that the buffer was
read completely or explicitly discarded.

However this required extra work in cases where buffer didn't need to be read
to the end.
And also it could cause crashes (in debug versions) if a buffer was not fully
read, be it because the parser was incorrect or because the media file itself
was wrong (though possibly still readable despite that).
Finding parser issues is still possible by manually instrumenting ByteReader
during development.
And reading media file with small recoverable errors is a bonus.

MozReview-Commit-ID: 2RUYzaYAeRW

--HG--
extra : rebase_source : 26c41758b1b2c87542bf4e41d08e361198ca5b13
2016-09-04 18:33:30 +10:00
Jean-Yves Avenard 2014b787b8 Bug 1298617: [MSE] P3. Optimize sample search by breaking loop early. r=gerald
MozReview-Commit-ID: 48YcQiy0p8S

--HG--
extra : rebase_source : 00e6c3468618bc6811faa80b5da590ab9e31d582
2016-08-28 02:43:36 +12:00
Jean-Yves Avenard da968e2d25 Bug 1298617: [MSE] P2. Attempt to search the exactly matching sample first. r=gerald
MozReview-Commit-ID: AW1T51n6WMl

--HG--
extra : rebase_source : 241a200fdb4f450e8188000aa70ea058aae817b5
2016-08-28 02:38:59 +12:00
Jean-Yves Avenard d97b525caa Bug 1298617: [MSE] P1. Don't attempt to estimate next sample time if exact value known. r=gerald
MozReview-Commit-ID: 8DE9WHFsePt

--HG--
extra : rebase_source : dd9edb407d6f2cc8ba76367fca0e10fb91f2eea7
2016-08-28 02:34:44 +12:00
Jean-Yves Avenard d9412b2ac0 Bug 1298594: P5. Fix mochitest. r=gerald
The assumption was that the waiting event would be fired once the last frame prior the gap had been played. This is however incorrect, as per spec, the waiting event is to be fired once readyState is <= HAVE_CURRENT_DATA. So the waiting event is actually fired anytime between the start of the last frame and its end.

MozReview-Commit-ID: AA4Qhn7okhB

--HG--
extra : rebase_source : fc1f336b2e07cc2549071563804de8fae9c9ab67
2016-08-29 16:07:38 +10:00
Jean-Yves Avenard a9dab88295 Bug 1298594: [MSE] P1. Add mochitest to verify correct behavior. r=gerald
1- We shouldn't reach ended if we have a gap in the buffered range prior the end of the file (see bug 1297036)
2- Waiting should be fired when readyState goes below HAVE_FUTURE_DATA

MozReview-Commit-ID: 18bEnkNpYvO

--HG--
extra : rebase_source : c42c7fd19fec9ede5bb64ea697a0086116882403
2016-08-27 00:08:38 +12:00
Jean-Yves Avenard 3b8c226443 Bug 1297036: [MSE] P6. Fix invalid mochitest. r=gerald
The test accidentally worked because any demuxing failures in ended mode would be treated as EOS. There's no audio between [0-3), so playback couldn't start

MozReview-Commit-ID: 4B90CrVUTy4

--HG--
extra : rebase_source : 9079aa8a6983877745baac71c7868ca360b85095
2016-08-28 12:26:40 +10:00
Jean-Yves Avenard 46842a940a Bug 1297036: [MSE] P5. Make fuzz research consistent. r=gerald
The aim is to only allow skipping gaps of fuzz=500ms.

MozReview-Commit-ID: 8uHxni2nPHI

--HG--
extra : rebase_source : ccef593170fb3a0c3ff61dc97ad1a0508be06934
2016-08-27 23:51:40 +10:00
Jean-Yves Avenard 8d676d83a6 Bug 1297036: [MSE] P4. Only report end of stream when reaching the end. r=gerald
MozReview-Commit-ID: 5EWhBVnscXY

--HG--
extra : rebase_source : 914aa1b8abb8d4026993281dbd68b1ba2ef04642
2016-08-28 01:00:39 +12:00
Jean-Yves Avenard 03f6dc4d61 Bug 1297036: [MSE] P2. Make seek always succeed when attempting to seek past the end time. r=gerald
MozReview-Commit-ID: H2YJu7vY0aP

--HG--
extra : rebase_source : 73b1e324a6d9f8612ef03dcbf7dc5e5a91c7e2b2
2016-08-26 19:23:29 +12:00
Jean-Yves Avenard e4f3e62f41 Bug 1297036: [MSE] P1. Add mochitest to verify behavior. r=gerald
Seeking in the buffered range should always succeed, even if we have no data in a given track

MozReview-Commit-ID: FGjsDCNIdWC

--HG--
extra : rebase_source : c91348e44055f82deee0e97da4abef0cf799b225
2016-08-26 23:10:00 +12:00
Jean-Yves Avenard 85862da5ee Bug 1298606: [MSE] P2. Properly determine next frame status in ended state. r=gerald
MozReview-Commit-ID: 2m05GzauHes

--HG--
extra : rebase_source : d5541dd96dc0480c41e7d68cfb96a95243b9a454
2016-08-27 22:27:22 +12:00
Jean-Yves Avenard 954647ed96 Bug 1297218: [MSE] Remove unnecessary call to Find(). r=gerald
MozReview-Commit-ID: Af7mzXbLiNy

--HG--
extra : rebase_source : b3107a0be24a839be06ab5d4d22045a6fb0c94c3
2016-08-26 16:51:18 +12:00
Jean-Yves Avenard 5b04109e85 Bug 1297037: [MSE] Update Duration Change algorithm as per latest spec. r=gerald
The MSE spec was recently updated to use the highest end time across tracks rather than across the buffered ranges.

See https://github.com/w3c/media-source/issues/124 and the fix described in https://github.com/w3c/media-source/pull/154

MozReview-Commit-ID: 4CqI8d2e9gu

--HG--
extra : rebase_source : b25f0e2a76c517c0dca0a9def00edd6eff38d8ad
2016-08-26 16:39:36 +12:00
Jean-Yves Avenard bca42a94d5 Bug 1297580: [MSE] P4. Add mochitest. r=gerald
MozReview-Commit-ID: IulzS2GSHa2

--HG--
extra : rebase_source : aeae90406b115d8215a5b134a54f34d7c3c49baa
2016-08-25 10:59:42 +12:00
Jean-Yves Avenard b32b9b034f Bug 1297580: [MSE] P3. Increase gap threshold to 500ms. r=gerald,kentuckyfriedtakahe
MozReview-Commit-ID: Ii9YjJ7YaJB

--HG--
extra : rebase_source : 0871be48b09bcb804ecca3bf67548c06441e21c7
2016-08-24 17:21:57 +12:00
Jean-Yves Avenard 94ece3bfc4 Bug 1297580: [MSE] P2. Halves the fuzz value when checking if seek target is present. r=gerald
The fuzz value is a +/- one. To check if a target is within an interval
we need to check with half the fuzz only.

MozReview-Commit-ID: J5H5sbNokse

--HG--
extra : rebase_source : aeedcb111c84a353307c8e641385ef0800792fa7
2016-08-24 17:20:52 +12:00
Jean-Yves Avenard cb7d929883 Bug 1244489: Do not expect currentTime to always be 0 by the time playing is fired. r=jwwang
The playing event is sent asynchronously. By the time the playing event
actually gets fired, it is possible that playback has already started.

MozReview-Commit-ID: 1iD3ZSmWtmb

--HG--
extra : rebase_source : c9ea91b5102370f3b063a05f69f7eaf805bd8eb0
2016-08-23 21:31:13 +12:00
Jean-Yves Avenard 07a86a0f91 Bug 1296453: [MSE] P2. Clean up SourceBufferResource. r=gerald
The code was designed around the need for a MediaResource::Read which is
no longer possible since bug 1190238

MozReview-Commit-ID: 7s76YWg93jS

--HG--
extra : rebase_source : 3f6756193c352cf766471dd8cb1fb7646af191e6
2016-08-23 17:38:46 +12:00
Jean-Yves Avenard 8e46c367ed Bug 1296453: [MSE] P1. Fix eviction. r=gerald
The MP4 demuxer returns INT64_MAX when all data can be safely evicted
from the MediaResource.
Additionally, the MP4Demuxer will read the MediaResource using
CacheReadAt.

Eviction in the SourceBufferResource had a safeguard to ensure we would
never evict data we hadn't read yet. This was done by keeping the
position of the last data read in the mOffset member. CacheReadAt
however doesn't update mOffset.

As a result, no data was ever removed from the input buffer when using
MP4.

MozReview-Commit-ID: 2tAWzpMlOjG

--HG--
extra : rebase_source : bec585ca46e7fd0665c00bce525aaacede1b3897
2016-08-23 17:18:22 +12:00
Bryce Van Dyk bf4a449efb Bug 1145011 - Implement waitingforkey event. r=jya
Bubble information from SamplesWaitingForKey to an HTMLMediaElement so that we
can emit a waitingForKey event. If we are unable to decode more samples due to
needing a key the event will be signalled. See
http://w3c.github.io/encrypted-media/#dom-evt-waitingforkey for more information
on this event.

The code in place before this patch handles updating readyState when we are
waiting for a key, this patch adds the event which should be emitted in such a
case. The spec defines certain preconditions should be the case before running
the algo to emit this event. For example, the element should potentially be
playing, and it should have at least HAVE_FUTURE_DATA ready state. This is not
strictly true for when the new code is run, due how existing code handles ready
state. We are honoring the spirit of the spec, though the letter of the spec is
lightly gone against in the handling of the preconditions.

MozReview-Commit-ID: LKlDd4wkRSE

--HG--
extra : rebase_source : 2c61fc41636e430afa23240ad5d26c886124d87f
2016-08-22 08:51:01 +12:00
Wes Kocher d602abb016 Merge inbound to central, a=merge 2016-08-15 14:20:38 -07:00
Igor 175543fda8 Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Igor a57972337d Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj 2016-08-14 23:44:00 -07:00
Jean-Yves Avenard 4769abd741 Bug 1294648: [MSE] Return early if mediasource isn't attached. r=gerald
MozReview-Commit-ID: 9hCi5sPbZpW

--HG--
extra : rebase_source : 23b4cd16d3e104a30c0f1709b9ce0d04a105d219
2016-08-12 20:56:45 +10:00
Jean-Yves Avenard 88b7ec7f4b Bug 1293576: [MSE] P2. Fix mochitest. r=gerald
The mochitest relied that the video track was processed first. Additionally, change for the file with only a single video track as the previous video didn't have aligned segments, making the use of sequence mode useless.
We swap the segment around, which allow to more easily visually inspect the result (counter goes forward and then back)

MozReview-Commit-ID: 33PsrmRF1GL

--HG--
extra : rebase_source : e98a7714f81f5c7913091128b5ee04cf41c2d09b
2016-08-10 16:21:36 +10:00
Jean-Yves Avenard 38fa21c818 Bug 1293576: [MSE] P1. Always process the earliest frames first when in sequence mode. r=gerald
MozReview-Commit-ID: 2b3EyYCtNai

--HG--
extra : rebase_source : 41396c041ddfba75e381e656b2fa45d427e2a44f
2016-08-09 23:11:36 +10:00
Jean-Yves Avenard aecc883033 Bug 1293646: [MSE] P1. Reject seeking attempt with EOS when the mediasource is ended. r=gerald
Otherwise, the ended event would never be fired should the decoder have reached the end of the stream prior endOfStream being called.

MozReview-Commit-ID: CbWCnzi3nxj

--HG--
extra : rebase_source : 729e25919fdb7f8a8918c4d5a9bcae17d8c8bdc5
2016-08-09 23:09:22 +10:00
Nicholas Nethercote e7f10a07fd Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.

--HG--
extra : rebase_source : 815d0018b0b13329bb5698c410f500dddcc3ee12
2016-08-08 12:18:10 +10:00
Jean-Yves Avenard 57bcb09a90 Bug 1128069: [MSE] P6. Call NotifyDataArrived from MediaDecoder. r=gerald
Calling NotifyDataArrived from each sourcebuffer will cause multiple unnecessary NotifyDataArrived to the MediaFormatReader when it could only be done once. Additionally, it ensures that the media duration is updated prior to the reader actioning on the notification.

Extra: mEnded is only ever accessed on the main thread, there's no need to make it atomic.

MozReview-Commit-ID: IKq7IRBbWic

--HG--
extra : rebase_source : 6cf18b1f71f5ee6c8e82c73bdd2857e783f343b8
2016-08-08 13:56:38 +10:00
JW Wang 95cf484548 Bug 1290780. Part 7 - We don't want to trigger DurationChanged(). So just set mExplicitDuration without calling SetExplicitDuration(). r=jya
MozReview-Commit-ID: 5yWLhteUgQt

--HG--
extra : rebase_source : 9a17eccfc572d92317f7859d84e15e7b973e8fcd
2016-07-28 16:50:10 +08:00
JW Wang 887d693c49 Bug 1290780. Part 6 - Assert IsShutdown() is false in SetMediaSourceDuration(). r=jya
1. It is called from SetInitialDuration() when mMediaSource is non-null which happens before Shutdown() which clears |mMediaSource|.
2. It is called from MediaSource::SetDuration() which happens before MediaSourceDecoder::Shutdown() for |mDecoder| is non-null.
3. It is called from MediaSource::DurationChange() where |mDecoder| is non-null.

MozReview-Commit-ID: 56AmWRLkkiv

--HG--
extra : rebase_source : 1f9443ac3670b12401ffa5ad397638c095e72566
2016-07-28 15:52:30 +08:00
Chris Pearce 1ec646af14 Bug 1278198 - Implement "Get Supported Configuration" algorithm in MediaKeySystemAccess. r=gerald
MozReview-Commit-ID: KiJMOm5HgHe

--HG--
extra : rebase_source : 0c60b76ad38cb9c5513e6618c8d8f4bc6f43b168
2016-07-01 13:36:57 +12:00
Carsten "Tomcat" Book 336105a0de merge mozilla-inbound to mozilla-central a=merge 2016-07-22 11:58:02 +02:00
Jim Chen ce45a595ab Bug 1287946 - Update existing code to use mozilla::java; r=me 2016-07-21 13:49:04 -04:00
Iris Hsiao 20a56b15d5 Backed out changeset 9c3ef7ef33d9 (bug 1278198) 2016-07-22 12:06:26 +08:00
Chris Pearce 151988ebac Bug 1278198 - Implement "Get Supported Configuration" algorithm in MediaKeySystemAccess. r=gerald
MozReview-Commit-ID: KiJMOm5HgHe

--HG--
extra : rebase_source : a465eee5c29acb8ece448b1cc371fcf893563fff
2016-07-01 13:36:57 +12:00
Tom Tromey 5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Wes Kocher afdaddcff4 Backed out changeset c6d147ba37b5 (bug 1281259) for making windows vm mn-e10s permafail 2016-07-20 16:08:55 -07:00
eyim 4446d595fa Bug 1281259 - Port DXVA to gfxConfig r=jrmuizel
MozReview-Commit-ID: 7Yp3ynxZoFE

--HG--
extra : rebase_source : 8fd65a364e3c8b2e539b47dd034e637a1324516e
2016-07-14 10:21:06 -04:00
Carsten "Tomcat" Book e8bc59a87a Backed out changeset 684888aeee81 (bug 1287946) 2016-07-21 08:07:12 +02:00
Jim Chen 78f67d1f6f Bug 1287946 - Update existing code to use mozilla::java; r=me 2016-07-21 00:42:26 -04:00
Jean-Yves Avenard 13c3a00bde Bug 1286810: [MSE] P4. Mochitest for new duration behavior. r=gerald
MozReview-Commit-ID: LLMGoWDFwte
2016-07-19 11:45:28 +10:00
Jean-Yves Avenard ccb52aa40e Bug 1286810: [MSE] P3. Update mochitests to reflect new duration behavior. r=gerald.
update/updateend is no longer fired when changing the duration. Also update the test to use promises, it makes things more readable

MozReview-Commit-ID: AeuEolCR5yT
2016-07-19 11:45:28 +10:00
Jean-Yves Avenard 103da1bf41 Bug 1286810: [MSE] P2. Update duration change as per new MSE spec. r=gerald
See w3c/MSE Issue 19, 20 & 26.

Changing the duration now can never call the range removal algorithm. An explicit call to remove must be used for range removal.
This change performs the following:
- Require remove() for all Range Removals
- Error on Duration Changes that need remove first

MozReview-Commit-ID: 1fK2O1slnQ1
2016-07-19 11:45:28 +10:00