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

307 Коммитов

Автор SHA1 Сообщение Дата
Kaku Kuo dab014bd99 Bug 1360123 P2 - move ConstructMediaTracks/RemoveMediaTracks to HTMLMediaElemnt; r=jwwang
MozReview-Commit-ID: 3S63JeXAX2w

--HG--
extra : rebase_source : ef807247a5042fa23ba6b6f5c907035bd8d64199
2017-04-18 15:43:55 +08:00
JW Wang 54ae314fcc Bug 1358972. P2 - remove MediaDecoder::mEstimatedDuration and its friends which is never modified. r=kaku
MozReview-Commit-ID: 7W331tookXV

--HG--
extra : rebase_source : 2555fbdb4c5480e6880a67e71827ca06d6857992
extra : intermediate-source : c035bdc6f8e47cc92fa5d6b66421d319d9cd2e92
extra : source : 49ec1fd9914624f5aa4ea87bf4deb8b47017e288
2017-04-17 17:20:06 +08:00
JW Wang 381be5ed72 Bug 1358972. P1 - remove unused code. r=kaku
We can remove AbstractMediaDecoder::UpdateEstimatedMediaDuration() which
has no callers at all.

MozReview-Commit-ID: Eub12jQ25KK

--HG--
extra : rebase_source : f564b84a147252bd98c13fe475af971808880c8c
extra : intermediate-source : 4c0870a71b2091c39f5fc67c5cf21dea0a4cc459
extra : source : 1bfe40324a3801f8d60384b247d85f04b8971bbe
2017-04-17 17:10:09 +08:00
JW Wang f6a893a644 Bug 1358969 - let MediaDecoder::CurrentPosition() return a TimeUnit. r=kikuo
We want to replace the use of int64_t for microseconds by TimeUnit
whenever possible since int64_t is ambiguous which could be microseconds
or milliseconds.

MozReview-Commit-ID: K3Bz3uEXLDK

--HG--
extra : rebase_source : ade3cbd61c764b73a22c360572a525127dbadbc5
extra : intermediate-source : 013227a4aa645fc34a82c44130db6c847d74960b
extra : source : 1ab7ce426b557e4ce9979e023f9e84b4690eeaaa
2017-04-17 17:04:39 +08:00
JW Wang 02369ea1a2 Bug 1357987 - make MediaDecoder::DEFAULT_NEXT_FRAME_AVAILABLE_BUFFERED a TimeUnit to avoid ambiguous int64_t for microseconds. r=kaku
MozReview-Commit-ID: 9JC4zPEc6or

--HG--
extra : rebase_source : 8001ba3924f4bdb2ffb4143f1a22e2c4bf697ce3
extra : intermediate-source : 02bc62f83a7af3059b819c2bbb9fd887e2593043
extra : source : 5af753b1192f36ebf84279ff011617587ede613b
2017-04-17 16:58:44 +08:00
Kaku Kuo 36ef069505 Bug 1344357 P3 - dont' pass dom::Promise into MediaDecoder anymore; r=jwwang
MozReview-Commit-ID: 5RUNauRRajP

--HG--
extra : rebase_source : 4c12d5cd730657da37b2c94987e84518c2c67ae5
2017-04-17 18:49:55 +08:00
Kaku Kuo b06e8a5370 Bug 1344357 P1 - move the MediaDecoder::mSeekDOMPromise to HTMLMediaElement; r=jwwang
There was a cycle amoung a window object -> a HTMLMediaElement -> a MediaDecoder -> a Promise (-> back to the window object).
And we have no way to break the cycle since the MediaDecoder does not participate into the collection.

By moving the Promise form MediaDecoder to HTMLMediaElement, we will be able to break the cycle since the HTMLMediaElement is in the collection.

We'll implement the cycle collection in the next patch.

MozReview-Commit-ID: CyVXBl6IMI3

--HG--
extra : rebase_source : 195a322ce3e6fe933e72be4aec5d2ebfa1f54865
2017-04-17 18:25:26 +08:00
JW Wang 519fb03dfd Bug 1353607. P9 - change the underlying type of mCurrentPosition to TimeUnit. r=kikuo
MozReview-Commit-ID: ffquOIFlp3

--HG--
extra : rebase_source : 2f6e383a1995e91f395efb4d037e151a5a656248
extra : intermediate-source : 12403091f9cee42331e12eb13945b40d02dc842f
extra : source : 1149d57835c33231411692e74836fff37b3e74de
2017-03-28 18:13:22 +08:00
Kaku Kuo a2b8741937 Bug 1348432 - move the mMediaTracksConstructed flag back to MediaDecoder; r=jwwang
This mMediaTracksConstructed flag should belong to a MediaDecoder,
every time a HTMLMediaElement switches its MediaDecoder, the flag should be reset to false again.

So, we move the mMediaTracksConstructed flag back to MediaDecoder, by this way,
HTMLMediaElement provides only the mechanism to construct and remove media tracks,
and MediaDecoder uses the flag, mMediaTracksConstructed, to provide policy.

MozReview-Commit-ID: L7mMAmLjQCy

--HG--
extra : rebase_source : 1625d604afb34bffe79eda06a46c9feb780a14d9
2017-03-18 22:34:01 +08:00
Kaku Kuo 0696209786 Bug 1347892 part 2 - pass the visibility state of media element to media decoder as a Visibility variable; r=jwwang
MozReview-Commit-ID: AbkJeIpYZlN

--HG--
extra : rebase_source : 3ace472786b9b9900b125164996819b6d6e3627f
2017-03-17 12:51:11 +08:00
Kaku Kuo b7fee84e84 Bug 1347402 part 4 - move ConstructMediaTracks/RemoveMediaTracks to HTMLMediaElemnt; r=jwwang
ConstructMediaTracks and RemoveMediaTracks are actually HTMLMediaElement's responsibilities.

MozReview-Commit-ID: 8lOdzD4pN7N

--HG--
extra : rebase_source : 7159d2c62b77429e5b2305b9e3eb7a0020a3b52c
extra : source : 0467c059be3cd8f066da5fc912b7738a5b9c4dd9
2017-03-15 17:33:21 +08:00
Kaku Kuo a1edb1f6ed Bug 1346116 part 2 - consider a video is in-tree or not in the suspend-video-decoding policy; r=jwwang
We never suspend videos that is NOT in-tree because we found that, according to the Telemetry data, most (>70%) videos
which are used as the argument of drawImage() are not in-tree. So, by preventing suspending not-in-tree videos, we should
be able to alleviate the pain of not able to resume video decoders synchronously.

MozReview-Commit-ID: 8eqs0pHZLIt

--HG--
extra : rebase_source : 964c0047753696cad2e40bcf74c2b8ee9faccdea
extra : source : 93c38caa15b1a29f8f1e8e6d3a5e859f97bc1aae
2017-03-12 14:02:04 +08:00
Kaku Kuo 7e43b9cace Bug 1346498 part 9 - move all policy codes into MediaDecoder::UpdateVideoDecodeMode(); r=jwwang
Make HTMLMediaElement no longer has logic of deciding visibility, it just passes all information into MediaDecoder.

MozReview-Commit-ID: ApVcEQfboO

--HG--
extra : rebase_source : 88c70b0cf1933d9cf814359909463a811be2ab9f
extra : source : 669d1340d3c93d3e0eab55ce87693f842cf40247
2017-03-11 19:56:17 +08:00
Kaku Kuo 062129aebf Bug 1346498 part 6 - remove mHasSuspendTaint cannonical-mirror pair; r=jwwang
MozReview-Commit-ID: BqAfv9CSsv3

--HG--
extra : rebase_source : 61d8ab0494986b780b79ea9350c9d0b52f70a382
extra : source : 6d92d52bdc7688c76fc5f55853a9fa07b3875b44
2017-03-11 15:12:38 +08:00
Kaku Kuo 68c95368f5 Bug 1346498 part 4 - remove mIsVisible cannonical-mirror pair; r=jwwang
The role of MDSM::mIsVisible and MDSM::VisibilityChanged() have been replaced by
the MDSM::mVideoDecodeMode and MDSM::VideoDecodeModeChanged() completely.

MozReview-Commit-ID: 8sW0s8ilF1E

--HG--
extra : rebase_source : 20f4b0c2e5a34018b3189b4d10dd55e68881c0e7
extra : source : 2eba9a76da70749583125176e8b7c6c959b74d38
2017-03-11 14:06:09 +08:00
Kaku Kuo c2f38bd02d Bug 1346498 part 3 - implement the UpdateVideoDecodeMode() policy in MediaDecoder; r=jwwang
So, the MediaDecoder is the one who rules out the policy of suspending video decoder.
We also extract all the policy rules into one single method, MediaDecoder::UpdateVideoDecodeMode().

MozReview-Commit-ID: IOQq6kFfkIs

--HG--
extra : rebase_source : 3d92c63aed2545391c45cdd7c1236d5df0b8d2f8
extra : source : 9c6c5f22d25171a206e828faa2c7c91d47f748f1
2017-03-10 16:52:03 +08:00
Kaku Kuo 64305205ed Bug 1346498 part 1 - extract the MediaDecoder::NotifyCompositor() method; r=jwwang
MozReview-Commit-ID: Hfw3FJUSVVe

--HG--
extra : rebase_source : 738cb2e341ab03d0dc189facc950314c29a3721b
extra : source : 63f67483e45c8a73eda772f264d2424a1049320f
2017-03-10 16:29:59 +08:00
Kaku Kuo 3c60cdbdf5 Bug 1345403 part 1 - Track decoder tainting; r=jwwang
Some uses of media elements should 'taint' the element so that the video doesn't participate in video decode suspending.
Add the infrastructure to track the taint status on MediaDecoder and mirror the status to MediaDecoderStateMachine.

MozReview-Commit-ID: Ik6aDIzrZaO

--HG--
extra : rebase_source : 31fdddabdc62cb8c59db19c1f466f674ef503ee8
extra : intermediate-source : 906cb039bea3e5ac6c1ec852209db28be60ba201
extra : source : 1ac0f1b9264706f65e04528757bd60028331d31f
2017-03-08 19:28:13 +08:00
Iris Hsiao bdff9504ef 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 af6e44d1d0 Bug 1345403 part 1 - Track decoder tainting; r=jwwang
Some uses of media elements should 'taint' the element so that the video doesn't participate in video decode suspending.
Add the infrastructure to track the taint status on MediaDecoder and mirror the status to MediaDecoderStateMachine.

MozReview-Commit-ID: Ik6aDIzrZaO

--HG--
extra : rebase_source : 1dfdedea63d18918ef7b529a87f3afeb1592b149
extra : source : 1ac0f1b9264706f65e04528757bd60028331d31f
2017-03-08 19:28:13 +08:00
JW Wang 553e846993 Bug 1331070 - delay seek request until decoding first frames for non-MSE media. r=kaku
See see bug 1321198 comment 17. This is a workaround to alleviate the issue
which seems to happen on win8 x64 opt only.

MozReview-Commit-ID: Lr4viEjuFkC

--HG--
extra : rebase_source : 99895cf6f6f13d5f4d698f76db7acda15d8cee77
2017-02-08 18:15:28 +08:00
JW Wang f40aaeaffc Bug 1336356 - Ensure MediaDecode::Shutdown() is called by MediaShutdownManager::BlockShutdown(). r=gerald
MozReview-Commit-ID: 80AFMafXoeB

--HG--
extra : rebase_source : 8b51b6c9fe4b83b4639c7ae081854307c4308391
extra : source : 7ca33be035c12485e0d6529c529b0cda914fd405
2017-02-03 17:12:38 +08:00
Jean-Yves Avenard b7844bd5c3 Bug 1319987: P9. More coding style fixes. r=gerald
MozReview-Commit-ID: DhFRqkWQZny

--HG--
extra : rebase_source : 03ed44efc83fe9cab7fc975229ac4e5746aff96b
2017-01-27 13:20:37 +01:00
Carsten "Tomcat" Book f040eda61d Merge mozilla-central to autoland 2017-01-23 11:42:26 +01:00
JW Wang e13e207c12 Bug 1332544 - replace use of mOwner with GetOwner() which provides more checks. r=gerald
MozReview-Commit-ID: DUTO4vR2kjU

--HG--
extra : rebase_source : 5edfabb169efdc0be938ed85d68d42f8694280d1
2017-01-20 11:47:53 +08:00
JW Wang 4963f39de0 Bug 1331862. Part 2 - add functions to collect debugging info asynchronously. r=kaku
MozReview-Commit-ID: 4btaZqUqyLn

--HG--
extra : rebase_source : 80289bb88f7359062575e2b7f7da06e00f78cd51
extra : source : 7e011787cb911799f47b55aeba986bf05c30ed27
2017-01-19 14:18:41 +08:00
JW Wang da6c0492b0 Bug 1331862. Part 1 - extract code to functions for reuse. r=kaku
MozReview-Commit-ID: 9QNTaBxGUFq

--HG--
extra : rebase_source : 98e95c60cbd66a5df4571644e4a6415f5bdbc371
extra : intermediate-source : 9dcd71ff0f89beda838f09865dfaa7f96983e430
extra : source : b0cf54f37556f520e45a001dcfa681e4a612a927
2017-01-18 17:55:59 +08:00
Bevis Tseng f2bdbd8fd1 Bug 1314833 - Part 2.1: Factor out AbstractThread::MainThread() used in Media Playback. r=billm,jwwang
MozReview-Commit-ID: 9yJi3iDtVZG

--HG--
extra : rebase_source : 39c720ccc576ed9247b5e8abb70d99d7873b3ad6
2016-11-29 13:03:36 +08:00
JW Wang 992114f5fd Bug 1332160 - use nsCString internally whenever possible. r=gerald
MozReview-Commit-ID: 1DUaJWfbL88

--HG--
extra : rebase_source : f4a02736b0385e4be6258a185822f7855d0b0189
extra : intermediate-source : 1faaf4254a2e1ce2c096a8650b66d07c84c7fdbe
extra : source : c23fc2cea382627af8ff20ae3edea926eaa6d51a
2017-01-18 16:51:31 +08:00
JW Wang fec54be7a5 Bug 1332146 - use stronger assertions in MediaDecoder.h r=kaku
MozReview-Commit-ID: 60umMQWhead

--HG--
extra : rebase_source : 0bdffc01444e11478b3d4395ea2342bc5cd3a559
2017-01-19 10:42:29 +08:00
JW Wang f4605f76d9 Bug 1328836 - Remove MDSM::DispatchMinimizePrerollUntilPlaybackStarts. r=kaku
MozReview-Commit-ID: 1EGHVhZqUTA

--HG--
extra : rebase_source : c90c245683c50364d869566540f47927e0f64d04
extra : intermediate-source : ceb0660e9f35a0dbbd361a4dc4eb6bcef8add385
extra : source : e1dfbdac70feedc99a950c00aeda683e38919247
2017-01-05 17:59:19 +08:00
JW Wang 8c79a1d34c Bug 1326294 - this is a debugging patch which checks if mOwner points to a valid media element object. r=gerald
MozReview-Commit-ID: HRUigVOLdx

--HG--
extra : rebase_source : d44b4315a34b60c1d1a6ba98730a938ed375a937
2017-01-04 16:18:37 +08:00
JW Wang acf75cb684 Bug 1317576. Part 4 - remove unused MediaDecoder::SeekResolveValue. r=cpearce
MozReview-Commit-ID: 9H6e0gFvWeT

--HG--
extra : rebase_source : 268efe92dda716f73a83493a4b3deaa599118fd6
extra : source : 972ed89cd3fb09004424d42c08c806a789c67361
2016-11-14 17:00:53 +08:00
JW Wang c1b6a6bf65 Bug 1317576. Part 3 - remove unused parameter/member. r=cpearce
MozReview-Commit-ID: Ff6a8MKVY8q

--HG--
extra : rebase_source : f89010012e2c5b728109282f640398cde196ab03
extra : source : 66baa9041276b503101651c118f4c6fe0c769db1
2016-11-14 16:47:07 +08:00
JW Wang c2bf477b21 Bug 1314884. Part 7 - remove SeekResolveValue::mEventVisibility for we always assume MediaDecoderEventVisibility::Observable in P6. r=kaku
MozReview-Commit-ID: 8jUaFPkQQxA

--HG--
extra : rebase_source : 4e3794979ec05c588458ed72472252910d1642b9
extra : source : 565d6e04892b0d8ea7fcd34d5d279f63ec21d245
2016-11-03 15:59:02 +08:00
Wes Kocher 008fdd9329 Merge inbound to central, a=merge 2016-11-08 13:58:20 -08:00
Matt Woodrow 9775890c70 Bug 1315581 - Notify MediaFormatReader when the compositor gets recreated. r=jya,smaug,jw_wang 2016-11-08 15:23:12 +13:00
JW Wang 62729fbd51 Bug 1314552. Part 2 - remove unused canonical. r=jya
MozReview-Commit-ID: FW6Wj1iiadS

--HG--
extra : rebase_source : cec5bf88a93732a83d358694d8fc91edb2c1dfb7
extra : intermediate-source : cbca4d33e07b848a83ead858c0299bcafdd5de71
extra : source : 183a602e6fd20c9bbdee3f27c0845b7f9aa00954
2016-11-02 17:23:37 +08:00
JW Wang 2639894677 Bug 1314547. Part 2 - remove unused public functions. r=cpearce
MozReview-Commit-ID: 2PndXBXmwRv

--HG--
extra : rebase_source : ede08db67cc25ffed00cc22409dc3346db81a3fb
extra : source : 7cee8e95c52a4f23bce6475c160961c42e518f22
2016-11-02 17:16:59 +08:00
JW Wang f4ec5c59a1 Bug 1314535. Part 2 - remove unused canonical. r=jya
MozReview-Commit-ID: CLLYtFHsYBc

--HG--
extra : rebase_source : e0f23f918114e70650827adc1db1c44d25d6b4e7
extra : source : 96806600d1c65ae1f236588e8917851d2429783e
2016-11-02 16:47:51 +08:00
JW Wang 7ea7732b4a Bug 1314529. Part 2 - remove MediaDecoder::SetMediaSeekable(). r=cpearce
MozReview-Commit-ID: 6JJrKi3KTll

--HG--
extra : rebase_source : f12b55befd8264a076f393f7e44e77f1f843fbea
extra : source : 1f4a048de0f8c75d7aab8396f50c197afdae7d38
2016-11-02 14:41:04 +08:00
JW Wang c230fcac69 Bug 1314527 - Remove unused MediaResourceCallback::SetMediaSeekable. r=bechen
MozReview-Commit-ID: 9M47sUiE1Ss

--HG--
extra : rebase_source : 79d953d32afe106b085d405f48a55f647d865bfa
extra : source : 67324546b238ab667d69288496fc0b70856f75bf
2016-11-02 14:29:54 +08: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
Ehsan Akhgari d5d66e16c9 Bug 1311214 - Remove b2g OMX encoder/decoder; r=cpearce 2016-10-19 17:44:31 -04:00
JW Wang 8399d361ac Bug 1304651 - Remove MediaDecoder::mPausedForPlaybackRateNull. r=kikuo
MozReview-Commit-ID: 7SIKYfDPCxG

--HG--
extra : rebase_source : 9ee1a39e0e9b48fb7f1a8f71c85b825ced0da04c
2016-09-22 17:02:48 +08: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
Gerald Squelart 2b00ac4132 Bug 1247056 - Notify MediaDecoder about Decoder Doctor events from MDSM - r=jwwang
MozReview-Commit-ID: Jgt5a2yJugu

--HG--
extra : rebase_source : 2c8bfb9e7ce6dd69ef5a31b1737e5f314d14cad7
2016-09-19 03:38:06 -07:00
JW Wang 5fd2401d63 Bug 1304336. Part 2 - remove unused canonical/mirror. r=kikuo
MozReview-Commit-ID: 9rQcTTrW4Cn

--HG--
extra : rebase_source : 5473db2bd2f7da5a6536368cd78deac1ea0cde8c
2016-09-21 18:11:00 +08:00
Jean-Yves Avenard 00e8a7dabc Bug 1299072: P9. Pass decoding error details to MediaDecoder. r=jwwang
MozReview-Commit-ID: uXWHhTozon

--HG--
extra : rebase_source : 7736b9d969dc680b08bffbc7610271d5cc0272be
2016-09-11 00:51:13 +10:00
JW Wang 6862b9379e Bug 1297301. Part 1 - Remove #ifdef MOZ_RAW. r=kentuckyfriedtakahe
MozReview-Commit-ID: LF4if8bZZGY

--HG--
rename : dom/media/raw/RawStructs.h => netwerk/protocol/device/RawStructs.h
extra : rebase_source : 96191a564754311200d6df36b1643990efa87e51
2016-08-24 11:02:37 +12:00
Jean-Yves Avenard 90f7e263a7 Bug 1297036: P3. Revert "Bug 1293646: [MSE] P2. Only reject a seek request with EOS if it's passed the explicit duration." r=gerald
This reverts commit 5a949eb358e27

Another more complete solution will follow.

MozReview-Commit-ID: K3lTdrBxW7W

--HG--
extra : rebase_source : d0f9443193b0816ae85972a4a368599b872fd437
2016-08-26 19:30:50 +12:00
Dan Glastonbury 0e76b94eb8 Bug 1297429 - Fix video suspend intermittent failures. r=jwwang
On Linux x64 PGO try, HTMLMediaElement was reliably invoking
decoder->NotifyOwnerActivityChanged() after SetVisible(false) was
called. This caused the pending suspend to be cancelled and the test
waits for an event that never arrives.

Fixed by adding 'forced hidden' to MediaDecoder that overrides the
element visibility that comes from HTMLMediaElement.

MozReview-Commit-ID: 5aRhxxZ5cZd

--HG--
extra : rebase_source : 5a4e1c44ddd2265eab545f8fe19c4ae47cebf7bf
2016-08-25 12:10:05 +10:00
bechen 931402dd2f Bug 1291629 - Remove RTSP code. r=jwwang
MozReview-Commit-ID: AxaLwO4rTuY

--HG--
extra : rebase_source : f8a5de1be1471238d62b6bbc419b3a45f2590da6
2016-08-10 10:32:25 +08:00
Jean-Yves Avenard 58cb3ab298 Bug 1293646: [MSE] P2. Only reject a seek request with EOS if it's passed the explicit duration. r=gerald
With MSE, the actual duration is always exact as it is amended when data is added. We do not want to fire ended when we attempt to seek to unbuffered data once endOfStream has been called. Instead we will fire the waiting event.

MozReview-Commit-ID: Cl2uBLk2qRQ

--HG--
extra : rebase_source : 6763c6f5a6e15264e276e486fab4d39491ea7f1b
2016-08-10 15:30:12 +10:00
JW Wang 2d84b3c90e Bug 1291633 - Don't call MediaDecoder::SeekingStarted when visibility is Suppressed. r=kaku
MozReview-Commit-ID: 15YOmFCoXGp

--HG--
extra : rebase_source : b5269f7a4883ff08dbfdb797df9eb78334315108
2016-08-03 17:18:54 +08:00
JW Wang aace2f0c8d Bug 1290809 - Remove MediaDecoder::IsEndedOrShutdown(). r=gerald
MozReview-Commit-ID: 4XUcJyQlmfk

--HG--
extra : rebase_source : fc2a044ca2776744ef0fff32300faf647666e73c
2016-08-01 15:22:32 +08:00
JW Wang 8ce157e06f Bug 1290364 - clear mOwner in Shutdown(). r=cpearce
MozReview-Commit-ID: 2CsYKcSrEOJ

--HG--
extra : rebase_source : 3fd60ea1dbbf57c168fa8cebb9bb5594ee8c19fb
2016-07-29 14:44:22 +08:00
JW Wang cff471d7a8 Bug 1283724 - throttle notifications from stochastic network activity to save computation of buffer ranges. r=jya
MozReview-Commit-ID: BRBv2Flqu3u

--HG--
extra : rebase_source : fe28566c79f2f31a5054e4cda35d96c938985299
2016-08-01 14:39:39 +08:00
JW Wang 32c54a1d7b Bug 1290028 - Remove the check for IsShutdown() from MediaDecoder::OwnerHasError(). r=gerald
MozReview-Commit-ID: Cg5UoFngxFr

--HG--
extra : rebase_source : afece4f66454cf7b2c68ede4b5802fc445be96fa
2016-07-28 17:21:09 +08:00
JW Wang 453c175228 Bug 1290780. Part 8 - Assert IsShutdown() is false in SetExplicitDuration(). r=kaku
It is called from MediaSourceDecoder::SetMediaSourceDuration() which asserts !IsShutdown().

MozReview-Commit-ID: LF8rRPZhkA2

--HG--
extra : rebase_source : 886778f70d00e8670a203e9d322e442c9d117a72
2016-07-28 16:54:53 +08:00
JW Wang cb02478192 Bug 1290780. Part 1 - Assert IsShutdown() is false in MediaDecoder::UpdateLogicalPosition(). r=kaku
1. Callbacks from the watch manager are disconnected in Shutdown().
2. It is called from MediaOmxCommonDecoder::NotifyOffloadPlayerPositionChanged() which will not happen after Shutdown().
3. It is called from MediaOmxCommonDecoder::ResumeStateMachine() which returns early when IsShutdown() is true.

MozReview-Commit-ID: COmPFaQzNTq

--HG--
extra : rebase_source : ac88698c66f4586b00fe62ad4dcdbb1cb4ce8542
2016-07-28 14:43:50 +08:00
JW Wang 85e1a73473 Bug 1289976. Part 8 - Remove the IsShutdown() check from UpdateReadyState(). The callback is disconnected by the watch manager in Shutdown(). r=kaku
MozReview-Commit-ID: xVSWdj1Q0y

--HG--
extra : rebase_source : 948f622c399e1c072b4c15730a7a8c5fbd2ec696
2016-07-27 10:59:23 +08:00
Carsten "Tomcat" Book a51910755e Backed out changeset f648be2df9ec (bug 1289976) 2016-07-30 19:52:27 +02:00
JW Wang 661f07a5d4 Bug 1289976. Part 8 - Remove the IsShutdown() check from UpdateReadyState(). The callback is disconnected by the watch manager in Shutdown(). r=kaku
MozReview-Commit-ID: xVSWdj1Q0y

--HG--
extra : rebase_source : 948f622c399e1c072b4c15730a7a8c5fbd2ec696
2016-07-27 10:59:23 +08: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
JW Wang 0b638406f0 Bug 1289004. Part 3 - Remove MediaDecoder::mShuttingDown. r=cpearce
MozReview-Commit-ID: DoJ4UFuyz2h

--HG--
extra : rebase_source : 531df3335548186338fc2eb5b5b4b0bb4cc6c101
extra : source : d4f4a98303c3ddc14986478aa44f137cce87af30
2016-07-13 16:48:27 +08:00
JW Wang 12fd7814cd Bug 1289004. Part 2 - Add MediaDecoder::IsShutdown(). r=cpearce
MozReview-Commit-ID: 50muOKcUqYi

--HG--
extra : rebase_source : d97e968c980dcc146824bb6703747f23b0a5b651
extra : source : 2ca76a5cecbb9c6ef107794eab32bb13633880a2
2016-07-13 16:45:30 +08:00
JW Wang 694dff250f Bug 1289004. Part 1 - Constify and devirtualize some functions. r=cpearce.
MozReview-Commit-ID: 8f14ekpinCR

--HG--
extra : rebase_source : ca1d62df789639817e4c7da01919783038db22f0
extra : source : 5dc15cac9b631fd10b03902b3ba627fd763a49aa
2016-07-13 16:35:37 +08:00
JW Wang db58db163a Bug 1288344. Part 2 - Remove MediaDecoder::mWasEndedWhenEnteredDormant. r=cpearce
MozReview-Commit-ID: edGkP9mv6L

--HG--
extra : rebase_source : 4833d10975c6dd241d41bf86f81b08a9fe76784c
2016-07-12 14:34:06 +08:00
JW Wang f090553820 Bug 1287350. Part 1 - extract some code to {Connect,Disconnect}Mirrors. r=jya.
MozReview-Commit-ID: Ayf109fFhRU

--HG--
extra : rebase_source : bff7df290062d40c40b61a05bc054fbfa9cd3ddc
2016-07-15 15:35:41 +08:00
Chris Pearce de045590ac Bug 1267918 - Add GMPCrashHelper for HTMLMediaElement. r=gerald
This ensures that unencrypted GMP decoding crash reporting works.

MozReview-Commit-ID: 84TAV5F9Ie0

--HG--
extra : rebase_source : c0bf3021be9fa0833a7b375967572f1019e4e279
2016-06-29 11:42:07 +12:00
JW Wang f7267b13db Bug 1274030 - clean VideoFrameContainer when "xpcom-shutdown" event received. r=cpearce
MozReview-Commit-ID: 92zeiNXSkjf
2016-05-22 21:39:55 +08:00
Kaku Kuo 9ace015fa5 Bug 1276272 - part 3 - implement promise-based HTMLMediaElement::seekToNextFrame(); r=jwwang
MozReview-Commit-ID: JaUQe5GK6bF

--HG--
extra : rebase_source : 63ffb58ca29776757cd869579e149a4330311e08
2016-06-09 20:27:39 +01:00
JW Wang 006ae9baa3 Bug 1193124 - Ensure logical position is updated after seek. r=jwwang
MozReview-Commit-ID: KD4ylXbaDfu

--HG--
extra : rebase_source : c3e856ce515eeeec17b0dd9c64332fcff4d6deb5
2016-04-18 18:57:47 +08:00
Dan Glastonbury 78730160f5 Bug 1224973 - Part 3: Plumb element visibility into MDSM. r=jya,jwwang
change MediaDecoder::mIsVisible to be a Canonical<bool> and plumb through to
the MediaDecoderStateMachine.  This will be used to trigger suspending the
decoding of video frames.

MozReview-Commit-ID: F3Dpf0ogE7c
2016-05-12 09:53:51 +10:00
Dan Glastonbury 9f98a19f8c Bug 1224973 - Part 2: Set MediaDecoder visibility via NotifyOwnerActivityChanged. r=cpearce,jwwang
Make MediaDecoder::SetElementVisibility private.

MozReview-Commit-ID: GjCuSNPalkE
2016-05-12 09:53:02 +10:00
Dan Glastonbury d4be2cf480 Bug 1224973 - Part 1: Remove MediaDecoderOwner->IsHidden(). r=cpearce,jwwang
Used only by dormant mode calculations, remove IsHidden() and replace with
mIsVisible in MediaDecoder.

MozReview-Commit-ID: CksjiXsbsrb
2016-05-12 09:52:43 +10:00
JW Wang 0a9e6a6567 Bug 1267933 - rewrite the shutdown sequence of MediaShutdownManager. r=jya,gerald.
MozReview-Commit-ID: 8n7JlXOby0z
2016-05-04 16:13:25 +08:00
JW Wang 94b009f556 Bug 1265978. Part 2 - add methods to MediaDecoder and MDSM to dump debugging info. r=jya.
MozReview-Commit-ID: Dbc5FT627uL
2016-04-22 14:18:26 +08:00
Andreas Pehrson e1b8d01dd1 Bug 1208371 - Hook up DecodedStream with PrincipalHandle. r=mt,jwwang
MozReview-Commit-ID: 1LmiFyfjhsr

--HG--
extra : rebase_source : e1ceca65cd1f5ff64ab6fff8fafc1ddd08f44b87
2016-02-02 13:14:13 +08:00
Bryce Van Dyk 939ab2b661 Bug 657791 - Update seekable range handling for cueless WebMs. r=kinetik
MediaDecoder previously had 3 states within GetSeekable(), media is either
seekable, seekable but not supported by transport, or not seekable. Due to
changes to make cueless webms playable, a 4th option is needed: a file that is
not fully seekable, but may support seeking from the transport, such as these
webms, should only be seekable in the buffered range.

MozReview-Commit-ID: ISeFkngtrGU
2016-02-04 17:31:21 +13:00
Eugen Sawin c0b51aec88 Bug 1255050 - [1.1] Restrict media plugin decoder usage to Android ICS. r=snorp 2016-03-10 23:14:13 +01:00
Jean-Yves Avenard 53c49526d6 Bug 1246521: P2. Add MediaDecoder::OwnerHasError method. r=gerald 2016-02-08 16:38:26 +11:00
Jean-Yves Avenard 83fff9be79 Bug 1243608: P2. Pass the full SeekTarget object to MediaDecoderReader::Seek. r=cpearce
This will allow the reader to know if we are performing a fast seek.
2016-02-02 18:57:12 +11: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 58d924fab9 Bug 1236703: P2. Add methods to retrieve debugging data on plain readers. r=jwwang 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
Ralph Giles c34de716dc Bug 1175319 - Remove outdated MDSM documenation. r=jya DONTBUILD
Rebased patch by Chris Double.
2016-01-11 17:43:12 -08:00
JW Wang 4627500b49 Bug 1237616 - Remove the aForceBuffering arugment from MediaDecoder::Resume(). r=cpearce. 2016-01-12 08:04:32 +08:00
Jean-Yves Avenard 3c25c690a7 Bug 1207220: Ensure MediaShutdownManager waits until all MediaDecoder have completed their shutdown. r=cpearce
XPCOM when shutting down expects all tasks to be run synchronously. As such, we must ensure that the remaining MediaDecoder are shut down before continuing on the next task.
In particular destroying gfxPlatforms must only ever happen after, as it is possible for the MediaDecoderReader to make use of gfx resources during shutdown.
2016-01-05 11:55:50 +11:00
Jean-Yves Avenard 8f79430f0e Bug 1234092: P1. Remove GStreamer support. r=kentuckyfriedtakahe
It was now unused by default.
2015-12-23 01:14:22 +11:00
Chris Peterson 90c0e0da61 Bug 1232223 - Part 3: Remove MOZ_WAVE #ifdefs because Wave is always supported. r=jya 2015-12-18 00:51:16 -08:00
Chris Peterson 88051371a9 Bug 1232223 - Part 1: Remove MOZ_WEBM #ifdefs because WebM is always supported, though not necessarily enabled. r=jya r=glandium 2015-12-12 13:49:07 -05:00
JW Wang 84171dfe8c Bug 1230004. Part 2 - have MDSM::BeginShutdown return a promise and remove MDSM::mDecoder. r=cpearce. 2015-12-03 15:59:44 +08:00
JW Wang a62c25461b Bug 1230004. Part 1 - cache data in MDSM so it won't need to ask MediaDecoder. r=cpearce. 2015-12-03 15:59:30 +08:00
Jean-Yves Avenard d77e4129ea Bug 1194624: [MSE] P3. Determine when canplaythrough can be fired. r=jwwang
We assume that if we have 30s of data buffered ahead of the current position or up to the element's duration that we can play ahead without interruption.
2015-12-03 19:22:06 +11:00
Jean-Yves Avenard dc75044746 Bug 1229256: P2. Use buffered range to determine next frame availability. r=jwwang
To avoid potential regression with some of our tests expecting our old particular behaviour, we only use the buffered range to determine the next frame status if the old method determined that the next frame was unavailable due to the MediaDecodeStateMachine not having decoded the next frame yet.
2015-12-03 12:38:10 +11:00
JW Wang e4cbe0c128 Bug 1228939 - 1. add mSeekable to MediaInfo. 2. use MediaEventSource to notify the decoder when the media is not seekable. 3. remove unused code. r=jya. 2015-12-02 15:42:32 +08:00
JW Wang f304127126 Bug 1228923 - Merge some MediaEventSource for MDSM. r=jya. 2015-12-01 09:34:02 +08:00