| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| | |
Ticket: CYNGNOS-3020
Change-Id: I7e8d69c5f7041b66893ea643c4bc19c3b7bcdda5
|
| |
| |
| |
| |
| |
| | |
Change-Id: I336cb003fb7f50fd7d95c30ca47e45530a7ad503
(cherry picked from commit 33f6da1092834f1e4be199cfa3b6310d66b521c0)
(cherry picked from commit bb3a0338b58fafb01ac5b34efc450b80747e71e4)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
track.
GenericSource: return error when no track exists.
SampleIterator: make sure mSamplesPerChunk is not zero before using it as divisor.
Bug: 21657957
Bug: 23705695
Bug: 22802344
Bug: 28799341
Change-Id: I7664992ade90b935d3f255dcd43ecc2898f30b04
(cherry picked from commit 0386c91b8a910a134e5898ffa924c1b6c7560b13)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch is buggy, and causing notifyConsume not called
when the buffer is erased, causing audio discontinous cannot
resume properly. This patch is not in 8994 CAF also.
FEIJ-276
This reverts commit dc5f0eb0bb08885f63a97a111b02e234efc5c413.
Change-Id: Idcb5ec9a419a979afe170d3a518ee7696a6fac6c
|
|\ \
| |/
| |
| |
| |
| |
| | |
Ticket: CYNGNOS-2373
Android 6.0.1 release 43 (MOB30J)
Change-Id: Ie0ab546349bd8a7eed51c839fba28b809e433fd4
|
| |
| |
| |
| |
| | |
Bug: 27533704
Change-Id: I992a7709b92b1cbc3114c97bec48a3fc5b22ba6e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- If flush is called on both A/V tracks and video
decoder is not yet created, In offload case the
first audio buffer will get flush and audio playback
starts from timestamp of second buffer, where as
video playback starts from zero leads to AV sync
issue in start and cause framedrops.
- Call seek to current position to align the Audio
and Video tracks. Seek to zero if playback has not
yet started.
Change-Id: I4f75d0aa908714ad292f348fa8bf7aa5f837f8d7
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- AudioSink is reopened on AudioTearDown event as well as on
decoder output format change. These events are from different
contexts, independent of each other and can occur concurrently,
doing set of thread-unsafe operations on audioSink, which
sometimes may result in fatal error.
- Any request to openSink, after teardown event is received but
before its completed, is redundant since once teardown is
completed sink is anyway going to be opened again. Also
ignoring sink reopen while in teardown would avoid concurrent
processing of thread-unsafe operations on audioSink.
- Update nuplayer to prevent reopening of sink while teardown is
still going on.
CRs-Fixed: 978013
Change-Id: Ieb3825f133c2099e07d6e92ef101dd5156af8a20
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In non-offload usecase, mAnchorTmeMediaUs is updated
for every audio FillBufferDone. Added the same logic
for offload case, otherwise video updates max media
duration as ZERO, for clips which have small audio
data, and all the buffers are sent to DSP before first
video buffer is processed at NuPlayerRenderer level
Change-Id: Ib6e0f251207c87ad1525041d07187cef91f4dda5
|
| |
| |
| |
| |
| |
| | |
Fix compilation issues that appear when enabling LOG_NDEBUG.
Change-Id: I87e9e5ac66157759dd6f521fab0dd346089a011a
|
| |
| |
| |
| |
| |
| | |
- Remove Virtual for SetDataSource()
Change-Id: Ie8502297376f6663a38f95195ff8329b7a42dcb9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make RTSPSource to accept some video damaged access units to enhance
fault tolerance.
Disable this change as default. add the property to enable it such as:
"adb shell setprop rtsp.video.keep-damaged-au video/3gpp" for H263
"adb shell setprop rtsp.video.keep-damaged-au video/avc" for H264
Change-Id: I3b7fb4b098aba5daf149cf36dab7e9380c6d2f69
|
| |
| |
| |
| |
| |
| |
| | |
- Extend onResume in-order to implement the Audio Voice Concurrency
changes.
Change-Id: I2b02f644df23f35b6d37d07a99d74ad56470b142
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- During offload (WH) to non-offload fallback (BT),
anchor time is getting updated incorrectly with
offload renderer position when it tries to start
sink using offload mode only.
- update anchor time post resume only when sink is
started successfully.
Change-Id: I2c2992afa90506e08389226964b0bd5a5be07529
CRs-Fixed: 978596
|
| |
| |
| |
| |
| |
| |
| | |
Break CC SEI parsing when payload size exceeds buffer size
to avoid a CHECK that have been seen in MTBF statistics.
Change-Id: Ifd97648678a935ac815dd616301d46f9bf583838
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes some playback problems on the Zenfone2 (running on 5.0
based blobs).
The problems are easily reproduced by viewing a video in Chrome and
then switching to full-screen mode. The change in surface causes
the log to get flooded with messages like:
dc_device_post: Buffer ID=14460 not imported by D
until Android crashes. With this change, it ends up correctly
mapping the surfaces after the flush fixing the problem.
The code that is being #ifdef'ed out was added in M in commit
commit a81c6229638a4db56752dd77a6610e0f0971e877
Author: Lajos Molnar <lajos@google.com>
Date: Fri Jul 10 19:17:45 2015 -0700
nuplayer: use codec->setSurface when possible to avoid seeking
Bug: 22414719
Change-Id: I0442e12af960f86a0fc090b4a469c62ba638a1a0
and it appears that our blobs simply cannot handle this optimization
and therefore we need a means by which to disable it.
Change-Id: I105d647e724f5b63ef5cb0852481ecd2990c2d5e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In smooth streaming enabled case, flush the decoder
if seamless format change is supported.
Otherwise,ramdomly video frames with old resolution
are queued to the new surface and results in green frames.
Calling flush ensures that all the old video frames
are cleared.
Change-Id: Ia020a01fd0eaa8af8e48b6edb526a3f53875b068
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
-AV sync is lost after multiple pasue/resume operatins.
-Renderer does not update anchor time post resume and it may
lead to AV sync loss after multiple pause/resume in offload
playback case.
-Get renderer position and update anchor time post resume
for offload audio
Change-Id: I2d9ba21c0e9b193ec77213de12229407cbf8dfd6
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Audio buffer filling in renderer is still happening, though pause was
issued. As a result, EOS was reported irrespective of renderer state.
If nuplayer driver receives playback complete after stopped, it will
again be activated, which appears stop is not taking effect.
Add a check for driver state to allow looping only if it was in running
state.
Change-Id: Ic9f8eac635a774cd805b3978fab640d73ae35744
CRs-Fixed: 958311
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Use the raw PCM format to perform the early open of the audio sink.
This ensures that the renderer will do the same.
* Fill in stubs for timestamp and position calculation. This fixes
underruns and other issues.
Change-Id: I8d761e523194cc12f387b4b2aa1594536e56da01
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* When the extended sniffer detects a file type that only it can
handle, it will set a flag in the metadata. In some cases,
an extractor exists in Android already for the filetype however
it may be known to fail or we may want different behavior.
* This flag is checked in MediaExtractor, but GenericSource does
a little dance in order to stack DataSources for DRM and was
throwing out this metadata (it's not really used by AOSP), so
the desired behavior was not seen for some cases.
* Add a new optional argument when creating the MediaExtractor to
pass in the metadata from the original sniff so that the extended
extractor is used where necessary for streaming formats.
* This fixes FLAC offload with Tidal.
Change-Id: I7d6b875346ce63b60cd3c37572b779665bfe217c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
b/25372978 tracks an assertion in Renderer when the
size of the buffer to be written is not a multiple of audio sink
framesize. Until resolved, avoid assertion and notify an error
back to the player
CRs-Fixed: 941002
Change-Id: Id54b357dcbf7afe90e2290665392275d6dd5eaef
|
| |
| |
| |
| |
| |
| |
| |
| | |
not request or send out data."
* Missing from backport
Change-Id: I562d28a4770aec2f9c547c482e79cca49be9dbb9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
request or send out data.
Port of AOSP commit: 3bc667014875aba35102941b3997d242c303aa0d
Bug: 25372978
CRs-Fixed: 941002
Change-Id: Id66ab9b9961d5a3b9fb783ae73c27ed1c8054db8
|
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 00208bc4c6d725ea9ce0795a897d42b5a32360c3.
CRs-Fixed: 941002
Change-Id: I22c9954fc3ed3207f218dde0c02f7dddc8751df9
|
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 9944bae1fda19634b04cd4e2b755c3d368405a8b.
CRs-Fixed: 941002
Change-Id: Ief7c6a1a8d9fd290da49867b1fef9f6e9e2a51a1
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
-Update channel mask from channel count if parser reports channel mask to be 0
-Update source format for each buffer by extending call to setPcmFormat when
aggregation is not done
Change-Id: I1f4ce07e3e784d85e63be03a69ac1395bfa913e2
CRs-Fixed: 948222
|
| |
| |
| |
| |
| |
| |
| | |
Do not drop EOS frame even if DATACORRUPT flag is associated
with it.
Change-Id: Ib231dd8eb89aa14f824760562fcc371246d7ba9d
|
| |
| |
| |
| |
| |
| | |
* Found using "perf sched latency"
Change-Id: I358a6f9baf3d52b9ed7f010c06893dbf839e1973
|
| |
| |
| |
| | |
Change-Id: Ie9a3a8c335611d11c84bf24cb50c73c1644ad381
|
| |
| |
| |
| |
| |
| |
| | |
* Annotate source buffers with the audio format
* Add support for 32-bit signed PCM offload (zero copy)
Change-Id: Id758830784740c0a038452d383c8ec8e3e4593bb
|
| |
| |
| |
| |
| |
| | |
* Remove unnecessary check condition.
Change-Id: I3267a0c13165d74a2ea90333b42f000b51ace98b
|
| |
| |
| |
| |
| |
| |
| |
| | |
* This code should have been left inside the conditional
* Also fix a misplaced flag which remained set even if opening
in offload mode failed
Change-Id: Id72c17051db601e37b2289e6d904ce8f75ba6878
|
| |
| |
| |
| |
| |
| |
| | |
* Fix PCM offload when passthrough isn't used (OMX decoder)
* Fix resume of PCM offload after pause timeout
Change-Id: I742eafd6ae8656fb214ba6b81cc63af57590c28c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Audio EOS won't be notified by renderer if AudioSink is not ready
and first buffer itself has EOS. Playback complete won't happen
due to missing audio EOS. Hence, audio EOS needs to be handled
and notified.
Change-Id: I779c7034d1964485c2b064c0179d3cd341af5a5f
CRs-Fixed: 801121
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
While offload playback is going on, if user seeks
to new position and after playback for some time,
pauses till offload tear-down happens then playback
resumes with old seek position
The book-keeping of seektime for start of playback
mStartupSeekTimeUs is also done in running state,
it should be done only if current state is paused.
Change-Id: I4173a2ee4244bcc6794822dde24c467f0189b84f
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
While offload playback is going on, if user pause
and seeks to new position before offload tear-down,
on resume playback starts from old time-stamp
Once tear-down happens NuPlayer loses updated time-stamp
so while resuming it resumes playback with stale time-stamp.
Make sure the updated time-stamp is maintained in
NuPlayerDriver wich is used while starting the playback
after resume.
Change-Id: I3451051f569264b21a43be81b01798fabed0182e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Fix compilation with debug enabled
* Allow FLAC offload to be enabled independent of QCOM_HARDWARE,
tested with the Nexus 5X and is working!
* Disable the FLACExtractor if offload is enabled since it can
only output decoded PCM. This will force FFMPEG to be used,
which does everything we need for FLAC offload
Change-Id: I7d71c153a6a6ea7df8e32bc73f5cbe9f51cdcf64
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Forward-port the open-source code from L which was moved to closed-source
in M. This is being done out of necessity- the architecture chosen by
Qualcomm is not optimal and doesn't work well with a singular
codebase which attempts to service a large number of devices.
* This patch brings in the code to support PCM offload (AudioFlinger
bypass). This allows for playback of high resolution clips without
decimation stages, and enables reduced power consumption for audio
pipelines which take advantage of the Hexagon DSP (effects).
Change-Id: I0ef15fc3df538ab723f3c12ce0ed71d0e607c99e
|
| |
| |
| |
| | |
Change-Id: I25708df616fe53d709b80c65ddecbdddef303124
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
https://android.googlesource.com/platform/frameworks/av into cm-13.0
Android 6.0.1 release 3
Change-Id: I2f2a1fe1b58c828e8341556996211562d6e195ab
|
| |
| |
| |
| |
| | |
Bug: 25070434
Change-Id: Ib0eb6a419683a0e686a4f63b82e9300cb1f69484
|
| |
| |
| |
| |
| | |
Bug: 25070434
Change-Id: Iade3472c496ac42456e42db35e402f7b66416f5b
|
| |
| |
| |
| |
| |
| | |
Bug: 21093153.
Change-Id: I77e03a620b43967991dcee9d6ca01f67c8b7a02e
(cherry picked from commit 15ce09dddf830d6a6ca097c5ec0a7ec7c35b6b3a)
|
| |
| |
| |
| |
| |
| |
| | |
Delay until resume.
Bug: 23669269
Change-Id: I0a805812d80b1aad561425442bca0fc05a05752f
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
AwesomePlayer never did, and neither should NuPlayer.
Bug: 18656047
Change-Id: Ia9abe42cfe6ea643633cec859e9da770092569bb
|
| | |
| | |
| | |
| | |
| | |
| | | |
Bug: 24749881
Change-Id: I0d3a757262446ac702dfebd464d5e59f1a98eba8
(cherry picked from commit 3261f0db54e31e652af9bd3b76a8e85174f5ee87)
|
| |\ \ |
|
| | |/
| | |
| | |
| | |
| | |
| | | |
Bug: 24338126
Change-Id: Ic55d1a551c18255423423079b6c2bf045dea6e44
(cherry picked from commit f3631d2921ee0738f87427848e38873370ef9ec0)
|