searching for reviewer(bechen)
4ae35d2b108a7d98b98a6d6d3943b78b297dd35b: Bug 1416084. P2 - wake up readers when download is suspended. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Mon, 15 Jan 2018 10:25:11 +0800 - rev 451220
Push 8551 by ryanvm@gmail.com at Wed, 17 Jan 2018 15:17:16 +0000
Bug 1416084. P2 - wake up readers when download is suspended. r=bechen,gerald It is possible that download is suspended after all bytes are received but before OnStopRequest is notified. In that case, we will fail to wake up the readers waiting to read the partial block and cause bug 1412737 comment 30. MozReview-Commit-ID: GUk4lXO6Upk
e3ca97a44f1c09771297071bb459d07e0ccf15b2: Bug 1416084. P1 - reapply bug 1412737 P4: wake up readers only when we have blocks committed to the cache. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Mon, 15 Jan 2018 10:09:02 +0800 - rev 451219
Push 8551 by ryanvm@gmail.com at Wed, 17 Jan 2018 15:17:16 +0000
Bug 1416084. P1 - reapply bug 1412737 P4: wake up readers only when we have blocks committed to the cache. r=bechen,gerald Per bug 1412737 P2 changes, a reader will always read data from the cache or from the last block in the memory. NotifyDataReceived() will be slightly more efficient if we don't wake up readers unnecessarily when there are no new blocks committed to the cache. MozReview-Commit-ID: Afcy5OOeIk3
d14d36fc5161df0c1b66ce448d9a4901cb947260: Bug 1429323 - remove calls to SimpleTest.expectAssertions() from media mochitests. r=bechen
JW Wang <jwwang@mozilla.com> - Wed, 10 Jan 2018 14:50:53 +0800 - rev 450319
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1429323 - remove calls to SimpleTest.expectAssertions() from media mochitests. r=bechen MozReview-Commit-ID: GapLJjIGjmK
72b59b20a04812e8f0b80bc27df09ebe0f884982: Bug 1429009. P2 - remove unnecessary AbstractThread::AutoEnter. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 09 Jan 2018 17:49:53 +0800 - rev 450291
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1429009. P2 - remove unnecessary AbstractThread::AutoEnter. r=bechen,gerald It is not needed since we are already in the right context. MozReview-Commit-ID: 6QXxLMQHavv
9a6c837be3b44d1fa175b0f00bb405d56ee2960a: Bug 1429009. P1 - notify 'DownloadProgressed' immediately to preserve the event order. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Mon, 08 Jan 2018 14:51:57 +0800 - rev 450290
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1429009. P1 - notify 'DownloadProgressed' immediately to preserve the event order. r=bechen,gerald We also need to call GetOwner()->UpdateReadyState() since mCanPlayThrough might have changed. MozReview-Commit-ID: C5djzu1sXqV
1599fb3b361022c56638a1570272068dc69eb268: Bug 1428951 - add a getter for MediaCacheStream::GetDebugInfo() to take the cache monitor on the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 09 Jan 2018 10:29:10 +0800 - rev 450244
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1428951 - add a getter for MediaCacheStream::GetDebugInfo() to take the cache monitor on the main thread. r=bechen,gerald MozReview-Commit-ID: 8qkZg0MJsGQ
c1bacce3317103a68433841841feb36813854c0b: Bug 1428242. P3 - use a non-reentrant monitor. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 05 Jan 2018 10:49:38 +0800 - rev 449696
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1428242. P3 - use a non-reentrant monitor. r=bechen,gerald MozReview-Commit-ID: GCXBHugTLJV
90ffd059bdfa679780d7d4dd99a259e0f457546b: Bug 1428242. P2 - MediaCache::ReadCacheFile() doesn't need to drop the cache monitor. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 05 Jan 2018 10:48:14 +0800 - rev 449695
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1428242. P2 - MediaCache::ReadCacheFile() doesn't need to drop the cache monitor. r=bechen,gerald Since we now never take the lock on the main thread, we can safely do file IO while holding the lock without blocking the main thread. This reverts the change of Bug 1354389 P1. MozReview-Commit-ID: EhEwTjINQIT
a5f886553c4beaea9816d24058a797a033b3e804: Bug 1428242. P1 - assert we always take the MediaCache monitor off the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Wed, 20 Dec 2017 15:28:52 +0800 - rev 449694
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1428242. P1 - assert we always take the MediaCache monitor off the main thread. r=bechen,gerald MozReview-Commit-ID: 6fxhzTOFaWx
1f394da377b0250c21506645b5535dc4a8e7cdf0: Bug 1428184 - copy mStreams before iterating the array. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 05 Jan 2018 11:34:59 +0800 - rev 449648
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1428184 - copy mStreams before iterating the array. r=bechen,gerald It is bad to modify the array while iterating it. MozReview-Commit-ID: JbpoRmM7GqP
0c86905e8a4a04c82dee9eb07652ae497cb77818: Bug 1427931. P2 - assert MediaCacheStream::Pin/Unpin is called off the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Thu, 04 Jan 2018 10:30:07 +0800 - rev 449584
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1427931. P2 - assert MediaCacheStream::Pin/Unpin is called off the main thread. r=bechen,gerald MozReview-Commit-ID: 7tanbwvNfEh
c362d0ac18f44862da9b0593ad85ebfc56416325: Bug 1427931. P1 - remove MediaDecoder::PinForSeek/UnpinForSeek. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 19 Dec 2017 17:56:52 +0800 - rev 449583
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1427931. P1 - remove MediaDecoder::PinForSeek/UnpinForSeek. r=bechen,gerald PinForSeek() is called only when playback reaches the end. In other words, it is not called for most cases of seeking. It should be OK not to call it at all during seeking. MozReview-Commit-ID: 1xXX1321bO7
b8d69a73212b9a56d37da37f5c047343117a6de9: Bug 1427931. P2 - assert MediaCacheStream::Pin/Unpin is called off the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Thu, 04 Jan 2018 10:30:07 +0800 - rev 449493
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1427931. P2 - assert MediaCacheStream::Pin/Unpin is called off the main thread. r=bechen,gerald MozReview-Commit-ID: 7tanbwvNfEh
34d4a9907d4f2a1d76d173aee0768ef18b173f08: Bug 1427931. P1 - remove MediaDecoder::PinForSeek/UnpinForSeek. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 19 Dec 2017 17:56:52 +0800 - rev 449492
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1427931. P1 - remove MediaDecoder::PinForSeek/UnpinForSeek. r=bechen,gerald PinForSeek() is called only when playback reaches the end. In other words, it is not called for most cases of seeking. It should be OK not to call it at all during seeking. MozReview-Commit-ID: 1xXX1321bO7
a054313a69b76a57cf174348dca63e6ee4bc2006: Bug 1427667 - move the call to mMediaCache->ReleaseStream() from the destructor to CloseInternal(). r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 19 Dec 2017 17:51:51 +0800 - rev 449338
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1427667 - move the call to mMediaCache->ReleaseStream() from the destructor to CloseInternal(). r=bechen,gerald So we won't need to take the cache monitor on the main thread. MozReview-Commit-ID: FavZKcfaHn8
3073a808fb0d9d5a8b24740639645af0d3d5b04f: Bug 1427666 - MediaCacheStream::InitAsCloneInternal() should notify the client that new data is available. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Wed, 03 Jan 2018 10:33:11 +0800 - rev 449336
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1427666 - MediaCacheStream::InitAsCloneInternal() should notify the client that new data is available. r=bechen,gerald We should call ChannelMediaResource::CacheClientNotifyDataReceived() no matter new data is coming from the channel or copied from the original cache stream so the decoder has a chance to compute 'canplaythrough' and buffer ranges. MozReview-Commit-ID: I4cLow2VzJg
46879b2506caf288a8d6a8aa56248d7b7189e0ed: Bug 1426578. P5 - offload Init() to another thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 19 Dec 2017 17:38:40 +0800 - rev 449323
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426578. P5 - offload Init() to another thread. r=bechen,gerald MozReview-Commit-ID: Fv7eq39GNsk
d005226af73b702b34cb6419d211960722daf29b: Bug 1426578. P4 - offload InitAsClone() to another thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 19 Dec 2017 17:32:55 +0800 - rev 449322
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426578. P4 - offload InitAsClone() to another thread. r=bechen,gerald MozReview-Commit-ID: H8bQRmkJ8jU
1f6caf89e3825360192a6d1dae284fc806e88649: Bug 1426578. P3 - make MediaCacheStream::InitAsClone() infallible. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Sat, 16 Dec 2017 23:50:07 +0800 - rev 449321
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426578. P3 - make MediaCacheStream::InitAsClone() infallible. r=bechen,gerald It must be infallible for there is no way to propagate the error back to the main thread when part of the init functions run on another thread. It is OK to clone a stream that ends abnormally as long as we don't copy the error status of EOS. The cloned stream will open a new channel when necessary. Note we also copy the partial block from the original stream to get as much data as possible and thus reducing the chance of reopening the channel. MozReview-Commit-ID: 37iYQonFdBU
fb2edb2d8dd1f0b40504733c08b1461ef0fcce0f: Bug 1426578. P2 - always access MediaCache::mStreams while the cache monitor is held. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 15 Dec 2017 11:23:27 +0800 - rev 449320
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426578. P2 - always access MediaCache::mStreams while the cache monitor is held. r=bechen,gerald Note we offload MediaCache::CloseStreamsForPrivateBrowsing() to another thread so we don't need to take the cache monitor on the main thread. MozReview-Commit-ID: 9hYszHZ0OJJ
a29b9105722b07efd9202147d0ba4438b7151551: Bug 1426578. P1 - tweak the constructor and init functions of ChannelMediaResource/MediaCacheStream. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Thu, 14 Dec 2017 16:08:17 +0800 - rev 449319
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426578. P1 - tweak the constructor and init functions of ChannelMediaResource/MediaCacheStream. r=bechen,gerald We want to init as many members as possible before taking the cache monitor. This makes it easier to move part of the init functions to another thread. MozReview-Commit-ID: 6mmO356nCyQ
f58dca05f26f69116bf5a736d384e97963beec61: Bug 1426061. P2 - offload MediaCacheStream::Close() to another thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 15 Dec 2017 10:29:29 +0800 - rev 448738
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426061. P2 - offload MediaCacheStream::Close() to another thread. r=bechen,gerald So we won't take the cache lock on the main thread. MozReview-Commit-ID: KYSB0vonOZ2
26dcfbdd90803904986d82eebb70ec85d09d0ff9: Bug 1426061. P1 - always access MediaCacheStream::mClosed while holding the lock. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Thu, 14 Dec 2017 16:22:53 +0800 - rev 448737
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426061. P1 - always access MediaCacheStream::mClosed while holding the lock. r=bechen,gerald We will offload MediaCacheStream::Close() to another thread and need to access mClosed off the main thread. MozReview-Commit-ID: 891rzC8dOON
7b78e22bb69e7ba247b9831b77e674993b44280f: Bug 1426056. P4 - fix a case where we don't reopen the channel. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 19 Dec 2017 14:35:25 +0800 - rev 448663
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426056. P4 - fix a case where we don't reopen the channel. r=bechen,gerald In MediaCacheStream::NotifyResume(), it will not reopen the channel if |mChannelOffset==mStreamLength && 0 <= mSeekTarget < mStreamLength| while we should. MozReview-Commit-ID: 2knkgy6FEVw
d1e6a2a527c134b31375aab87af6093fe09fa422: Bug 1426056. P3 - assert MediaCacheStream::GetLength() is called off the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Thu, 07 Dec 2017 15:50:41 +0800 - rev 448662
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426056. P3 - assert MediaCacheStream::GetLength() is called off the main thread. r=bechen,gerald MozReview-Commit-ID: 7L8C4f2Lg3C
e3ca1814e047bf1525645d9dfe712d7fb8bc2756: Bug 1426056. P2 - remove unused members. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Thu, 07 Dec 2017 15:45:15 +0800 - rev 448661
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426056. P2 - remove unused members. r=bechen,gerald MozReview-Commit-ID: 6CjxrFzutkP
6682e9d246390630ec5c200ab8c2c2ae149b3a6e: Bug 1426056. P1 - move the decision of resuming download to another thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Thu, 07 Dec 2017 15:43:36 +0800 - rev 448660
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1426056. P1 - move the decision of resuming download to another thread. r=bechen,gerald So we won't access mStreamLength/mChannelOffset (which are protected by the cache monitor) on the main thread. MozReview-Commit-ID: 2pKEttZOfB9
ac32aa0058fe4f68d1eefeb5254e6c8883e25007: Bug 1425170. P2 - remove unused members. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Thu, 14 Dec 2017 10:19:41 +0800 - rev 448369
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1425170. P2 - remove unused members. r=bechen,gerald MozReview-Commit-ID: TJZzVuEI8J
26b2e4c281724cac2e09826c5ece56e29359af53: Bug 1425170. P1 - add a member to ChannelMediaResource to store the nsIPrincipal. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 08 Dec 2017 11:08:38 +0800 - rev 448368
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1425170. P1 - add a member to ChannelMediaResource to store the nsIPrincipal. r=bechen,gerald Note SharedInfo contains an array to store the original and cloned resources. This allows us to iterate over resources on the main thread without taking the cache monitor. MozReview-Commit-ID: K3gcPYbf72Z
289cacd0ec46632c92cd17a597ccfdee7f6ba6b1: Bug 1424973. P2 - remove unused MediaDecoder::IsLiveStream() and friends. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Wed, 06 Dec 2017 16:24:31 +0800 - rev 447999
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1424973. P2 - remove unused MediaDecoder::IsLiveStream() and friends. r=bechen,gerald MozReview-Commit-ID: Hf3QAFoq97x
74b93a174cc418d8960b6ed8b948e403282fa18c: Bug 1424973. P1 - propagate 'IsLiveStream' changes to MDSM in MediaDecoder subclasses. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Wed, 06 Dec 2017 16:00:20 +0800 - rev 447998
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1424973. P1 - propagate 'IsLiveStream' changes to MDSM in MediaDecoder subclasses. r=bechen,gerald MozReview-Commit-ID: 8wSZf7pRERP
358f1c414f3ed3b6c7a08a131032155e4c467938: Bug 1424937 - read as many bytes as possible before giving up reading due to download ends abnormally. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Wed, 13 Dec 2017 18:28:16 +0800 - rev 447993
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1424937 - read as many bytes as possible before giving up reading due to download ends abnormally. r=bechen,gerald MozReview-Commit-ID: 39vdgyY5NCT
5d40cb0aed475aee1777c8162528f4f8f0effdc4: Bug 1423482 - ChannelMediaResource::CacheClientNotifyDataReceived() should use mCallback->AbstractMainThread() to dispatch tasks. r=bechen
JW Wang <jwwang@mozilla.com> - Wed, 06 Dec 2017 16:01:12 +0800 - rev 447900
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1423482 - ChannelMediaResource::CacheClientNotifyDataReceived() should use mCallback->AbstractMainThread() to dispatch tasks. r=bechen To be consistent with other functions. MozReview-Commit-ID: 1adZkXx2VkB
821560cd716d50fbb0c49d0170bd351255e55bc3: Bug 1423465. P7 - GetOwner()->DownloadProgressed() should be called after updating mCanPlayThrough. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 05 Dec 2017 16:01:18 +0800 - rev 447899
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1423465. P7 - GetOwner()->DownloadProgressed() should be called after updating mCanPlayThrough. r=bechen,gerald GetOwner()->DownloadProgressed() will update readyState of the media element which will need to read mCanPlayThrough. MozReview-Commit-ID: EDHlLJjKDoL
5807f7c17c4e1f0d899422e869e1a9ff76ae7cca: Bug 1423465. P6 - assert some MediaCacheStream functions are run off the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 05 Dec 2017 15:23:43 +0800 - rev 447898
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1423465. P6 - assert some MediaCacheStream functions are run off the main thread. r=bechen,gerald MozReview-Commit-ID: I0GWj6I82Iv
a493885e5a0da3d0d42a55a53b1f5bf1016069d4: Bug 1423465. P5 - run ComputePlaybackRate() off the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 05 Dec 2017 15:21:45 +0800 - rev 447897
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1423465. P5 - run ComputePlaybackRate() off the main thread. r=bechen,gerald MozReview-Commit-ID: DhaZUVcHhiy
73b7657b4c395e3491e2aba0122080f2755fa9dd: Bug 1423465. P4 - run GetStatistics() off the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 05 Dec 2017 15:06:34 +0800 - rev 447896
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1423465. P4 - run GetStatistics() off the main thread. r=bechen,gerald Note we cache the result of GetStatistics().CanPlayThrough() which is needed by CanPlayThroughImpl(). MozReview-Commit-ID: QYNqk1pUN5
1d5dc1fa6172a6b22d744b8847cba9c8e8cbf93d: Bug 1423465. P3 - assert MediaCacheStream::SetPlaybackRate() is called off the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 05 Dec 2017 14:15:38 +0800 - rev 447895
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1423465. P3 - assert MediaCacheStream::SetPlaybackRate() is called off the main thread. r=bechen,gerald MozReview-Commit-ID: CZCLkRa0T2v
c4910160b6e321b49d8e5bb13a7dcd4f95f84c35: Bug 1423465. P2 - run UpdatePlaybackRate() off the main thread. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 05 Dec 2017 14:13:22 +0800 - rev 447894
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1423465. P2 - run UpdatePlaybackRate() off the main thread. r=bechen,gerald MozReview-Commit-ID: Ktw4IxzHT2f
da6e8e21f061661931c4e2b8317268665044a73c: Bug 1423465. P1 - expose MDSM::OwnerThread() to the public. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Tue, 05 Dec 2017 11:03:34 +0800 - rev 447893
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1423465. P1 - expose MDSM::OwnerThread() to the public. r=bechen,gerald This will be used by ChannelMediaDecoder to run some code off the main thread. MozReview-Commit-ID: 7Ecej11GBvy
247347cf175af63bf81e46c9c0dde67a1fdced6c: Bug 1422657. P2 - remove unused mDecoderPosition and related code. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 14:02:44 +0800 - rev 447889
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1422657. P2 - remove unused mDecoderPosition and related code. r=bechen,gerald MozReview-Commit-ID: 8RobmJKC40i
98c7a448aadd09f0b1a174082e12366f7f5ae205: Bug 1422657. P1 - GetStatistics() should pass mPlaybackPosition to mResource->GetCachedDataEnd(). r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 13:53:46 +0800 - rev 447888
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1422657. P1 - GetStatistics() should pass mPlaybackPosition to mResource->GetCachedDataEnd(). r=bechen,gerald Usually mDecoderPosition and mPlaybackPosition are in the same cached range so GetCachedDataEnd(mDecoderPosition) and GetCachedDataEnd(mPlaybackPosition) will give the same result. It also makes more sense to pass the playback position instead of decoder position since 'canplaythrough' is about playback instead of decoding. MozReview-Commit-ID: Kk1uUeSFTCI
b1ba2dcb91f1e9aa2661a53809aded5cd70400e1: Bug 1422677. P5 - remove mPlaybackBytesPerSecond and mPlaybackRateReliable by removing the side effect of ComputePlaybackRate(). r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 15:05:25 +0800 - rev 446577
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1422677. P5 - remove mPlaybackBytesPerSecond and mPlaybackRateReliable by removing the side effect of ComputePlaybackRate(). r=bechen,gerald MozReview-Commit-ID: BbCdsLXHT9d
1d953f13c602125d17dd62f45faba00c669ba464: Bug 1422677. P4 - remove the call to ComputePlaybackRate() from OnPlaybackEvent(). r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 14:44:34 +0800 - rev 446576
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1422677. P4 - remove the call to ComputePlaybackRate() from OnPlaybackEvent(). r=bechen,gerald It should be called explicitly for anyone that wants its side effect. MozReview-Commit-ID: EHiPjklV6oZ
e5d7450bab22a5dd1ad4b1204206f5488afe30db: Bug 1422677. P3 - pass a MediaStatistics to ShouldThrottleDownload(). r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 14:36:35 +0800 - rev 446575
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1422677. P3 - pass a MediaStatistics to ShouldThrottleDownload(). r=bechen,gerald So it won't have to call GetStatistics() again. MozReview-Commit-ID: 1tRnRHAiX4L
fc1f79c3a2448bbc371f1cc2982ac6e1fcd0ede8: Bug 1422677. P2 - remove the side effect of MediaDecoder::CanPlayThrough(). r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 14:34:58 +0800 - rev 446574
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1422677. P2 - remove the side effect of MediaDecoder::CanPlayThrough(). r=bechen,gerald We calculate 'canplaythrough' in ChannelMediaDecoder::DownloadProgressed() and send updates to MDSM. MozReview-Commit-ID: KAeDciPAUKs
2449725cc193705c3fa6ad8fb7916c6aa53aed6c: Bug 1422677. P1 - move the call to ComputePlaybackRate() out of UpdatePlaybackRate(). r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 14:24:27 +0800 - rev 446573
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1422677. P1 - move the call to ComputePlaybackRate() out of UpdatePlaybackRate(). r=bechen,gerald We want to remove the side effect of ComputePlaybackRate(). Anyone who wants the side effect (updating mPlaybackBytesPerSecond/mPlaybackRateReliable) should call it explicitly. MozReview-Commit-ID: 8oHvCl5pewz
7267883c2b722f806fc11c35ff9c8c5743a57bf3: Bug 1422657. P2 - remove unused mDecoderPosition and related code. r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 14:02:44 +0800 - rev 446529
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1422657. P2 - remove unused mDecoderPosition and related code. r=bechen,gerald MozReview-Commit-ID: 8RobmJKC40i
9c77dddb2faca84bd8cf09fc2007e18986e62f64: Bug 1422657. P1 - GetStatistics() should pass mPlaybackPosition to mResource->GetCachedDataEnd(). r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 13:53:46 +0800 - rev 446528
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1422657. P1 - GetStatistics() should pass mPlaybackPosition to mResource->GetCachedDataEnd(). r=bechen,gerald Usually mDecoderPosition and mPlaybackPosition are in the same cached range so GetCachedDataEnd(mDecoderPosition) and GetCachedDataEnd(mPlaybackPosition) will give the same result. It also makes more sense to pass the playback position instead of decoder position since 'canplaythrough' is about playback instead of decoding. MozReview-Commit-ID: Kk1uUeSFTCI
0132d8fe0d557650c132b7d24ae96d0069d862a4: Bug 1421179. P3 - ComputePlaybackRate() should call mPlaybackStatistics.GetRate() instead of mPlaybackStatistics.GetRateAtLastStop(). r=bechen,gerald
JW Wang <jwwang@mozilla.com> - Fri, 01 Dec 2017 12:25:00 +0800 - rev 446423
Push 8527 by Callek@gmail.com at Thu, 11 Jan 2018 21:05:50 +0000
Bug 1421179. P3 - ComputePlaybackRate() should call mPlaybackStatistics.GetRate() instead of mPlaybackStatistics.GetRateAtLastStop(). r=bechen,gerald Otherwise mPlaybackBytesPerSecond will always be zero before playback is stopped for the 1st time. This is important for a live stream where playback rate can't be calculated from the duration and resource length (-1). MozReview-Commit-ID: GEojREzHVEz