Commit graph

102 commits

Author SHA1 Message Date
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
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
b394c46128 Add utility method to query whether device is an AndroidTV. 2015-06-26 14:26:54 +01:00
Andrew Lewis
e328546607 Make reusable fakes for extractor+track outputs.
Improve Mp4Extractor test.

Add support for Xiph lacing in Matroska files.

Add support for EBML lacing in Matroska files.

Handle the initial sticky intent for HDMI audio plug.
2015-06-23 17:57:41 +01:00
Sergio Moreno Mozota
dd3a4a9139 fix audio channels CodecSpecificDataUtil bugs
* fix channel number encoding using the AUDIO_SPECIFIC_CONFIG_CHANNEL_COUNT_TABLE
  * allocate the correct number of bits (4) int the CodecSpecificDataUtil struct
2015-06-17 23:00:31 +02:00
Oliver Woodman
49f4fe7810 Rename URL->URI for manifest fetching 2015-06-15 17:43:53 +01:00
Oliver Woodman
164d8b4242 Rework application of Mpd.Location + fix test. 2015-06-15 17:38:51 +01:00
Oliver Woodman
02c978e16c Further cleanup subtitle implementations. 2015-06-12 17:44:01 +01:00
Oliver Woodman
1b1769bb6d Further simplify SRT support 2015-06-10 18:03:34 +01:00
ojw28
71252784e9 Merge pull request #498 from ened/subtitle/srt
Subrip (SRT) support
2015-06-10 17:46:53 +01:00
Sebastian Roth
2fb2e5a509 Subrip (SRT) support. 2015-06-09 09:49:20 +08:00
Oliver Woodman
24e897d39f Further H264/H265 code deduping + fix NAL unescaping. 2015-06-05 20:05:28 +01:00
Oliver Woodman
96c1e670c4 De-duplicate code for H264/H265 in MPEG-TS. 2015-06-05 18:27:20 +01:00
ojw28
254bc5a8cc Merge pull request #509 from Ood-Tsen/tx3g
parse mp4 tx3g
2015-06-04 15:07:29 +01:00
ood_tsen
106ebbf7df clean up unused code. 2015-06-02 21:00:22 +08:00
Andrew Lewis
5b186a2aa4 Add support for reading H.265 in MPEG TS. 2015-06-01 17:42:43 +01:00
ood_tsen
f42ed89202 parse mp4 tx3g 2015-06-01 19:47:46 +08:00
Andrew Lewis
02d5cb8109 Use Build.DEVICE not Build.PRODUCT.
On HTC Butterfly these match, but Build.DEVICE is actually the right value to
use.

Issue: #377
2015-05-29 12:52:05 +01:00
Oliver Woodman
a85a169604 Simplify the demo app. 2015-05-28 17:18:26 +01:00
Oliver Woodman
99edc6a4b4 Avoid using OMX.qcom.audio.decoder.mp3 on HTC Butterfly.
This OMX component is listed but can't be instantiated on this device.

According to the GitHub issue, some other devices are also affected, so these
will have to be added too.

Issue: #377
2015-05-28 17:07:12 +01:00
Oliver Woodman
5c9c15ae6e Add support for extracting H.265/HEVC data in MP4 files. 2015-05-28 17:06:26 +01:00
Oliver Woodman
67d0154960 Use Java7 <> syntax 2015-05-22 21:40:22 +01:00
Oliver Woodman
709fc7735b First steps toward implementing bounded live seek. 2015-05-19 15:16:29 +01:00
Oliver Woodman
d03fb10516 Remove readBitsLong, use readBits instead 2015-05-19 14:02:40 +01:00
Oliver Woodman
3360f5eda5 Enable passthrough based on the input MIME type. 2015-05-08 17:04:21 +01:00
Oliver Woodman
efb9ff1fe7 Play standalone MPEG-TS files.
- Have TsExtractor report a SeekMap to the output.
- Implement TsExtractor.reset to reset extractor state.
- Add 1x sample.
2015-05-01 20:31:21 +01:00
Oliver Woodman
9b112cf94d Video format selection.
Making Representation and TrackElement extend Format will simplify
this further (TBC whether this is a good idea!).

Issue: #393
2015-05-01 20:27:11 +01:00
Oliver Woodman
fafcd79e1b Move AC-3 bitrate calculation into Ac3Util.
This is in preparation for removing bitrate from MediaFormat.
2015-05-01 20:25:19 +01:00
Oliver Woodman
1d528b80ea Move getUserAgent from DemoUtil to library's Util. 2015-05-01 20:24:27 +01:00
Oliver Woodman
6cb46e4549 webm_extractor: Add VP8 to the list of codecs.
VP8 can be decoded by MediaCodec (since very early versions of android). Now that we want WebmExtractor to be general purpose, adding VP8 makes sense as it is a common use case.
2015-05-01 20:23:33 +01:00
Oliver Woodman
e6c7defc79 Make ParsableBitArray.data public, like ParsableByteArray. 2015-05-01 20:21:36 +01:00
Oliver Woodman
aed45bb2ca Add support for reading AC-3 audio in HLS. 2015-05-01 20:18:08 +01:00
Oliver Woodman
837090e8f9 Move AC-3 header parsing into a new Ac3Util class.
This is in preparation for adding support for AC-3 in HLS.

Also parse E-AC-3 boxes.
2015-05-01 20:10:47 +01:00
Oliver Woodman
1a01dcc55a Separate UriDataSource from HttpDataSource.
Using a file:// URL for loading an HLS stream (for testing) would fail due to
casting the connection to an HttpURLConnection in DefaultHttpDataSource.

This change makes UriDataSource an interface for objects that are DataSources
with URIs. That allows for reading manifests for HLS using just a UriDataSource
rather than an HttpDataSource (URLs in the playlist are relative to the data
source's URL so the getUri method is needed).
2015-04-22 16:22:48 +01:00
Oliver Woodman
508e13e0bd Clean up + optimize ParsableByteArray. 2015-04-17 20:03:24 +01:00
Oliver Woodman
d9b3582baa Use OMX.google.raw.decoder for passthrough playback.
The OMX component needs to be configured with a format that has a
MIME type of audio/raw. Remove Ac3PassthroughAudioTrackRenderer,
which is no longer used.
2015-04-14 16:42:24 +01:00
Oliver Woodman
e21f7801b5 Major surgery to move all playback modes to the new Extractor model. 2015-04-13 18:57:31 +01:00
Sergio Moreno Mozota
e5acc5a2c8 resync with Extractor changes 2015-04-13 16:58:19 +02:00
Sergio Moreno Mozota
da7ae2a925 Merge remote-tracking branch 'upstream/dev' into dev 2015-04-13 15:56:43 +02:00
Oliver Woodman
7d8141e419 Add new style mp3 extractor. 2015-04-11 01:42:03 +01:00
Oliver Woodman
61443b2f12 Relocate content of Mp4Util to more sensible locations.
- Atom related stuff in Mp4Util is moved to Atom.
- Remainder of Mp4Util is renamed to H264Util.
2015-04-10 23:31:03 +01:00
Oliver Woodman
4dc8e8f951 Add audio and m3u8 mime types. 2015-04-10 22:35:03 +01:00
Oliver Woodman
ecaf329b0d Improve ParsableByteArray performance + enhance API. 2015-04-10 22:34:06 +01:00
Oliver Woodman
ed658b8e8d Attempt to guard against ExoCache corruption. 2015-04-10 22:33:10 +01:00
Andrew Lewis
6d8c4dd416 Add workaround for slow okhttp InputStream.close() on API levels 19/20. 2015-03-13 18:06:00 +00:00
Oliver Woodman
462fea3eaf Correctly resolve Uris according to RFC3986.
Issue: #327
2015-03-05 11:56:00 +00:00
Sergio Moreno Mozota
2ce938d650 Added MPEG audio support to TsExtractor v.2 2015-02-27 14:29:21 +01:00