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
JW Wang
6e21f29356
Bug 1227797 - Use MediaEventSource to publish playback events for MDSM. r=jya.
2015-11-30 13:06:19 +08:00
Benjamin Chen
9008199c76
Bug 1198576 - Remove MediaCodecReader. r=bwu
2015-11-25 16:18:01 +08:00
Chris Pearce
cea22429d5
Bug 1226450 - Report audio/video codecs used in HTMLMediaElement and WebAudio via telemetry. r=jya
2015-11-25 12:52:48 +13:00
JW Wang
328ebd72a1
Bug 1226569. Part 1 - Use MediaEventSource to publish MetadataLoaded and FirstFrameLoaded events. r=jya.
2015-11-23 10:35:18 +08:00
JW Wang
b194bb0f80
Bug 1219163. Part 2 - Move some functions that are never called from the interface of AbstractMediaDecoder down the class hierarchy. r=jya.
2015-11-23 10:26:49 +08:00
JW Wang
a7be18a6e3
Bug 1219163. Part 1 - Remove unused functions from AbstractMediaDecoder. r=jya.
2015-11-23 10:19:04 +08:00
Jean-Yves Avenard
3fbc97331d
Bug 1209388: [mp3] Remove AppleMP3Reader. r=kentuckyfriedtakahe
...
Following bug 1209410, it was no longer used.
2015-11-19 10:40:33 +11:00
JW Wang
fbb85ac25a
Bug 1219142. Part 1 - add AbstractMediaDecoder::DataArrivedEvent() to publish events. r=jya.
2015-11-18 09:00:56 +08:00
JW Wang
14c8d627dd
Bug 1221009. Part 2 - remove unused code. r=roc.
2015-11-16 07:51:03 +08:00
JW Wang
c87926273d
Bug 1221009. Part 1 - add a class to forward notifications from MediaResource to MediaDecoder. r=roc.
2015-11-16 07:50:55 +08:00
JW Wang
8dedbfa33d
Bug 1223599 - Remove the throttling argument from AbstractMediaDecoder::NotifyDataArrived(). r=jya.
2015-11-11 17:59:16 +08:00
JW Wang
4f2d0e76bc
Bug 1220558. Part 1 - remove unused arguments from MediaDecoderReader::DispatchNotifyDataArrived() and its callees/callers. r=jya.
2015-11-11 07:43:38 +08:00
JW Wang
89a23d426c
Bug 1219169. Part 1 - Remove AbstractMediaDecoder::OnStateMachineTaskQueue(). r=jya.
2015-11-02 10:36:48 +08:00
JW Wang
a7589ce310
Bug 1218280. Part 1 - create MediaResourceCallback for MediaResource to send notifications. r=roc.
2015-10-27 10:28:26 +08:00
JW Wang
dd444c1fe0
Bug 1216031 - Make MediaDecoder::mVideoFrameContainer const. r=kinetik.
2015-10-21 10:48:20 +08:00
JW Wang
f4b4ec1c67
Bug 1215023. Part 2 - remove null check of mOwner. We check mShuttingDown to know whether it is valid to call functions of mOwner. r=kinetik.
2015-10-19 13:55:38 +08:00
JW Wang
6d842ecf29
Bug 1215023. Part 1 - make MediaDecoder::mOwner a const member. We will check mShuttingDown before calling functions of mOwner. r=kinetik.
2015-10-19 13:55:26 +08: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
JW Wang
5147e1f0af
Bug 1214989. Part 3 - remove MediaDecoder::Init() and its callers. r=gerald.
2015-10-15 11:39:45 +08:00
JW Wang
e868f91ff6
Bug 1214989. Part 2 - add MediaDecoderOwner to Clone() and overrides. r=gerald.
2015-10-15 11:37:47 +08:00
JW Wang
e470e1616d
Bug 1214989. Part 1 - add MediaDecoderOwner to the constructors of MediaDecoder and sub-classes. r=gerald.
2015-10-15 11:36:21 +08:00
Eric Rahm
88d7e6c28e
Bug 1190592
- Part 1: Add mediasource memory reporter. r=jya
...
This adds asyncrounous reporting of MSE resources.
2015-08-20 18:10:33 -04: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
JW Wang
a072559a2a
Bug 1212701. Part 1 - remove AbstractMediaDecoder::OnDecodeTaskQueue(). r=jya.
2015-10-12 12:05:49 +08:00
JW Wang
a890d8c667
Bug 1146482 - remove MediaDecoder::mReentrantMonitor which is not used anymore. r=jya.
2015-10-07 14:53:22 +08:00
JW Wang
aadc51ecc8
Bug 1211766 - Remove AbstractMediaDecoder::GetReentrantMonitor(). r=jya.
2015-09-30 07:04:49 +08:00
Jean-Yves Avenard
04cdb572f3
Revert "Bug 1209388: [mp3] Remove AppleMP3Reader. r=kentuckyfriedtakahe" r=me
...
This reverts commit ecbe6589d36e
May be better of waiting a little bit in case we find that the new MP3Demuxer isn't up to scratch
2015-10-02 19:24:54 +10:00
Jean-Yves Avenard
b2c18c37f4
Bug 1209388: [mp3] Remove AppleMP3Reader. r=kentuckyfriedtakahe
...
Following bug 1209410, it was no longer used.
2015-10-02 18:44:34 +10:00
JW Wang
fd23a5e794
Bug 1208933 - Remove AbstractMediaDecoder::NotifyWaitingForResourcesStatusChanged(). r=jya.
2015-09-27 21:02:18 +08:00
JW Wang
489900ad10
Bug 1208922. Part 4 - remove AbstractMediaDecoder::GetCDMProxy() and devirtualize MediaDecoder::SetCDMProxy(). r=cpearce.
2015-09-27 18:59:08 +08:00
JW Wang
401634bd83
Bug 1208922. Part 1 - add MediaDecoder::RequestCDMProxy() which resolves when a CDMProxy is set and capabilities are known. The client code won't need to handle the situation where a CDMProxy is set but capabilities are still unknown. This simplifies the client code a lot. r=cpearce.
2015-09-27 18:39:37 +08:00
JW Wang
3b34b7fda2
Bug 1207017. Part 2 - remove duplicated GetStateMachine(). r=kinetik.
2015-09-22 13:57:36 +08:00
JW Wang
9f60378309
Bug 1206574 - Remove AbstractMediaDecoder::IsShutdown(). r=cpearce.
2015-09-22 10:56:17 +08:00
JW Wang
9fd579e930
Bug 1204430. Part 2 - mirror MediaDecoder::mMediaSeekable. r=kinetik.
2015-09-21 13:49:01 +08:00
Kilik Kuo
90420c357e
Bug 1204882 - Move MediaDecoder::FrameStatistics out of MediaDecoder for easier use in other classes. r=jwwang
...
--HG--
extra : transplant_source : 3%E1%C1%3B%B5%8B%82%20%DF%AE%1A%21%E0f%FF%7C%3C%0EF%10
2015-09-15 22:57:20 +08:00
JW Wang
0f170dcc0b
Bug 1203877 - Remove MediaDecoder::UpdatePlaybackOffset. r=kinetik.
2015-09-15 13:51:12 +08:00
JW Wang
991d089255
Bug 1203418. Part 1 - cache the results of ComputePlaybackRate() so they can be mirrored by MDSM. r=cpearce.
...
Since the results of ComputePlaybackRate() depend on mDuration and mPlaybackStatistics,
we call ComputePlaybackRate() when mDuration is changed or mPlaybackStatistics->Stop() is called.
GetStatistics() won't have to call ComputePlaybackRate() because the results are already stored in
mPlaybackBytesPerSecond and mPlaybackRateReliable.
We will fix the MDSM part in the next patch.
2015-09-15 10:04:50 +08:00
JW Wang
4fecfe3ea1
Bug 1203374. Part 1 - extract the code of computing canplaythrough so it is reusable. r=jya.
...
1. extract MediaDecoder::Statistics to its own file.
2. sort out include orders of MediaDecoderStateMachine.cpp
2015-09-10 16:37:26 +08:00
JW Wang
b853505d1f
Bug 1199155. Part 2 - fix includes and forward declarations. r=roc.
2015-09-07 19:32:04 +08:00
JW Wang
d5b1c53fd7
Bug 1195158. Part 5 - 1. Fix insufficient includes and sort out include order. 2. Only disconnect |mTimedMetadataListener| when the state machine is created. r=cpearce.
2015-09-07 11:39:46 +08:00
JW Wang
7cab08fca3
Bug 1195158. Part 4 - remove unused code. r=cpearce.
2015-09-07 11:39:16 +08:00
JW Wang
09c4ea2b2e
Bug 1195158. Part 3 - connect listeners. r=cpearce.
...
a. MediaMetadataManager is connected to MediaDecoderReader::mTimedMetadataEvent to receive TimedMetadata events.
b. OggReader publish TimedMetadata events through MediaDecoderReader::mTimedMetadataEvent.
c. MDSM calls MediaMetadataManager::DispatchMetadataIfNeeded to publish metadata if playback positoin reaches the publish time.
d. MediaDecoder is connected to MediaMetadataManager::mTimedMetadataEvent to receive TimedMetadata events.
e. MediaDecoder updates its metadata when TimedMetadata events are received.
2015-09-07 11:38:34 +08:00
JW Wang
3a7d265755
Bug 1193603. Part 2 - Fix miscalculation in converting micro seconds to seconds. r=jya.
2015-08-12 18:02:34 +08:00
JW Wang
c8f63ccc7b
Bug 1191684 - Remove unnecessary calls to NotifyAll() on the decoder monitor since no one calls Wait(). r=cpearce.
2015-08-10 09:54:48 +08:00
JW Wang
c1624b854e
Bug 1191173 - Mirror MediaDecoder::mSameOriginMedia in MDSM. r=jya.
2015-08-06 18:05:30 +08:00
Benjamin Chen
69e26539a4
Bug 1186752
- Remove ScheduleStateMachine() in MediaDecoder.cpp since we have state mirror. r=jwwang
2015-07-23 18:39:09 +08:00
Paul Adenot
f7bb3fd5bd
Bug 1156472 - Part 7 - Allow to un-capture an HTMLMediaElement. r=pehrsons,jwwang
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
62ea7fce4b
Bug 1156472 - Part 7 - Allow to un-capture an HTMLMediaElement. r=pehrsons,jwwang
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
27a91916bf
Bug 1156472 - Part 7 - Allow to un-capture an HTMLMediaElement. r=pehrsons,jwwang
2015-07-24 14:28:17 +02:00
JW Wang
e025bd63c4
Bug 1185892. Part 3 - replace all calls to MediaDecoder::IsExpectingMoreData() with MediaResource::IsExpectingMoreData. r=jya.
2015-07-22 20:58:00 +08:00
JW Wang
2a7a82a4ed
Bug 1183518. Part 2 - Move update of mIgnoreProgressData to main thread. r=cpearce.
2015-07-20 14:34:18 +08: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
Bobby Holley
997543e6ba
Bug 1184634
- Rename MediaTaskQueue to TaskQueue. r=gerald
2015-07-16 22:23:06 -07:00
Bobby Holley
407d2c5f90
Bug 1184634
- Rename MediaPromise to MozPromise. r=gerald
2015-07-16 22:21:56 -07:00
JW Wang
ca9b1829a7
Bug 1184010 - Put Mirrors/Canonicals together. r=jya.
2015-07-17 13:00:26 +08:00
Chris Pearce
4471953140
Bug 1182928 - Disable dormant mode for EME videos in Firefox Beta and Release. r=sotaro
2015-07-14 12:17:07 +12:00
Bobby Holley
cfc2efb3e7
Bug 1179499 - Dispatch NotifyPlayback{Started,Stopped}. r=jww
2015-07-02 19:26:24 -07:00
Bobby Holley
bb1f9a0082
Bug 1179499 - Assert NS_IsMainThread on a bunch of MediaDecoder methods. r=jww
2015-07-02 19:26:24 -07:00
Bobby Holley
7ff89b25af
Bug 1178938 - Mirror shutdown-ness from the MDSM to the MD. r=jww
2015-07-02 12:38:44 -07:00
Bobby Holley
2324e58fb3
Bug 1178437 - Do the dormant-enabled tracking on the main thread. r=jww,r=jya
...
This is purely a question of policy, so there's no reason it needs to live on
the off-main-thread decoding machinery.
2015-07-01 18:47:41 -07:00
JW Wang
fdfaf1fa60
Bug 1178680 - Remove MediaDecoder::Observe as we have MediaShutdownManager. r=cpearce.
2015-07-01 11:46:38 +08:00
Bobby Holley
3985c88eb7
Bug 1175768 - Throttle NotifyDataArrived. r=jya
2015-06-27 01:19:14 -07:00
Bobby Holley
a80e87862b
Bug 1175768 - Use mirroring for buffered ranges. r=jya
2015-06-27 01:19:13 -07:00
Bobby Holley
f25ea07acc
Bug 1175768 - Dispatch NotifyDataArrived and remove the aBuffer argument. r=jya
...
It would be nice to remove the argument in a separate patch, but we can't
perform MediaResource reads on the main thread, so the SilentReadAt stuff
needs to happen at the same time as the off-main-thread stuff.
2015-06-27 01:19:10 -07:00
Bobby Holley
a269ea96b4
Bug 1175768 - Dispatch UpdateEstimatedMediaDuration. r=jya
...
NotifyDataArrived will soon run off-main-thread, so the assumptions here won't hold.
2015-06-27 01:19:07 -07:00
Ryan VanderMeulen
d9ca5de3ed
Backed out 8 changesets (bug 1175768) for frequent media test failures.
...
Backed out changeset a369cfb95b59 (bug 1175768)
Backed out changeset e02dd312d622 (bug 1175768)
Backed out changeset 6776ce74b9e5 (bug 1175768)
Backed out changeset 6aa5fa1d318e (bug 1175768)
Backed out changeset a8bd7a0d2aea (bug 1175768)
Backed out changeset 41ffc9a9ac48 (bug 1175768)
Backed out changeset 2d2cefa397dc (bug 1175768)
Backed out changeset 4e06368496d2 (bug 1175768)
CLOSED TREE
2015-06-23 16:20:15 -04:00
Bobby Holley
6925b1f100
Bug 1175768 - Throttle NotifyDataArrived. r=jya
2015-06-22 22:53:09 -07:00
Bobby Holley
5c20ea36aa
Bug 1175768 - Use mirroring for buffered ranges. r=jya
2015-06-22 22:53:09 -07:00
Bobby Holley
23c16e6894
Bug 1175768 - Dispatch NotifyDataArrived and remove the aBuffer argument. r=jya
...
It would be nice to remove the argument in a separate patch, but we can't
perform MediaResource reads on the main thread, so the SilentReadAt stuff
needs to happen at the same time as the off-main-thread stuff.
2015-06-22 22:53:07 -07:00
Bobby Holley
56422fb439
Bug 1175768 - Dispatch UpdateEstimatedMediaDuration. r=jya
...
NotifyDataArrived will soon run off-main-thread, so the assumptions here won't hold.
2015-06-22 22:53:06 -07:00
Bobby Holley
a145818bdf
Bug 1172264
- Watch mStateMachineDuration, and stop manually firing DurationChanged. r=jww
2015-06-17 09:49:11 -07:00
Bobby Holley
a1ebe95511
Bug 1172264
- Route mExplicitDuration directly from the mediasource code to MediaDecoder, and stop passing an argument to DurationChanged. r=pending=jww
2015-06-17 09:49:10 -07:00
Bobby Holley
56a6ea9edb
Bug 1172264
- Mirror duration from the MDSM to the MediaDecoderReader and remove MDSM::GetDuration. r=jww
2015-06-17 09:49:10 -07:00
Bobby Holley
2aa4ae8328
Bug 1172264
- Mirror duration from the MDSM to the MediaDecoder. r=jww
2015-06-17 09:49:09 -07:00
Bobby Holley
91cfeb8f8f
Bug 1172264
- Switch MediaDecoder's mDuration represenation to a double. r=jww
2015-06-17 09:49:09 -07:00
Jean-Yves Avenard
0b224435dc
Bug 1171330: P9. Remove "Diamond Problem" with MediaDecoder inheritance. r=cpearce
...
--HG--
extra : rebase_source : a8116bf4cdcf3910dbcbf68ba7adb36e6c9d2e04
2015-06-11 15:55:20 +10:00
Bobby Holley
aa6c9ce796
Bug 1160695 - Drop Support for Content-Duration. r=cpearce
2015-06-08 09:22:46 -07:00
Bobby Holley
6af84ec47e
Bug 1160695 - Track demuxer-estimated duration separately. r=jww
2015-06-08 09:22:37 -07:00
Bobby Holley
54cc593e26
Bug 1160695 - Track explicit (mediasource) duration separately. f=jww,rpending=jya
2015-06-08 09:22:28 -07:00
Bobby Holley
027a3eaded
Bug 1160695 - Make MediaDecoder::DurationChanged take a duration argument rather than reading it back synchronously from the MDSM. r=jww
2015-06-08 09:21:23 -07:00
Bobby Holley
f83f94efbb
Bug 1160695 - Track "metadata duration" separately and mirror it to MediaDecoderReader. r=jww
2015-06-08 09:21:22 -07:00
Bobby Holley
1893956886
Bug 1160695 - Track "network duration" separately and mirror it to the MDSM. r=jww
2015-06-08 09:21:20 -07:00
Bobby Holley
80857671e7
Bug 1168008 - Replace 'Consumer' with 'Request' in MediaPromise naming. r=jww
...
I think this makes more sense, and it matches the naming convention that all
of the consumers of this stuff are actually using.
2015-05-28 16:03:10 -07:00
JW Wang
341b29f73c
Bug 1163467. Part 6 - refactor MediaDecoder::AddOutputStream and move related code to MediaDecoderStateMachine. r=roc.
2015-05-28 14:17:30 +08:00
JW Wang
66e3c00ee3
Bug 1163467. Part 5 - move MediaDecoder::UpdateStreamBlockingForPlayState to MediaDecoderStateMachine. r=roc.
2015-05-28 14:16:59 +08:00
JW Wang
f6643b3d27
Bug 1163467. Part 4 - move MediaDecoder::UpdateStreamBlockingForStateMachinePlaying to MediaDecoderStateMachine. r=roc.
2015-05-28 14:16:42 +08:00
JW Wang
e2adc230bf
Bug 1163467. Part 2 - rename MediaDecoder::UpdateDecodedStream to MediaDecoder::UpdateStreamBlockingForPlayState. r=roc.
2015-05-28 14:16:16 +08:00
JW Wang
838880e42a
Bug 1163497. Part 5 - remove unused functions. r=roc.
2015-05-26 10:22:03 +08:00
JW Wang
4db24fa288
Bug 1163497. Part 2 - Remove MediaDecoder::DestroyDecodedStream(). r=roc.
2015-05-10 12:26:03 +08:00
JW Wang
61664897b5
Bug 1163497. Part 1 - remove MediaDecoder::ConnectDecodedStreamToOutputStream(). r=roc.
2015-05-10 12:16:38 +08:00
JW Wang
9f91817088
Bug 1163474. Part 2 - move MediaDecoder::mOutputStreams to DecodedStream. r=roc.
2015-05-10 11:57:46 +08:00
JW Wang
ddd8ef7478
Bug 1163474. Part 1 - Create a wrapper class to which MediaDecoder::mOutputStreams will move. r=roc.
2015-05-10 11:48:05 +08:00
Jean-Yves Avenard
54a681396b
Bug 1163445: Part5. Replace dom::TimeRanges with TimeIntervals object. r=mattwoodrow
2015-05-18 16:15:47 +10:00
JW Wang
f34e30b2c4
Bug 1163469 - Move MediaDecoder::DecodedStreamData and related code to its own file. r=roc.
2015-05-10 11:38:15 +08:00
Benjamin Chen
e7bed7a4c5
Bug 1140995 - Part 1 - At end of stream, send the last video frame to decoded stream with deviation usec if the last video frame's duration is 0. r=jwwang
...
--HG--
extra : rebase_source : 4aedc130f6ce2e350836accdd9b6b1e6d0e8706c
2015-04-22 18:19:19 +08:00
Bobby Holley
22d027c1ad
Bug 1162803 - Mirror playback position. r=jww,r=sotaro
2015-05-11 11:16:07 -07:00
Bobby Holley
973ebd793d
Bug 1161901 - Make MDSM::ScheduleStateMachine runs on the state machine task queue only. r=jww
2015-05-07 09:50:35 -07:00
Sotaro Ikeda
aef8cc58bd
Bug 1158448 Part 2 - Remove ApplyStateToStateMachine and PLAY_STATE_SEEKING r=jwwang,bwu
2015-05-07 08:19:46 -07:00
Sotaro Ikeda
1c5c106f78
Bug 1158448 Part 1 - Replace MDSM::Play with a state-watcher on mPlayState and eliminate ApplyStateToStateMachine. r=sotaro
2015-05-07 08:19:33 -07:00
Bobby Holley
d4519a33a2
Bug 1159974 - Mirror mPreservesPitch. r=jww
2015-05-04 11:04:47 -07:00
Bobby Holley
d594a72f36
Bug 1159974 - Mirror mPlaybackRate. r=jww
2015-05-04 11:04:46 -07:00