- 15 Jun, 2016 40 commits
-
-
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118921673
olly committed -
This replaces calls to unescape except for SEI unescaping. Use the new ParsableNalUnitBitArray for reading the slice header in HLS access unit detection and slice_type reading. Unescape the SPS before parsing in FLV and MP4. Before this change it was parsed in its original (escaped) form. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118777869
andrewlewis committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118775995
olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118775612
olly committed -
The only change that's not re-ordering is to add a Util method for usToMs to replace the ones in the HLS and Chunk sources. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118775359
olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118775144
olly committed -
This was made possible by the simplification of how DASH/SS chunk replacement works. It is also a step towards eliminating continueBuffering(), since continueBuffering() calls are no longer relied upon to resume a backed off load. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118774865
olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118774671
olly committed -
Step 6 of the refactor involves moving the logic that's currently in the SourceBuilder classes in the demo app into new SampleSource classes in the library. These classes will construct video/audio/text pipelines on-demand (i.e. when tracks are enabled) rather than constructing them all up front as is currently the case in the SourceBuilder classes. Hence we need a way to instantiate DataSource instances (i.e. a DataSourceFactory ;)). ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118722180
olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118579021
olly committed -
DASH + SS previously had a ridiculously complicated chunk replacement mechanism in resumeFromBackOff. It also didn't allow replacement of the first media chunk in the queue, even though it's possible to remove it in the case that no corresponding samples have been consumed. This CL moves DASH + SS to the simpler model used in the HLS implementation, where the chunk source has a single opportunity to cancel (and hence later replace) the chunk when the load error occurs. With this change comes the ability to replace the first media chunk in the queue in all cases where it's possible to do so. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118573418
olly committed -
This fixes some nuances with the initial solution. Mainly, that the TrackStreams returned by selectTrack could not be used safely until after endTrackSelection was invoked. It also reduces the need for member variables to track state between the track selection methods. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118556651
olly committed -
- Use FakeDataSource as the upstream source. - Actually validate that caching is happening (i.e. reads happen on the upstream source only if the data hasn't been read through the CacheDataSource already). - Move FakeClock to sit alongside the other Fake classes. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118555903
olly committed -
In V2 we'll at some point start using DataSource factories for creating DataSource instances. If there are two DataSource interfaces this gets unnecessarily awkward. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118470751
olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118457489
olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118455206
andrewlewis committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118040127
andrewlewis committed -
This removes the need for each SampleSource implementation to implement 3x "if(condition) {noop}" tests (ChunkSampleSource and SingleSampleSource were missing some of these checks). ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118036233olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118032818
olly committed -
This change optimizes startup and track selection for HLS. Changes in HlsChunkSource avoid unnecessary re-requests for media playlists. Changes in HlsSampleSource optimize exit from the limbo state (i.e. when endTrackSelection is first called). ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118026962
olly committed -
1. SampleSource now has an explicit track selection state. This state is entered after the source is prepared, and also by calling startTrackSelection. 2. endTrackSelection commits selection changes, and is responsible for doing the right thing w.r.t starting/stopping/restarting load operations. 3. All sources now start or restart a load in the case of a new track selection. This fixes a problem where a source could be advanced by repeatedly disabling and re-enabling whilst paused. Some sources didn't restart a load in this case, since the position was unchanged, however the downstream renderer would then consume media up to the first keyframe in order to render something. Hence each disable/re-enable would advance by a keyframe. 4. This change will enable a subsequent change where we'll discard media for non-selected tracks earlier than we do currently (i.e. we'll hook the extractor to a dummy track output, so the samples will never be written to a rolling buffer). This will enable a further subsequent change where buffer contributions are per-renderer rather than per-source. Issue: #1041 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118024436
olly committed -
Issue: #1387 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118024270
andrewlewis committed -
* Do not stop playback onPause but onStop in N and greater. * Fix back navigation after app has been put to background. * Make VIEW intent work when PlaybackActitivty is already launched. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118022964
olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118021856
andrewlewis committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118021575
olly committed -
Issue #1387 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118021498
olly committed -
Issue: #1383 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=118021452
olly committed -
This fixes an issue where the PsExtractor would start reading unsynchronized if sniff was called. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117958077
andrewlewis committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117908518
andrewlewis committed -
Expose the input buffer for Exoplayer V2. This allows subclasses to parse the input buffer before it is decoded. One particular usage of this is to allow parsing user data stored in the tracks (e.g. SEI in H264), and incorporate the user data into the rendering. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117865971
ccwu committed -
Issue: #1263 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117813106
andrewlewis committed -
Also use MediaCodec buffer flag constants instead of those on MediaExtractor. This is in preparation for merging InputBuffer and SampleHolder. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117810136
andrewlewis committed -
This version only supports 16-bit uncompressed PCM. A follow-up CL will add support for other sample bit depths. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117809475
olly committed -
Also hooked up DemoPlayer to ExtractorSampleSource events. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117809051
olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117808998
olly committed -
If this situation is encountered, we assume that the encoder has a good reason to do this and use the last pts + frameDuration as new pts. Issue: #1295 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117808961
olly committed -
- Remove special DefaultTrackOutput.sampleData method, and have SingleSampleMediaChunk use the regular one instead. - Make DummyTrackOutput behave correctly is allowEndOfInput is false. - Simplify progress tracking in ExtractorSampleSource. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117808659
olly committed -
This is the first version and is still not linked to the WebVTT parser nor does it support all the intended features, but it was left this way to ease the review a little bit. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117722492
aquilescanta committed -
As per: http://developer.android.com/training/articles/perf-tips.html ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117716743
olly committed -
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117701759
olly committed
-