summaryrefslogtreecommitdiffstats
path: root/media/libmedia
Commit message (Collapse)AuthorAgeFilesLines
* remove uses of Surface in favor or IGraphicBufferProducerMathias Agopian2013-03-122-4/+4
| | | | Change-Id: I13d7a9553aa335bca790a3a59d389d7533c83d57
* Merge "Add template class SingleStateQueue" into jb-mr2-devGlenn Kasten2013-03-063-0/+140
|\
| * Add template class SingleStateQueueGlenn Kasten2013-03-053-0/+140
| | | | | | | | Change-Id: If7e2bc9b2a216524ee9cbb68682e2634933b4973
* | Merge "Implement Surface input to MediaCodec." into jb-mr2-devAndy McFadden2013-03-051-20/+93
|\ \ | |/ |/|
| * Implement Surface input to MediaCodec.Andy McFadden2013-03-041-20/+93
| | | | | | | | | | | | | | | | | | Also, renamed a CHECK_INTERFACE macro that was clashing with the Binder version. Bug 7991062 Change-Id: If5e6ed0a06d9f67975497676e4b05abe3aa3d6c0
* | Miscellaneous cleanupGlenn Kasten2013-03-041-3/+3
|/ | | | | | | | | | Abbreviation framesReady to fRdy for new systrace. Put inline const on one line. Use local copy of mState in state. Improve logging. Line length 100. Change-Id: I8201c3ce0e53fd464fd33d02544e52c342d40b68
* am c0048178: Merge "Avoid invalid memory access when using extractMetadata()"Marco Nelissen2013-03-011-1/+16
|\ | | | | | | | | * commit 'c0048178a1d312e7e05557ba99becd6a89b9e97a': Avoid invalid memory access when using extractMetadata()
| * Merge "Avoid invalid memory access when using extractMetadata()"Marco Nelissen2013-03-011-1/+16
| |\
| | * Avoid invalid memory access when using extractMetadata()Sangkyu Lee2013-02-281-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BpMediaMetadataRetriever::extractMetadata() returns a string which is returned by readCString() function of the reply parcel object. However, the parcel object is destroyed at the end of the extractMetadata() function, and so the returned pointer is invalid. This patch fixes this problem by storing the metadata string value. Change-Id: I2a2ccba78246175b2845a237679d6cebe881e83b Signed-off-by: Sangkyu Lee <sk82.lee@lge.com>
* | | CameraService and Stagefright: Support AppOpsEino-Ville Talvala2013-02-252-1/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Camera: - Signal to AppOpsService when camera usage starts and stops - Listen to permissions revocations and act on them - Currently just kill camera connection when permissions lost Stagefright: - Pass on client name, UID to camera as needed Bug: 8181262 Change-Id: I9e33c9d05e9daa77dbb2d795045d08eb887ec8f0
* | | Refactoring: Rename SurfaceTextureClient to SurfaceMathias Agopian2013-02-151-1/+1
| | | | | | | | | | | | Change-Id: I4e8a8b20914cb64edc37abe68233fbc9f2b5d830
* | | Add support for querying if a stream is active remotelyJean-Michel Trivi2013-02-112-1/+30
| | | | | | | | | | | | | | | | | | Bug 7485803 Change-Id: I0744374f130fd2dd0714102354cffed2fa915361
* | | Merge "Add media.log service based on NBLog"Glenn Kasten2013-02-012-0/+95
|\ \ \
| * | | Add media.log service based on NBLogGlenn Kasten2013-01-252-0/+95
| | | | | | | | | | | | | | | | Change-Id: Ie45093df6ac9a739d05c8d408fab52a9a8a27e7f
* | | | Plumbing to reflect minor changes in the HDCP module API that allow forAndreas Huber2013-01-302-2/+53
|/ / / | | | | | | | | | | | | | | | support of _decryption_ modules in addition to what we already supported. Change-Id: Ic37b87dc170ba8def3817991d25df798f21e950b
* | | Fix AudioRecordGlenn Kasten2013-01-101-2/+2
| | | | | | | | | | | | | | | Bug: 7965744 Change-Id: Ic024e7fb32f7459b8093c2cf6cd5752aade21ddb
* | | Fix bug in AudioRecord() constructorGlenn Kasten2013-01-041-1/+1
| | | | | | | | | | | | | | | | | | | | | It was calling set() with wrong parameter list. This goes back to commit be916aa1267e2e6b1c148f51d11bcbbc79cb864c from 2010. Change-Id: I2f6917765baf58260bf35e89a2cc59c199734ff6
* | | Merge "Start isolating control block accesses in a proxy"Glenn Kasten2012-12-213-55/+103
|\ \ \
| * | | Start isolating control block accesses in a proxyGlenn Kasten2012-12-123-55/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The proxy object will eventually be the only code that understands the details of the control block. This should make it easier to change the control block in the future. Initial set of control block fields that are isolated: - sample rate - send level - volume Prepare for streaming/static separation by adding a union to the control block for the new fields. Fix bug in handling of max sample rate on a track. It was only checking at re-configuration, not at each mix. Simplify OutputTrack::obtainBuffer. Change-Id: I2249f9d04f73a911a922ad1d7f6197292c74cd92
* | | | Merge "Remove unnecessary parameter"Glenn Kasten2012-12-218-33/+18
|\ \ \ \
| * | | | Remove unnecessary parameterGlenn Kasten2012-12-188-33/+18
| |/ / / | | | | | | | | | | | | | | | | | | | | Just get the parameter on server side Change-Id: I433a63104dbb257e0d862be2ab61847cb36d1c15
* | | | Merge "Fix bug with discarded AudioRecord::read count"Glenn Kasten2012-12-201-1/+2
|\ \ \ \
| * | | | Fix bug with discarded AudioRecord::read countGlenn Kasten2012-12-171-1/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Formerly, if an AudioRecord::read() got a timeout on obtainBuffer() after already successfully transferring some data, then it returned zero. This had the effect of discarding a partial transfer, which resulted in a gap in the audio data delivered to the app. Now if a timeout occurs after a partial transfer, it returns that partial transfer count so that no data is lost. Change-Id: I0d9c2f4e495a400b56ef916a06613ba26537ca97
* | | | Rename ISurfaceTexture and SurfaceTextureAndy McFadden2012-12-185-22/+22
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | The C++ class names don't match what the classes do, so rename ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to GLConsumer. Bug 7736700 Change-Id: I64520a55f8c09fe6215382ea361c539a9940cba5
* | | Split off the current control block to separate fileGlenn Kasten2012-12-033-176/+197
| | | | | | | | | | | | | | | | | | Prepare for a new implementation of step() etc. Change-Id: I268421976ba577aa1fb5d7015de5441c05861190
* | | Emphasize distinction between streaming and staticGlenn Kasten2012-12-031-9/+15
| | | | | | | | | | | | | | | | | | Update comments and improve error checks to match Change-Id: I7370d6e59a7ef26dfb284a8b058d5ab2e0a42ccf
* | | flush() comments and checksGlenn Kasten2012-12-031-9/+10
| | | | | | | | | | | | | | | | | | | | | flush() is only useful for streaming mode. It is a no-op if track is active or uses a static buffer. Change-Id: I918ac181ffae3d16a0d67d8a7208f4aec61b5bd6
* | | AudioTrack::mute() is unused so remove itGlenn Kasten2012-12-032-23/+3
| | | | | | | | | | | | | | | | | | | | | If ever needed again, it could be implemented on client side by forcing a track volume of 0. Change-Id: I88a9b4f675b6dca2948549414f9ec2c192d29269
* | | Merge "AudioTrack inline short const methods"Glenn Kasten2012-12-031-47/+0
|\ \ \
| * | | AudioTrack inline short const methodsGlenn Kasten2012-11-301-47/+0
| | | | | | | | | | | | | | | | Change-Id: I142917edb454d510bbe545e94e6eaea30b650fae
* | | | Remove last bits of IAudioFlinger::channel_countGlenn Kasten2012-11-301-19/+1
|/ / / | | | | | | | | | Change-Id: I9e13678e0aa32a86eb27367a4aff4b32b8aec8cc
* | | am 2f6107ec: am b64def9a: Merge "[wfd] Support a low(er) power state by ↵Andreas Huber2012-11-291-0/+31
|\ \ \ | |/ / | | | | | | | | | | | | | | | triggering PAUSE/RESUME." into jb-mr1.1-dev * commit '2f6107ec8e67eea1f73b9558a5ad34caec52867f': [wfd] Support a low(er) power state by triggering PAUSE/RESUME.
| * | am b64def9a: Merge "[wfd] Support a low(er) power state by triggering ↵Andreas Huber2012-11-291-0/+31
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | PAUSE/RESUME." into jb-mr1.1-dev * commit 'b64def9a555bfbf533a2da41ba0189b9842a76fb': [wfd] Support a low(er) power state by triggering PAUSE/RESUME.
| | * | [wfd] Support a low(er) power state by triggering PAUSE/RESUME.Andreas Huber2012-11-291-0/+31
| | | | | | | | | | | | | | | | | | | | Change-Id: Ibe42bfa73816bbfeb7e652d435254d0171b89727 related-to-bug: 7638150
* | | | am 7b7f17dc: am b7c8e918: Add support for HLS playlists of type \'event\'.Andreas Huber2012-11-282-12/+27
|\ \ \ \ | |/ / / | | | | | | | | | | | | * commit '7b7f17dc9b30ff4ecdf0aea9bcfa1c518d4ac1e7': Add support for HLS playlists of type 'event'.
| * | | am b7c8e918: Add support for HLS playlists of type \'event\'.Andreas Huber2012-11-282-12/+27
| |\ \ \ | | |/ / | | | / | | |/ | |/| * commit 'b7c8e91880463ff4981e3e53e98e45d68e2fe374': Add support for HLS playlists of type 'event'.
| | * Add support for HLS playlists of type 'event'.Andreas Huber2012-11-272-12/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | related-to-bug: 6870049 Squashed commit of the following: commit eee2f3ba6bb7335f4e285632726db85645669929 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 15:02:01 2012 -0800 Make everything a lot less verbose by default. Change-Id: I884d7a7901aa1e7d4ff590f065ca57a79d2af8b3 commit 6bbdb837ed5bd88008e45efb8faf595e4051ba26 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 14:34:46 2012 -0800 HLS now properly signals media time changes at discontinuities including the start of playback (which may not necessarily be at time 0 if the playlist is of type 'event' and hasn't completed yet). Change-Id: I5ab747d024f9b8d0df72a4e06a12ebb29f62802e commit 1555589832b1878a144a976a643e1af4d61f877c Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 14:32:28 2012 -0800 As part of a time discontinuity, clients of IStreamListener can now signal the corresponding media time after the discontinuity, i.e. the first PTS timestamp following the discontinuity will be considered equivalent to the specified media time and media buffers timestamped accordingly. Change-Id: Id7db7679b7faa6efd6270620ff52e34e884f3e92 commit 5c24c605c073a11c426d025b1e7478fc1ad8365a Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 13:00:56 2012 -0800 NuPlayer sources now expose flags() and can announce that duration may change (increase) dynamically, in which case duration will be polled at 1 second intervals and communicated to the upper layers. Change-Id: I45102909b7a19eed0dda576747e3814d742a0eea commit ecb71de8e281e61971a2cd73e7161a97540bc357 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 12:57:47 2012 -0800 Stop caching duration in MediaPlayer, duration could increase dynamically. Change-Id: I7bb2f16c0abe49debdf45c776d2266aa069d7791 commit 544aec5823e6d7a3e97e15b6b23546616bcd343e Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 08:46:28 2012 -0800 An attempt to add support for "event" style HLS playlists. Change-Id: I3dfb2e801ecaff8f5d8bdb3a4fca1b18aeeb2c60 Change-Id: I48cf7f65a654d33f2f49ded74f8be22aed9e3b98
| * | AudioTrack::dump null mCblk check testZbigniew Mazur2012-11-231-1/+1
| |/ | | | | | | | | | | | | This fix is protecting AudioTrack::dump from SIGSEGEV when calling dumpsys shell command. Change-Id: I30d136e195a12d6fdad41e14f557b0ad9e59b8a2
* | Merge "Clean up channel count and channel mask"Glenn Kasten2012-11-192-26/+18
|\ \
| * | Clean up channel count and channel maskGlenn Kasten2012-11-192-26/+18
| | | | | | | | | | | | | | | | | | | | | | | | Channel count is uint32_t. Remove redundant mask parameter to AudioTrack::createTrack_l() and AudioRecord::openRecord_l(). Change-Id: I5dc2b18eb609b2c0dc3091994cbaa4628062c17f
* | | delete -> freeMarco Nelissen2012-11-191-1/+1
|/ / | | | | | | | | | | Strings duplicated with strdup() should be free()d, not deleted. Change-Id: I42bb3df9625bb8d35f80b02d15364b94c36496f8
* | Merge ""if" statements use curly braces per media style"Glenn Kasten2012-11-162-20/+56
|\ \
| * | "if" statements use curly braces per media styleGlenn Kasten2012-11-162-20/+56
| | | | | | | | | | | | Change-Id: I130e7849fd1da7a0b7fe56c3c53919d26e3843b8
* | | Merge "Fix time vs. bytes units bug in getRenderPosition"Glenn Kasten2012-11-161-1/+1
|\ \ \
| * | | Fix time vs. bytes units bug in getRenderPositionGlenn Kasten2012-11-161-1/+1
| |/ / | | | | | | | | | | | | | | | | | | Rename correctLatency since it requires thread to be locked. Use size_t for byte and frame counts. Change-Id: I178fdd18bdb823813b9563927bdff8c0d28ca5a5
* | | Merge "Don't use control block frame count after create"Glenn Kasten2012-11-162-51/+59
|\ \ \
| * | | Don't use control block frame count after createGlenn Kasten2012-11-162-51/+59
| |/ / | | | | | | | | | | | | | | | This is part of a series to clean up the control block. Change-Id: I7f4cb05aef63053f8e2ab05b286d302260ef4758
* | | Don't explicitly log tidGlenn Kasten2012-11-161-3/+3
|/ / | | | | | | | | | | If needed, it can be obtained with adb logcat -v threadtime Change-Id: I91b3911d20f7bcfc3361db4052db21ff9181f1cf
* | Use size_t for frame countsGlenn Kasten2012-11-155-34/+46
| | | | | | | | | | | | Also fix typo: bufferCount should be frameCount. Change-Id: Ibed539504db75ef99dc21c8ff1bf2987122063a5
* | Clean up frame size in AudioTrack and AudioFlingerGlenn Kasten2012-11-141-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | TrackBase::mFrameSize, mChannelMask, and mChannelCount are now const. Use TrackBase::mFrameSize instead of re-calculating frame size. AudioFlinger only sees 16-bit PCM format, conversion from 8-bit is now entirely on the client side. Previously a small part of the responsibility was on server side also. size_t is unsigned, so use %u in logs. Fix theoretical bug where TrackBase constructor was over-allocating space for non-linear AudioTrack or 8-bit PCM AudioRecord (probably benign). Change-Id: I7cbbba0bf4dba29ea751d8af341ab8e5cbbdc206