diff options
author | Richard Fitzgerald <rf@opensource.wolfsonmicro.com> | 2013-05-14 15:52:03 +0100 |
---|---|---|
committer | Eric Laurent <elaurent@google.com> | 2013-07-26 10:12:33 -0700 |
commit | 94ea60f975c3eb7ce6d2a4430538a42a5fc3babd (patch) | |
tree | b16c8a2a59ab68cf0564eefea6c9e68baba56860 /media/libstagefright/include | |
parent | d89532e133b881c7e0dac089333ad7642fc510f1 (diff) | |
download | frameworks_av-94ea60f975c3eb7ce6d2a4430538a42a5fc3babd.zip frameworks_av-94ea60f975c3eb7ce6d2a4430538a42a5fc3babd.tar.gz frameworks_av-94ea60f975c3eb7ce6d2a4430538a42a5fc3babd.tar.bz2 |
stagefright: offload playback support
Offloading of compressed audio decoding to audio DSP
is implemented for audio only, non streamed content.
when the datasource is
AudioPlayer:
- Create an offloaded sink when playing a compressed
source
- Send metadata to audio HAL
- Return sink start error to AwesomePlayer so that a
new player for PCM audio can be created in case of problem.
- Forward stream end and tear down callback events to AwesomePlayer
- Stop the sink and wait for stream end callback when EOS is reached.
- Pause and restart the sink if needed before flushing when seeking
(otherwise flush is a no op).
- For current media time, directly query the render position from the
sink and offset by the start position (seek to time)
AwesomePlayer:
- When initializing the audio decoder, check with audio policy manager
if offloading is supported. If yes, create the software decoder in
case a reconfiguration is needed but connect the audio track directly
to the AudioPlayer.
- In case of error when starting the AudioPlayer, reconnect the software
decoder (OMXSource) and recreate a PCM AudioPlayer.
- Handle AudioPlayer tear down event by detroying and recreating the
AudioPlayer to allow transitions between situations were offloading
is supported or not.
- Force tear down of offloaded AudioPlayer when paused for a certain time:
This will close the sink and allow the DSP to power down.
Utils:
- Added helper methods:
- send meta data to audio ia sink setParameters
- query audio policy manager if offloading is supported for a
given audio content
Change-Id: I115842ce424f947b966d45e253a74d3fd5df9aae
Signed-off-by: Eric Laurent <elaurent@google.com>
Diffstat (limited to 'media/libstagefright/include')
-rw-r--r-- | media/libstagefright/include/AwesomePlayer.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/media/libstagefright/include/AwesomePlayer.h b/media/libstagefright/include/AwesomePlayer.h index 0d17d65..d3c74e2 100644 --- a/media/libstagefright/include/AwesomePlayer.h +++ b/media/libstagefright/include/AwesomePlayer.h @@ -226,7 +226,7 @@ private: void postStreamDoneEvent_l(status_t status); void postCheckAudioStatusEvent(int64_t delayUs); void postVideoLagEvent_l(); - void postAudioTearDownEvent(); + void postAudioTearDownEvent(int64_t delayUs); status_t play_l(); |