summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/include
Commit message (Collapse)AuthorAgeFilesLines
* Better support for buffered streaming of rtsp content, if buffer drops below ↵Andreas Huber2010-09-011-0/+1
| | | | | | | a certain threshold we will temporarily pause playback until we have sufficient data. Change-Id: Ice8564e902e48c89c9c00f6651c5504b3c41fcad related-to-bug: 2556656
* Better support for rtsp (normal play-)time display. Better seek support, ↵Andreas Huber2010-08-272-1/+2
| | | | | | | timeout if no packets arrive for too long. Change-Id: Id491541a6ae501604cda815f8e961a3bfe26db7d related-to-bug: 2556656
* Fix support for per-frame unsynchronization in ID3V2.4 tags.Andreas Huber2010-08-251-0/+1
| | | | | Change-Id: I6874b596f88817347756a375d9fb1c9bff418eca related-to-bug: 2949149
* Allow sniffers to return a packet of opaque data that the corresponding ↵Andreas Huber2010-08-256-7/+19
| | | | | | | extractor can take advantage of to not duplicate work already done sniffing. The mp3 extractor takes advantage of this now. Change-Id: Icb77ae3ee95a69c7da25b4d3b8696c0a2d33028a related-to-bug: 2948754
* A first shot at proper support for seeking of rtsp streams.Andreas Huber2010-08-242-0/+3
| | | | | Change-Id: I9604f2d09feedc0074c0e715be58e719d4483760 related-to-bug: 2556656
* Better handling of rtsp connection and disconnection.Andreas Huber2010-08-231-0/+21
| | | | Change-Id: Ib126af6c14c5a212a51a5ee3c4a0a7d1860ad167
* In the absence of width/height information in the sdp, extract the ↵Andreas Huber2010-08-191-0/+30
| | | | | | dimensions from the avc codec specific data. Change-Id: I98c4194593c7e6e24f6fc339c862245111800293
* Don't send late frames to software encoders for encodingJames Dong2010-08-122-0/+2
| | | | | | o Document on what frames will be rejected and what frames will be accepted Change-Id: I5a5d489ad3d2b50dbb40a0f6e01529312ce81c54
* Support for extracting G.711 a-law and mu-law audio from WAV files and a ↵Andreas Huber2010-08-092-0/+58
| | | | | | | corresponding software decoder. Change-Id: I92685d09456c220b8c09842defb721bd55b0b9f6 related-to-bug: 2900021
* Support for communicating if a buffer read from the _extractor_ is a sync ↵Andreas Huber2010-08-061-1/+4
| | | | | | | sample or not. Change-Id: Ie71506224d937cfff1fa1273bfac31c47db8845f related-to-bug: 2900534
* Merge "Don't return a decoder error if the encoded stream does not start ↵Andreas Huber2010-08-041-0/+3
|\ | | | | | | with SPS/PPS." into gingerbread
| * Don't return a decoder error if the encoded stream does not start with SPS/PPS.Andreas Huber2010-08-041-0/+3
| | | | | | | | Change-Id: I960ada0c53f8ffe413ecd07c2c754a996841f592
* | Support for Gtalk video, includes AMR/H.263 assembler and packetization ↵Andreas Huber2010-08-041-0/+4
|/ | | | | | support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation. Change-Id: I95b8dd487061add9bade15749e563b01cd99d9a6
* Support finer seek control on MediaSources.Andreas Huber2010-07-214-5/+14
| | | | | | related-to-bug: 2858448 Change-Id: Ifb4b13b990fd5889113e47e2c62249ac43391fa1
* Initial check-in for software m4v_h263 encoderJames Dong2010-07-151-0/+80
| | | | Change-Id: I4b49fa5c3a5e6e21cfd2419441d98dd784046367
* Initial checkin for software AVC encoderJames Dong2010-07-131-0/+90
| | | | | | | | | | - Since the software encoder assumes the input is YUV420 planar, color conversion needs to be added when the input color format does not meet the requirement. With this patch, I only added a single color conversion from YUV420 semi planar to YUV420 planar. We can add more as we go. Change-Id: If8640c9e5a4f73d385ae9bb2022e57f7f62b91b9
* Enable the support for decoding audio with AAC+ and eAAC+ featuresJames Dong2010-07-081-0/+4
| | | | | | bug - 282684 Change-Id: I73c8377af3cc4edd3ee7cea86dc3b1c369fbd78b
* Only send the playback complete notification if a) an error occurred on any ↵Andreas Huber2010-07-071-1/+4
| | | | | | track or b) all tracks have finished playing. The previous behaviour was to send the notification as soon as the first track finished playing. Change-Id: Icac8104d14f18b719aa0b8f1ab3215f24003b152
* Finetune some of the prefetcher parameters to a) buffer as much as froyo did ↵Andreas Huber2010-06-251-2/+2
| | | | | | b) ensure that keepalives actually trigger a network read instead of just draining internal buffers Change-Id: Iaedfb5645e3052a63789244c90900573f8449bac
* Fixed the software AAC encoderJames Dong2010-06-231-0/+10
| | | | | | | Make sure that each input frame contains at least 1024 samples, as required by the AAC encoder, and fix the incorrect timestamp. Change-Id: I344cafe8c89be51d6e64552fab70539990ff6049
* Fix a number of timestamp mismatches in the mp3 extractor and decoder that ↵Andreas Huber2010-06-231-1/+6
| | | | | | | would lead to invalid reporting of the current playback time for mono and/or non-44100 kHz mp3s. Change-Id: I11abc05b62a958ffbc99ca997cd184a2f2199352 related-to-bug: 2667479
* Make the prefetcher read packets from the network after a keep-alive timeout ↵Andreas Huber2010-06-221-3/+8
| | | | | | expires regardless of whether its currently actively fetching data or not. Change-Id: I7d022ac494e1cecdd7f656806b7ed45979c02840
* This patch enables each omx instance to have a separate message dispatcher, andJames Dong2010-06-141-6/+5
| | | | | | | | | | | | | | | | | | thus eliminates the sharing of the message dispatches between omx instances. If the omx audio and video encoders share the same dispatcher, when the audio read blocks in the AudioSource, the message dispatcher thread gets blocked. As a result, the message for the omx video encoder can not be dispatched, hence gets blocked too. If the blocking time is long enough, the video frame rate decreases significantly. This is the case when we read 2048 bytes by default each time. Reading smaller blocks of audio data helps mitigate the above-mentioned problem, but it is not an ideal solution for two reasons: a) it is not efficient, and thus can cause a lot of overhead passing buffers between the frame work and the omx encoders; b) also, the audio record thread can overflow as a result, which lead to the loss of recorded audio frames. This patch affects both authoring engine and the playback engine. Change-Id: I26dfde7ac46c8752cf1793ce1bfcc7be7724580e
* Restore feature parity with the old HTTPDataSource as far as support for ↵Andreas Huber2010-06-111-3/+17
| | | | | | extra headers (cookies?) and socket-timeout are concerned. Change-Id: I506dc501faec60e974bf4968d8ba661df7a49aa8
* Switch stagefright's approach to prefetching to the new model. The java ↵Andreas Huber2010-06-102-74/+5
| | | | | | MediaPlayer is now notified about rebuffering start/end via info messages. Change-Id: If8185ba329ce8b6663b1ad39a4efb0ad3be81df2
* Merge "Switch LiveSource to use the new http data source instead of the old ↵Andreas Huber2010-06-101-2/+2
|\ | | | | | | one." into kraken
| * Switch LiveSource to use the new http data source instead of the old one.Andreas Huber2010-06-101-2/+2
| | | | | | | | Change-Id: I9623c480628c495dbfbe02bdc6372724a107e2e8
* | Merge "Initial check-in of new caching/prefetching data source ↵Andreas Huber2010-06-101-0/+93
|\ \ | | | | | | | | | implementation." into kraken
| * | Initial check-in of new caching/prefetching data source implementation.Andreas Huber2010-06-101-0/+93
| |/ | | | | | | Change-Id: I97a6e3f03c69c9b1219f1f06bd109c0102f2c504
* | Initial check in of a new http data source implementation.Andreas Huber2010-06-101-0/+59
|/ | | | Change-Id: I17c358288ffe9ef690d702c58723c766d0a0cf21
* Initial checkin of preliminary rtsp support for stagefright.Andreas Huber2010-06-072-0/+59
| | | | Change-Id: I0722aa888098c0c1361c97a4c1b123d910afc207
* Initial checkin of preliminary support for "http live" streaming in stagefright.Andreas Huber2010-06-072-0/+140
| | | | Change-Id: I20399f63d63af86a3ba22641c0e43385a108fb3f
* Initial checkin of mpeg2 transport stream parser for stagefright.Andreas Huber2010-06-071-0/+54
| | | | Change-Id: I328ce77404daf7127933b48c9d58ed504fb8fc6f
* A debugging DataSource artifically limiting the available bandwidth.Andreas Huber2010-06-011-0/+52
| | | | Change-Id: I4ca75337a52599d211ea066fd94e649748df052d
* Squashed commit of the following:Andreas Huber2010-05-241-0/+60
| | | | | | | | | | | | | | | | | | | | | commit a2194ecc341fa0c530d0007d8561286c8b8f2d15 Author: Andreas Huber <andih@google.com> Date: Fri May 21 12:50:09 2010 -0700 Instead of including the libvpx libraries prebuilt in our tree, build them from sources. Change-Id: I5ec57decf1200cf9137fe13ff77d06f47950c3d7 commit 711098ca3f16800a22ccdb26a07e57e471cca438 Author: Andreas Huber <andih@google.com> Date: Thu May 20 15:00:27 2010 -0700 Support for VPX/VP8 decoding in stagefright Change-Id: I16d93faf3f56a5f8ec39c14367704469f914db9e related-to-bug: 2483739 Change-Id: Ibc124f6af540c2715cb2325151eecdd6edf085ec
* Initial software encoder checkinsJames Dong2010-05-193-1/+146
| | | | Change-Id: I27f387db23594e46384c4eb3a0093ce220bb6b60
* Support for customizable socket-read timeouts through the HTTP response.Andreas Huber2010-05-111-0/+3
| | | | | | | | | Specify a response header of "X-SocketTimeout: 15" to override the default timeout of 5 secs with a timeout of 15 seconds. Specify a negative value to disable the timeout altogether. Change-Id: I545adf3d8b3f7efe5f8d081a641c6404440a77db related-to-bug: 2675721
* A new OggExtractor/VorbisDecoder combo to support approximate seeking.Andreas Huber2010-05-072-17/+86
| | | | | Change-Id: Id5d0c1c8b1adc62896bb5ed951f7b5cfda811e95 related-to-bug: 2654400
* Disable vorbis seek when streaming from localhost.Andreas Huber2010-05-062-1/+7
| | | | | Change-Id: Icda523ae1c89e26482f1c1767fe3a8b9222bb30f related-to-bug: 2654400
* Support for Ogg Vorbis decoding in stagefright.Andreas Huber2010-05-041-0/+60
| | | | | | | Set the magic property media.stagefright.enable-vorbis to true to use the new implementation instead of the standalon vorbis player for file-based playback. HTTP streaming of vorbis content will always go through stagefright. Change-Id: Ie3843a99fadb22372f89540d0f8d65196e0c2af8 related-to-bug: 2654400
* Distinguish QCELP audio from mpeg4 audio, ignore QCELP audio tracks since we ↵Andreas Huber2010-04-121-0/+2
| | | | | | | don't have a decoder for it, ignore potentially malformed metadata for AMR NB and WB tracks. Change-Id: Ic9a9198413431db4ea40bb63b9de91aa8a7183af related-to-bug: 2587341
* Fix a race condition in TimedEventQueue, an event may be cancelled while ↵Andreas Huber2010-04-121-0/+2
| | | | | | | we're waiting for its scheduled time to come in which case we'd be removing it from the queue twice. Change-Id: I4e42e318fd5373d1f352f54027d4bf823126266d related-to-bug: 2585276
* Support for ID3 V2.4 tags.Andreas Huber2010-04-081-1/+4
| | | | | Change-Id: I74ee02451bdfd7e50f0d5ff6fa5da5147b683e4c related-to-bug: 2581869
* Properly send a MEDIA_SEEK_COMPLETE notification for a seek request while ↵Andreas Huber2010-03-311-0/+1
| | | | | | | paused (legacy behaviour). Change-Id: I64da5eb97c75b269b4668b3628ed0f05f2e36e51 related-to-bug: 2557482
* Finer-grained locking in AwesomePlayer, position and duration are now ↵Andreas Huber2010-03-261-1/+1
| | | | | | | protected by a separate mutex that's only held for brief moments of time. Change-Id: I989baf5a0ea8923985c560c2ec274abda0780242 related-to-bug: 2546577
* Enable early termination of the prefetcher's preparation phase.Andreas Huber2010-03-242-1/+8
| | | | | Change-Id: I929ac9b0fd0b6ebd98c1bc56be18ac8f8378d48c related-to-bug: 2537407
* We no longer do sanity checks based on "hdlr" tags in .mp4 files. Pretty ↵Andreas Huber2010-03-151-1/+0
| | | | | | | soon we'll play any bytestream that even vaguely resembles the spec... Change-Id: I43e05404860d8856b8aa566cc9b256bb3fa57e6f related-to-bug: 2483328
* Hack to "support" "enhanced" podcasts... slang for malformed .mp4 files.Andreas Huber2010-03-151-0/+1
| | | | | Change-Id: I690b9f336062a0ff1a667d6461d66b1386db866d related-to-bug: 2511744
* HTTPStream and HTTPDataSource now support cancellation of the connection ↵Andreas Huber2010-03-122-6/+12
| | | | | | | process, AwesomePlayer takes advantage of this in cases where ::reset() or ::suspend() is called while in the preparation phase to bail out early. Also fixes in issue where the audio codec was not properly stopped if no audio player object ever took ownership. Change-Id: I6d73defe6d276693853a469db267bb2668d07af5 related-to-bugs: 2475845,2414536
* Instead of allocating the decoder instances in response to a call to ↵Andreas Huber2010-03-051-2/+9
| | | | | | setDataSource, postpone allocation to the preparation phase where it belongs. related-to-bug: 2492205