summaryrefslogtreecommitdiffstats
path: root/include/media
Commit message (Collapse)AuthorAgeFilesLines
* Merge "experimental support for fragmented mp4 playback in nuplayer" into ↵Marco Nelissen2012-08-031-1/+5
|\ | | | | | | jb-mr1-dev
| * experimental support for fragmented mp4 playback in nuplayerAndreas Huber2012-08-031-1/+5
| | | | | | | | | | | | cherry picked from change 170999 Change-Id: I407775f0290154ad4961134839a15c9f296424c0
* | Dynamically configure the number of video buffers used by camera source, if ↵James Dong2012-08-021-0/+1
| | | | | | | | | | | | | | | | supported o related-to-bug: 6920805 Change-Id: I413bb50954cc84e32ed40bcb713842dc7b58e2b6
* | Allocate buffers before calling start on its source in OMXCodec::start() for ↵James Dong2012-08-021-0/+1
|/ | | | | | | | | | | | encoder case o This makes it possible to configure the source to use the same number of input buffers as requested by the video encoder, before the source starts. As a result, hardcoded number of video buffers for camera source, for instance, can be avoided. o related-to-bug: 6920805 Change-Id: I13d2c308dce34967768cd407f02988e92ef10a89
* Unifying TimedTextDriver's resume() and start().Insun Kang2012-08-021-1/+1
| | | | | | (cherry picked from gtv bb23a2b7e06c59f56e353fd4a2a66a9b8179d425) Change-Id: If5f14549fa315c34e32d6fed7c1ea09deabceb63
* Adds resume() functionInsun Kang2012-08-021-0/+1
| | | | | | | | o Revived resume() function to fix pause/resume bug. (Bug: 6663740) o Mannually cherry-picked from GTV change. (commit: ad1197226d1c6745959f0e469f510ca06f99489f) Change-Id: I77ac90085fb1f1d2e7eb706642978a4fa4d28b49
* Allows MediaMetadataRetriever to retrieve video rotation angleJames Dong2012-07-311-0/+1
| | | | | | o related-to-bug: 6872687 Change-Id: I34e74b0756f8269edefdf3a25d8806c76fd1e2f8
* Swap the order of creating IAudioTrack and threadGlenn Kasten2012-07-271-1/+1
| | | | | | Simplifies the error recovery in case IAudioTrack fails. Change-Id: I6aee41a2ac747a5689fb4836b04174e6107bf32f
* Clean up start() parametersGlenn Kasten2012-07-271-1/+1
| | | | | | | | Document where int is used instead of AudioSystem::sync_event_t (probably because of a header file dependency). TrackBase::start() and RecordTrack::start() don't need default parameters. Change-Id: I82f4a4d078be900f3aa4bd926697e32f5ed68ec8
* effect_descriptor_t const correctnessGlenn Kasten2012-07-252-4/+4
| | | | Change-Id: Iad008f20d35a18acf500f773900164552fd0c19e
* Added a callback to signal when the rendering of the video frame just occurredJames Dong2012-07-201-0/+2
| | | | | Change-Id: Ifbd78606ffc33483aecebf02cb18e0e52af9624d related-to-bug: 6851811
* AudioRecord lockingGlenn Kasten2012-07-171-2/+2
| | | | | | | | | | | | | | | | Fix race conditions for EVENT_MARKER and EVENT_NEW_POS callbacks. Marker and new position update fields are protected by lock. getSampleRate() doesn't need a lock because it reads from shared memory control block. Enforce that the parameter passed with EVENT_MARKER and EVENT_NEW_POS cannot not be changed by the callback handler, and will not change during the call by another thread. Session ID should never change; log if it does. Change-Id: Ia2c63cf1a71b10bb06c37981bd76437f83fffa91
* Use audio_channel_mask_t for channel maskGlenn Kasten2012-07-171-7/+7
| | | | Change-Id: I1c1896da48983aa9f1462a4b471f910498816f60
* Merge "AudioRecord::stop() return void"Glenn Kasten2012-07-161-1/+1
|\
| * AudioRecord::stop() return voidGlenn Kasten2012-07-131-1/+1
| | | | | | | | | | | | like AudioTrack::stop() Change-Id: Iab62f4665151345f1ad5874c97a21d1a331f0154
* | am 190313ec: am 65e8d62a: Merge "Fixed sample video corrupted in MediaCodec ↵Edwin Wong2012-07-131-1/+1
|\ \ | |/ |/| | | | | | | | | mode." into jb-dev * commit '190313ec68e81c10d200ff3c20ac152cf90760d6': Fixed sample video corrupted in MediaCodec mode.
| * Fixed sample video corrupted in MediaCodec mode.Edwin Wong2012-07-131-1/+1
| | | | | | | | | | Change-Id: I50c5660072d40f6e297e58fd026ea04c89d6a70a related-to-bug: 6732061
* | AudioRecord client threading cleanupGlenn Kasten2012-07-131-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rename ClientRecordThread to AudioRecordThread to be more similar to AudioTrack naming. Only create the thread once, and use resume() and pause() for start() and stop(). This will allow us to have a known client callback thread tid that we can pass to AudioFlinger before start(). mActive: Made mActive a bool not int. mActive is protected by mLock; volatile is meaningless. Fixed a few places where mActive was accessed without a lock: - stopped() - processAudioBuffer() These aren't used internally, so no need for _l() versions. Change-Id: I4b8a5c90f3a22d3894b344564cb1c5aef4f1fda2
* | Merge "Remove dead code in libmedia"Glenn Kasten2012-07-133-11/+0
|\ \
| * | Remove dead code in libmediaGlenn Kasten2012-07-123-11/+0
| | | | | | | | | | | | Change-Id: I7d8201590cda29c9fa99662a4fdba222091febfe
* | | Add tid parameter to IAudioFlinger::openRecordGlenn Kasten2012-07-121-1/+2
| | | | | | | | | | | | | | | | | | Not yet implemented Change-Id: I35523fb15ad71727ecc9f4bb870f07e4b7397dc4
* | | Simplify AudioRecord::getInputFramesLost()Glenn Kasten2012-07-121-0/+1
|/ / | | | | | | | | | | This also fixes a benign race in reading mActive without a lock. Change-Id: I19e953d4f275e5c266ca1ca3fece7b6c02ad1707
* | Use audio_channel_mask_t more placesGlenn Kasten2012-07-102-4/+4
| | | | | | | | | | | | | | | | | | | | Use it in AudioSystem::getOutput(), AudioSystem::getInput(), IAudioPolicyService::getOutput(), IAudioPolicyService::getInput(), and various other places in AudioFlinger. Not done: AudioTrack and OutputDescriptor. Change-Id: I70e83455820bd8f05dafd30c63d636c6a47cd172
* | Use audio_channel_mask_t more consistentlyGlenn Kasten2012-07-033-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In IAudioFlinger::createTrack() and IAudioFlinger::openRecord(), declare input parameter to use correct type audio_channel_mask_t. In IAudioFlinger::getInputBufferSize(), input parameter is now channel mask instead of channel count. Remove unused IAudioFlinger::channelCount(audio_io_handle_t). In AudioRecord::getMinFrameCount() and AudioSystem::getInputBufferSize(), input parameter is channel mask instead of channel count. Change-Id: Ib2f1c29bea70f016b3cfce83942ba292190ac965
* | Merge "AudioRecord comments"Glenn Kasten2012-06-251-25/+31
|\ \
| * | AudioRecord commentsGlenn Kasten2012-06-251-25/+31
| | | | | | | | | | | | | | | | | | Group the private fields according to how they are used Change-Id: I7ce3d0939510c10f34bd91a55f6e03afc8e7d43c
* | | Remove acoustics from AudioSystem::getInput()Glenn Kasten2012-06-252-2/+0
|/ / | | | | | | Change-Id: I29fb3ee5664c1f0ee0409c1bb2be087ecca637db
* | Use audio_channel_mask_t in AudioRecordGlenn Kasten2012-06-251-4/+4
| | | | | | | | Change-Id: I9e1b918b2635d961604a4a9d88eb1c7179a167a7
* | Remove unused AudioRecord::channels()Glenn Kasten2012-06-251-1/+0
| | | | | | | | | | | | It was declared but never implemented or called. Change-Id: If5846147fcbd7f6d4187971e2044dd6fd3252b42
* | Include what you useGlenn Kasten2012-06-251-11/+4
| | | | | | | | Change-Id: I12ef9367d05dbe069c037b1b4acd6347a8cf3ece
* | Merge "Remove AudioRecord record_flags"Glenn Kasten2012-06-251-13/+0
|\ \ | |/ |/|
| * Remove AudioRecord record_flagsGlenn Kasten2012-06-221-13/+0
| | | | | | | | Change-Id: I021ddcc1bcb63132a4597d13e3d09db2a5f2c628
* | SurfaceMediaSource: keep refs to current buffersJamie Gennis2012-06-221-12/+6
|/ | | | | | | | | This change fixes a bug in SurfaceMediaSource where it would not keep a reference to all of the Gralloc buffers that the video encoder is currently using. Bug: 6655597 Change-Id: Ifd99976cc7ae57ed724bbf2bbcff357a39497391
* Reduce underruns in screen off, esp. with EQGlenn Kasten2012-06-081-0/+2
| | | | | | | | | | | | Add MonoPipe APIs to specify setpoint. Use screen state to configure pipe setpoint. Fix a long-standing bug where pipe sleep time was excessive, which interacted poorly with governor and low clock frequencies. Now it deducts the elapsed time since last write(), which was significant when there was EQ and low clock frequency. Bug: 6618373 Change-Id: I6f3b0072c2244aeb033ef0795ad164491a164ff5
* Tell surface flinger that we want to protect output buffers from beingAndreas Huber2012-05-221-0/+2
| | | | | | | | sent to HDMI (without HDCP) and push a few black frames on IDLE->LOADED similar to OMXCodec's behaviour. Change-Id: Iea6055a115151ca881220a70a31af6ade2c58cb3 related-to-bug: 6537187
* Merge "Stop extrapolating audio time from the anchor if we're paused or ↵Andreas Huber2012-05-171-0/+1
|\ | | | | | | reached eos." into jb-dev
| * Stop extrapolating audio time from the anchor if we're paused or reached eos.Andreas Huber2012-05-151-0/+1
| | | | | | | | | | Change-Id: I55903ba625d9c075a9a6e7bcd5ff95d450b915b2 related-to-bug: 6479613
* | Speed up stsz box write in MPEG4WriterJames Dong2012-05-151-1/+1
|/ | | | | | | | With this patch, the write time for 30+ minutes recording session is reduced from 10+ seconds down to around 2-3 seconds. related-to-bug: 6435176 Change-Id: I83b705cea42d8de798e7032c770c5c7b033e267e
* Fix issues with synchronous record start.Eric Laurent2012-05-141-0/+4
| | | | | | | | | | | | | | | | - Added a timeout in case the trigger event is never fired. - Extend AudioRecord obtainBuffer() timeout in case of synchronous start to avoid spurious warning. - Make sure that the event is triggered if the track is destroyed. - Reject event if the triggering track is in an incompatible state. Also fix a problem when restoring a static AudioTrack after a mediaserver crash. Bug 6449468. Change-Id: Ib36e11111fb88f73caa31dcb0622792737d57a4b
* Smoothen audio "real" time by compensating with system_time()Andreas Huber2012-05-141-0/+1
| | | | | | | for the delay since the last buffer submission to the audio sink. Change-Id: Ib1a8672f96ba8bbef07d23372f1076fbb1f0bdcc related-to-bug: 6479613
* Merge "Remove unused VideoSourceDownSampler class" into jb-devJames Dong2012-05-111-97/+0
|\
| * Remove unused VideoSourceDownSampler classJames Dong2012-05-111-97/+0
| | | | | | | | | | Change-Id: I2faf5962ff4cc366c688ef5bb27f53596f08fe0a related-to-bug: 6484217
* | Increase AAC software decoder's buffer count. Refactor how clientsAndreas Huber2012-05-111-0/+17
|/ | | | | | | of ACodec get notified about codec buffers and buffer ids. Change-Id: I962f873262dae7aa7b43f5f68a6d60268282f91e related-to-bug: 6478823
* Merge "Properly connect/disconnect to/from the native window in MediaCodec." ↵Andreas Huber2012-05-101-0/+3
|\ | | | | | | into jb-dev
| * Properly connect/disconnect to/from the native window in MediaCodec.Andreas Huber2012-05-101-0/+3
| | | | | | | | | | Change-Id: Ib5bf90a3b81fca8ff2346235bc28a2bd0bc7bfb1 related-to-bug: 6472161
* | OMX IL wrapper for FLAC encoderJean-Michel Trivi2012-05-091-0/+3
|/ | | | | | | | | | Add wrapper around libFLAC for FLAC encoding in OpenMAX IL. Declare FLAC encoder in OMX component roles. Bug 5525503 Change-Id: I19bbce41c216870669d09365693f4ea89f8bc0f7
* Submit codec specific data automaticallyAndreas Huber2012-05-081-0/+5
| | | | | | | if it is contained in the format passed to MediaCodec::configure. Change-Id: I8ef6755e8389ec47b44a9c70904ea6c03a00f4f2 related-to-bug: 6364139
* Respect channel mask in ACodec and NuPlayer.Andreas Huber2012-05-032-2/+13
| | | | | | | Refactor conversion from MetaData into AMessage while we're at it. Change-Id: I5479129836ea4316e8de28cf1b472bf19e3ac4ab related-to-bug: 6439076
* Impl for supporting two video scaling modesJames Dong2012-05-011-0/+1
| | | | | | | | | o allows the video scaling mode to change at any time o also remove the scaling mode logic in OMXCodec.cpp o related-to-bug: 5454345 Change-Id: I6f1714eb0c2774591ce650d56c1e779b8afd085f
* Merge "Added support for HE-AAC recording" into jb-devDave Burke2012-04-301-3/+2
|\