History log of /hardware/libhardware/modules/audio_remote_submix/audio_hw.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
90b0fbd13f97127e29ea565c09b64cc25ab6e9c9 31-Oct-2012 Jean-Michel Trivi <jmtrivi@google.com> Shutdown audio pipe when closing input stream

Writing to the audio pipe for the remote submix is blocking, unless
the audio output pipe is in shutdown mode. The playback thread
could stay blocked on the write if the input stream has already
been closed.
The change consists in shutting down the pipe also when the input
stream gets closed. When the pipe is in this state, simulate
timing in the write operation so we don't drain the output faster
than realtime.

Bug 7424646

Change-Id: I5feb3be642b0ee7eef10dee0141308684ee9c811
/hardware/libhardware/modules/audio_remote_submix/audio_hw.cpp
d44130339c7317faaa5cbab767eccc37347ffd25 30-Sep-2012 Jean-Michel Trivi <jmtrivi@google.com> bug 7253033 Add "exiting" state to remote audio submix module

Support receiving a parameter that sets the remote audio submix
module in a state where the audio pipe will unblock any current
write operation and not block anymore.

Change-Id: Ia3119cd79972afff0de24187dae627855a468ebf
/hardware/libhardware/modules/audio_remote_submix/audio_hw.cpp
97c262fc848c407f316fd7fe2b468a540f3bc38f 18-Sep-2012 Jean-Michel Trivi <jmtrivi@google.com> Remote submix: fix sink/source reference count handling

The reference count on the strong pointers to the audio sink and
source should be done on the object retrieved from the device
structure, not by accessing the corresponding fields, as they
can be cleared while reading or writing audio data.

Change-Id: I446a2c7bdcb0758b4013b0ad75450a15203fb9da
/hardware/libhardware/modules/audio_remote_submix/audio_hw.cpp
35a2c167b4ee090b5dd9779ecb40f82cdaf1c74d 17-Sep-2012 Jean-Michel Trivi <jmtrivi@google.com> Turn off logs in remote submix audio module

Change-Id: I61cd15534b1cd764b06f615569cdf02edbba909c
/hardware/libhardware/modules/audio_remote_submix/audio_hw.cpp
eec87706d21fc0ac4ad10ede86943770b2533564 17-Sep-2012 Jean-Michel Trivi <jmtrivi@google.com> Remote audio submix: blocking writes and sleeping reads.

Change how the remote audio submix is handling piping audio
through the pipe:
- use a MonoPipe as audio sink for blocking writes,
- use a MonoPipeReader as audio source for non blocking reads,
and keep track of when recording started to align the
time at which the in_read() call should return with the
projected time of the recording duration.

Change-Id: I8b0f8c56a0486806101e272dfbf9c6d2d1c11112
/hardware/libhardware/modules/audio_remote_submix/audio_hw.cpp
6acd966320c7f124f103044f3a152d90d6e38749 12-Sep-2012 Jean-Michel Trivi <jmtrivi@google.com> Remote submix audio module: sleep less, log errors

Neither write nor read are blocking, but write simulates
timing by checking the clock between two writes and
computing how long the next sleep should last.

Change-Id: I495ae6d44b0cf75a24fe4b70662cfac679049c67
/hardware/libhardware/modules/audio_remote_submix/audio_hw.cpp
5d85c537fcae931428ba8b7a47fdd393cc3cbd88 10-Sep-2012 Eric Laurent <elaurent@google.com> update audio remote submix API revision

Update remote submix audio HAL API revision to 2.0
(new audio device enums).

Change-Id: I61d5faf498144002929e570ee50375b059fb17c5
/hardware/libhardware/modules/audio_remote_submix/audio_hw.cpp
88b79cb001d1c733275c7cad490c32b143f78860 16-Aug-2012 Jean-Michel Trivi <jmtrivi@google.com> Add audio module for remote submix

New definitions of audio devices for remote submix: one representing
a sink for writing the audio buffers that won't be played directly
locally, another representing the audio source that can be read from
to obtain the audio mix.

New audio hardware module encapsulating the submix loop functionality.
Create a Pipe to serve as non-blocking audio ring buffer between
the output device (the sink) and the input device (the source).

Change-Id: I527f4721a69ced0430a99ebba3b4db7d419f2bb2
/hardware/libhardware/modules/audio_remote_submix/audio_hw.cpp