| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\ \ \ \ \ \
| |_|_|/ / /
|/| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Bug: 10620944
Change-Id: I44c0d09a3d313ae8f724fbe61fa5f36cf5b38b6d
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | |
| | | | | | |
fixes bug b/10294801" into klp-dev
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This fixes bug b/10294801
Change-Id: Ie96d36e2ff6fdee0c949a85da3602ab04b34bf6e
|
|\ \ \ \ \ \
| | |_|_|/ /
| |/| | | /
| |_|_|_|/
|/| | | | |
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | | |
b/10528409
Change-Id: Ifcaf0488d63e87676b1e9382437943138deb76a6
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Check that get_presentation_position is non-NULL before calling.
AudioTrack::getTimestamp not implemented for fast tracks.
Fix typo in Track::getTimestamp().
Fix bugs in AudioTrack::getTimestamp after stop:
- getTimestamp while stopped is not allowed.
- stop, start, getTimestamp now returns the correct value.
Change-Id: Ie8d9dc1f28d8927634e04175a68b147ffc2ea8eb
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
using SingleStateQueue observer
Change-Id: I7b1928b087f1e676c7b291df6cefa7707301662c
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
and forwards them to each track's ExtendedAudioBufferProvider::onTimestamp().
Change-Id: I06fb9586bb7e20d5c0289abdc8cac6cd3fd2f6e8
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
and implement them in SourceAudioBufferProvider using the associated NBAIO_Source,
and in Track using the associated AudioTrackServerProxy.
Change-Id: I60dc4adba63fc1dc452ff16caf347e4a7c8242c2
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
with dummy default implementation, and implement in MonoPipeReader.
onTimestamp is meant to be called by the corresponding sink when it has
a new timestamp available.
Change-Id: I8a90d24d1061e4a592ce5bd8ee1c9fce6bdd8a84
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
as typedef AudioTimestampSingleStateQueue and use it in MonoPipe.
Change-Id: Idaebb362bd9d0a81a7ed83792ab9369dc37c0e74
|
|\ \ \ \ |
|
| | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
with a real implementation in AudioStreamOutSink
for dummy implementation initially in MonoPipe.
Use in AudioFlinger::PlaybackThread::threadLoop_write()
to keep the input to the timestamp latch up-to-date.
Change-Id: I10ef277991b63bb43d55d6f3df75116ef32246cd
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The audio object type for parametric stereo and lowdelay was not passed
to the FDK AAC encoder.
Bug 9428126
Change-Id: Ic32822afff8b1da6a2d80c1b65d514f24059fb29
|
| |_|_|/
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Currently, we only wait 200 ms for the HAL to switch to the precapture
state. This is insufficient at low preview frame rates (dark
conditions, ~10 fps), where a 3-request-deep HAL pipeline will take
300 ms to produce a precapture trigger output. In those cases, we
would prematurely skip the precapture sequence, causing bad quality
pictures.
Since this is a fallback timeout to prevent deadlock in case of a bad
HAL or framework implementation, increase the timeout to 1 second. Has
no impact on correctly-working implementations
Bug: 10430191
Change-Id: I08e99f8e7f3beb8f15dcee32632cdebfe3dca8b3
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit 5ff7836da0220b3097f36c8a5e82111816ebca62.
Fixes Fatal signal 6 (SIGABRT)" when playing or downloading a video
bug: 10542864
Change-Id: I7f81a41c3acdbeb571a514b3f65e7ba37d403cca
|
|\ \ \ |
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | | |
This reverts commit 9da36a6c8df70a5c8179ac78fab33cfbb5078cb2.
Bug: 10571297.
Change-Id: I76f20fe34872ea54fce626077462fb86c8c3f02e
|
|/ /
| |
| |
| |
| |
| |
| | |
Make sure that a flush received after a pause is forwarded
to the HAL after the pause.
Change-Id: Ib3221f70c59f8b3dbbac20b23104f6b779b75be0
|
|\ \
| | |
| | |
| | | |
klp-dev
|
| | |
| | |
| | |
| | |
| | | |
Bug: 10552448
Change-Id: Ie93ba744ae6705aa657f980ae8e08ec624feeb39
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conceptually it should be the same whether EOS is signalled on the last
buffer holding data, or an empty buffer that follows. Make it so that
this actually behaves the same for mp3, AAC and Vorbis.
b/8747869
Change-Id: Idece8ef45689a3ffaf70fb45d19862d7b93b2f92
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
RequestThread's internal busy flag (mPaused) was not being immediately
set when new work was submitted to it. This allowed for a race
condition where a capture() followed by an immediate
waitUntilDrained() would immediately return from the wait.
Set the mPaused flag to false immediately in capture() and
setStreamingRequest() to avoid this, instead of waiting until the end
of the next RequestThread iteration.
Bug: 10531739
Change-Id: I54a79fe5361d527ec717f41ad805e9b319a48cd8
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
using a new timestamp latch in PlaybackThread, and
AudioTrackServerProxy::framesReleased() which returns mServer.
Change-Id: I1ebfba968c773faaab95648c272fd3ebd74718d6
|
|\ \ \ \ \ \
| |/ / / / / |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
with a dummy implementation initially,
and use it in AudioFlinger::TrackHandle::getTimestamp()
Change-Id: I2da88fc52a135a7f0d9fd9538986e919dc8ccd3b
|
|\ \ \ \ \ \
| |/ / / / / |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
with dummy implementation in AudioFlinger::TrackHandle, and
implement AudioTrack::getTimestamp() using IAudioTrack.
Also document invariant that mAudioTrack and control block are always
non-0 after successful initialization.
Change-Id: I9861d1454cff7decf795d5d5898ac7999a9f3b7e
|
|\ \ \ \ \ \
| |/ / / / / |
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This new API is intended to replace latency(), especially for A/V sync.
The application will receive periodic timestamp notifications. The period
is unspecified, but will likely be more frequent after a pause or stop,
set position, underrun, display on/off change, route change, or when audio
framework notices drift. It will be up to the higher level application
(e.g. Stagefright) to reconstruct a clock that updates more frequently.
The current latency() method doesn't indicate when latency changes
due to screen on/off state, route changes, etc.
Includes squahsed change-Id: I2082f8752040be0c234b1a6f1be2e269abf2ce7c
Dummy implementation of AudioTrack:getTimestamp()
Rename AudioTrack::Timestamp to AudioTimestamp.
Renaming and pulling up to a higher level allows more modules to use it.
Change-Id: Ibf7f6a207c3f8d8697f25ede2cd5200697fadb86
(cherry picked from commit dd69eb893867634fd169c03204a6ad7c74b351e7)
|
|\ \ \ \ \
| |_|_|/ /
|/| | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Use realtime queried from AudioTrack as the only time for compress
offload playback.
Change-Id: I314447637715c4864690c94173260165369146cb
|
|\ \ \ \ \ |
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When the amount of frames that can be written to the buffer
is less than requested, AudioTrack::processAudioBuffer() estimates
the time needed to free the missing amount of frames and asks the
callback thread to sleep.
This behavior is not possible for compressed audio and should not
be enabled for offloaded tracks.
Change-Id: I5b657283cfba06254c9ac0ea9b447467cce7eb61
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Recordings are now limited to 3 minutes. The time can be set lower
with the --time-limit option.
Bug 10529645
Change-Id: I6ac19b9da8d616d38262414c2e821d56efcec55d
|
|\ \ \ \ \ \
| |/ / / / /
| | / / / /
| |/ / / /
|/| | | | |
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Use an "am broadcast" command to notify the media scanner that
a new video file is available.
Bug 10096103
Change-Id: I8261d81d96832969ebb9031a9766c1b1f2a569ed
|
|\ \ \ \ |
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Otherwise the reset_l() inside setDataSource_l() will get stuck
waiting for the PREPARING to be cleared.
Bug: 10426788
Change-Id: I7ccdf7abcea71cf150544c7cd3f4781e3a946b97
|
|\ \ \ \
| |/ / /
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
1. Don't expect plugins to support an empty mimeType in isContentTypeSupported
2. Move the cts test mock drm plugin to the cts tree so it is always used
b/10528466
Change-Id: I6023f6165b1e9d294986f7e5cd0896e056e376f1
|
|\ \ \ \
| |_|/ /
|/| | | |
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When restarting an AudioTrack from stopped state, it is necessary
to force refresh of mRemainingFrames by processAudioBuffer() as
the last write before stop() could be partial. No doing so will lead
into unnecessary sleep before filling the non contiguous part
of the buffer returned by obtainBuffer() when processAudioBuffer()
is executed for the first time after start().
Change-Id: Id703f8dc092a6f07c905eee194054b4a978f979d
|
|\ \ \
| |_|/
|/| | |
|