896 Commits

Author SHA1 Message Date
Oliver Woodman
87daa912d7 Remove dead code (failed==false in all cases) 2015-07-21 17:36:07 +01:00
Oliver Woodman
3b34b0682c Handle the last MP3 sample being truncated without throwing.
Issue: #599
2015-07-21 17:35:09 +01:00
Oliver Woodman
ed2b65654c Cleanup UdpDataSource. 2015-07-21 17:34:37 +01:00
Ian Bird
646b39622f Add support for HEVC video in Matroska files 2015-07-21 15:24:35 +01:00
Oliver Woodman
a2f10399e7 Improve error propagation 2015-07-21 10:07:49 +01:00
Oliver Woodman
5df6854fea Noop tweak to DefaultHttpDataSource 2015-07-21 10:05:22 +01:00
Oliver Woodman
e7950555d3 Generalize MulticastDataSource to UdpDataSource 2015-07-21 10:05:04 +01:00
Oliver Woodman
4451b06571 Use default subtitle parsers in demo app 2015-07-21 10:02:54 +01:00
Oliver Woodman
eb4920bb2a Better compatibility with MKV test streams.
1. Fix seeking in test2.mkv by handling non-default timescale
   after duration.
2. Fix handling of missing cues in test6.mkv by allowing playback
   to continue (but all seeks will reset to t=0).

Issue #631
2015-07-21 10:01:15 +01:00
Oliver Woodman
7bc1241e06 Reflect subtitle parsers. 2015-07-21 09:59:22 +01:00
Oliver Woodman
6082bb6769 Always use timed video frame release on V21+. 2015-07-21 09:58:38 +01:00
Oliver Woodman
508e1cabe1 Always null inputStream, even if closing it failed. 2015-07-21 09:57:51 +01:00
Oliver Woodman
cd83bbb740 Fix release notes 2015-07-17 19:07:46 +01:00
Oliver Woodman
d8c874f7d8 Correct grammar 2015-07-17 12:01:32 +01:00
Oliver Woodman
0279a9f791 Bump version to 1.4.1 2015-07-17 11:49:48 +01:00
Oliver Woodman
119c473606 Temporary fix to prevent premature failures during HLS playbacks II. 2015-07-17 11:48:42 +01:00
Oliver Woodman
7c2d635565 Minor fixes for Javadoc warnings 2015-07-16 21:48:14 +01:00
Oliver Woodman
8a7d68da6c Don't render empty cues 2015-07-16 20:22:35 +01:00
Oliver Woodman
ebe9ae6b13 In continueBuffering, return whether a particular track has samples.
Issue: #595
2015-07-16 19:30:14 +01:00
Oliver Woodman
17c1b630b8 Bump version to 1.4.0 2015-07-16 18:26:50 +01:00
Oliver Woodman
67b4775681 Temporary fix to prevent premature failures during HLS playbacks 2015-07-16 17:59:41 +01:00
Oliver Woodman
85256bef41 Add support for MP3 audio in Matroska files.
GitHub issue: #589
2015-07-15 19:55:35 +01:00
Oliver Woodman
79db618ba6 Add support for header stripping in Matroska streams.
Issue: #589
2015-07-15 18:53:32 +01:00
Oliver Woodman
6c2b3c875d Handle unbounded ranges in DASH manifests. 2015-07-15 18:52:57 +01:00
Oliver Woodman
2b0f68a0ab Rm Timescale from AudioTrack. Not required. 2015-07-15 11:27:10 +01:00
Oliver Woodman
72d42fbc9f Fix an issue where retrying WebM extraction failed.
The ID_SEGMENT can only be read once, as seeing the element a second time is
assumed to indicate that the file contains multiple segment elements (which is
not supported).

This change allows the element to be read twice if it is at the same position,
so that retrying loading from the start can succeed.
2015-07-15 11:15:21 +01:00
Oliver Woodman
31e5e0edaf Clear outputBuffer.flags in VpxDecoderWrapper.decodeBuffer()
This ensures FLAG_END_OF_STREAM doesn't get permanently stuck.
2015-07-15 11:14:37 +01:00
Oliver Woodman
4282d7c22b Update MediaCodecTrackRenderer.
1. Workaround for decoders that fail to handle the END_OF_STREAM flag.
2. Revert processing of final output buffer if it's non-empty. This
   introduced another bug (#596)

Reverts: b88012f51ff3df1d8a35c032c5f585bc994a81ba
Issue: #417
Issue: #596
2015-07-15 11:11:41 +01:00
Oliver Woodman
884e7a4170 Optimize captions.
SubtitleLayout no longer trigger re-layouts of the view hierarchy.
Instead, the SubtitleLayout just invalidates itself. This is made
possible by making SubtitleLayout a regular View that draws each Cue
directly onto the canvas, rather than having SubtitleLayout be a
ViewGroup with a child View for each Cue.
2015-07-15 11:10:53 +01:00
Oliver Woodman
8b08efce79 Fix warnings in WebM demo app 2015-07-15 11:10:09 +01:00
Oliver Woodman
c1e1497d13 Change how subtitles are laid out in the demo app.
The SubtitleLayout is now properly aligned with the surface.
This means the subtitles remain on top of the video in portrait
mode, rather than being huge and below it.
2015-07-15 11:09:20 +01:00
Oliver Woodman
fe52a486f4 Inject Allocator into ExtractorSampleSource. 2015-07-15 11:05:15 +01:00
Oliver Woodman
b4879236b5 Document usage of MATCH_LONGEST_US.
Handling of this constant is already in place everywhere, this
just documents that its use is allowed.
2015-07-15 11:01:44 +01:00
Andrew Lewis
2358004951 Add device-specific workarounds for VP8 and MP3.
Avoid using the VP8 decoder on Samsung Galaxy S4 Mini.
Issue: #548

Avoid using the MP3 decoder on Sony Xperia Z/API level 16.
Issue: #377
2015-07-10 11:47:24 +01:00
Andrew Lewis
c47c6816e4 Detect frames using first_slice_segment_in_pic_flag. 2015-07-10 11:46:30 +01:00
Oliver Woodman
ead8abf09f Fixed incorrect caption sizes after device orientation change. 2015-06-30 13:50:14 +01:00
Oliver Woodman
35a9f2635c Use Locale.US in calls to String.format.
Issue: #585
2015-06-30 13:49:03 +01:00
Oliver Woodman
f03e1cd572 Updatae release notes 2015-06-26 17:14:55 +01:00
Oliver Woodman
588be2bd4b Fix intermittent decoder crash when playing MP3 inside MP4 2015-06-26 16:53:52 +01:00
Oliver Woodman
3bcd9ca6c3 Simplify HLS MP3 support. 2015-06-26 14:44:10 +01:00
Oliver Woodman
0c577ce2ce Merge branch 'tresvecesseis-dev' into dev 2015-06-26 14:41:59 +01:00
Oliver Woodman
7fb5b86579 Merge branch 'dev' of git://github.com/tresvecesseis/ExoPlayer into dev 2015-06-26 14:41:47 +01:00
Oliver Woodman
faff85784b Use the right overload of createAudioFormat in Ac3Util. 2015-06-26 14:40:13 +01:00
Oliver Woodman
a4ff13d7da Set a MIME type based on the esds ObjectTypeIndication.
Issue: #576
2015-06-26 14:37:48 +01:00
Oliver Woodman
a626a5e5d4 Take period start time into account when calculating segment times. 2015-06-26 14:35:57 +01:00
Oliver Woodman
2b27137e9e Fix bug that caused failure when all renderers disabled.
Prior to this change, there was a bug where playback would
fail with the following steps:

1. Start playback.
2. Pause playback.
3. Disable all renderers.
4. Enable at least one renderer.
5. Resume playback.
2015-06-26 14:33:08 +01:00
Oliver Woodman
33d55631ed Fix handling of pixel aspect ratio change.
The new logic assumes that an input format change will be
followed by an output format change, but I think this is
pretty much guaranteed. If this weren't to happen then the
new pixel aspect ratio wont be picked up, but I think it's
extremely unlikely (it would require the format to stay
exactly the same except for the pixel aspect ratio, which
would be bizarre).
2015-06-26 14:31:13 +01:00
Oliver Woodman
c7635c9dbd Add some audio hooks.
This makes it easier to add an extension for adjusting
audio playback rate.
2015-06-26 14:29:45 +01:00
Oliver Woodman
b88012f51f Process final output buffer if it's non-empty.
Issue: #417
2015-06-26 14:28:50 +01:00
Oliver Woodman
a175ecbff3 Update WebVTT test to check we handle comment in header. 2015-06-26 14:27:45 +01:00