| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Very high quality is enabled only for 44.1 -> 48 or 48 -> 44.1,
and uses low quality for all other use cases.
Track estimated CPU load and throttles the quality based on load;
as currently configured it should allow up to 2 instances of very high quality.
Medium quality and high quality are currently disabled unless explicitly requested.
Details:
Only load .so the first time it is needed.
Cleanup code style: formatting, indentation, whitespace.
Restore medium quality resampler, but it is not used (see next line).
Fix memory leak for sinc resampler.
Check sample rate in resampler constructor.
Add logs for debugging.
Rename DEFAULT to DEFAULT_QUALITY for consistency with other quality levels.
Renumber VERY_HIGH_QUALITY from 255 to 4.
Use enum src_quality consistently.
Improve parsing of property af.resampler.quality.
Fix reentrancy bug - allow an instance of high quality and an instance
of very high quality to both be active concurrently.
Bug: 7229644
Change-Id: I0ce6b913b05038889f50462a38830b61a602a9f7
|
|
|
|
|
|
|
|
|
|
| |
libnbaio is now a separate shared library from AudioFlinger, rather
than a static library used only by AudioFlinger.
AudioBufferProvider interface is now also independent of AudioFlinger,
moved to include/media/
Change-Id: I9bb62ffbc38d42a38b0af76e66da5e9ab1e0e21b
|
|\
| |
| |
| |
| | |
* commit '4348cbcec6c3aec02af722d633ebda24f94dfcc8':
Initialize pool's buffer pointers to null.
|
| |
| |
| |
| |
| |
| |
| |
| | |
If these pointers are not properly initialized to null and
allocation of one of the buffers subsequently fail, the freePool
mechanism might erroneously free uninitialized pointers.
Change-Id: I2101bdb2cc576e5f50b5a1440e6fc0c54dc4e81b
|
| |
| |
| |
| | |
Change-Id: I1c1896da48983aa9f1462a4b471f910498816f60
|
| |
| |
| |
| |
| |
| |
| |
| | |
The crash was because the video sample was too short and has 0 duration (or a single frame video).
This patch is just simply not to support 0 duration video for editing.
Change-Id: I2c7ff78b1e884a4d3a5051f87cdbeeb5dc3078a6
related-to-bug: 6670656
|
|/
|
|
|
|
|
| |
This change updates all the uses of ANativeWindow to use the new ANW functions
that accept and return Sync HAL fence file descriptors.
Change-Id: Id7db42d8d6380f8b440d88476ce9211c6225fb16
|
|
|
|
|
| |
Change-Id: I19308c5fb0f39f8e696092186f4386e3dad06894
related-to-bug: 6647465
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
At least two use cases are affected: trimming and transition clip generation.
If the starting time of the transition or the trimming position is not the same as
that of any existing video frame, the video frame right before the transition
starting position or the trimming position must be encoded as the the first video
frame for the transtion or the trimmed video, and it is encoded as a key frame.
This frame was not saved without the patch.
In the transcoding phrase, since we could not find such a frame, the existing
code did not return an error, and incorrectly used some other frame to serve
as the reference key frame for the remaining video frames of the transition or
the trimmed video. As a result, we may see corrupted or green video frames in
the exported movies.
The fix is to always save the frame right before the trimming position or
the transition starting time, so that a key frame will always be encoded, and
the right reference frame is used for remaining video frames. In addition,
checks are added to prevent from future mistakes to use incorrect reference frames.
Patch was originally contributed by teng.hong@nxp.com
Change-Id: I182784d4c1786224445224634edab3338bf2278f
related-to-bug: 5713461
|
|
|
|
|
|
|
|
|
|
|
| |
Using hard-coded length value easily leads to buffer overflow.
Refactor the code a bit to make it more readable, and more
extensible, and less subject to the buffer overflow coding error.
Patch originally contributed by teng.hong@nxp.com
Change-Id: Id262915302ccea8ae3b0121bf39890ab463aeeb7
related-to-bug: 6328360
|
|
|
|
|
|
|
|
|
| |
access unit
Patch was contributed by teng.hong@nxp.com
Change-Id: I0f56361d839f18627e512d18e86f51b58b9b0e05
related-to-bug: 6240789
|
|
|
|
|
|
| |
related-to-bug: 6502980
Change-Id: I9cbbf44eb53c406263df4003cc3de2af4d239180
|
|
|
|
|
|
| |
editor engine"
This reverts commit 1af1f6a60b9fa217b6809e767babf1ce8a2e95c9.
|
|
|
|
|
|
| |
related-to-bug: 6328360
Change-Id: I36324820c7e72fedd8c4caf1b03443a4f7cec37f
|
|
|
|
| |
Change-Id: I97ce29ecfde4df171120a3570db9575b32c8d362
|
|
|
|
|
|
|
|
|
|
| |
Allow AudioSink to use deep audio buffering when the
source is audio only and its duration is more than
a certain threshold.
This helps improve battery life but implies higher
audio latency.
Change-Id: Ie79915b61c370292f05aabda9779356570e03cbb
|
|
|
|
| |
Change-Id: I27c46bd1d1b2b5f96b87af7d05b951fef18a1312
|
|
|
|
|
|
|
|
|
| |
This makes NuPlayer use a SkipCutBuffer when needed, and adds a new
AudioSink method to retrieve the number of frames written so far, so
NuPlayerRenderer can calculate how much data it can write without blocking.
Also make some more methods const.
Change-Id: Id7d253ad8a7b85e9a84ca2baafbe32817b16c744
|
|
|
|
|
|
|
| |
o plus a few file relocation: ActivityManager.cpp/h, SoundPool.h, etc
o remove some runtime dependencies to libandroid, libandroid_runtime, etc
Change-Id: I047a47c5fb361dd5cf85cd98798c39f629a75d10
|
|
|
|
|
|
|
|
|
|
|
| |
/frameworks/base/media/jni
o move VideoEditorMain.h to /frameworks/av/libvideoeditor
o removed JNI related C_INCLUDE in some Android.mk files
o related-to-bug: 6214141
Change-Id: Iadd01eef701deb728fbac1a3f524ea1db72f6b48
|
|
|
|
|
|
| |
o related-to-bug: 6214141
Change-Id: I3ef60ca7670df37d7e43546e244cfe6a33093ba9
|
|
|
|
| |
Change-Id: I4bff781a26d01023d23d5285a8aa83dbce46c629
|
|
|
|
| |
Change-Id: I522861043cc2ee905258a2ae409bf9dddbe452dc
|
|
|
|
|
|
|
|
| |
Part of this change will be reverted after the move is complete.
p.s. this dependency on AudioFlinger should be removed
Change-Id: Ib29d413b74a6dc1babe7a33471128be11304ce56
|
|
|
|
|
|
| |
o related-to-bug: 6044887
Change-Id: I3a1143b09560a6b8fd67d23bbb375c83442a12e9
|
|
|
|
|
|
| |
o related-to-bug: 6044894
Change-Id: I192f0436572d240fd2fb88446f6fa63ba0128d7e
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
o MediaBufferPull class will be useful for the audio encoder also once we switch
to use OMX-based audio encoder.
o This is the part one for fixing bug 5947347
Change-Id: Icddfeb636f7a59ad766220ef0d3155abace73ad3
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
VideoEditorSRC doesn't need to include AudioMixer.h.
VideoEditorResampler includes AudioMixer.h, which requires
system/media/audio_effects/include in the include path.
Change-Id: Ibf6194831aeb91e788ce0a3b1282a0d930ee6e48
|
|/
|
|
| |
Change-Id: I425cfd442257560dcf141d3d8599ddc7d21c1d13
|
|
|
|
|
|
|
|
|
| |
Update the code to use the AudioSink::open() interface that
takes a channel mask as an additional parameter. The code
is only stereo, and returns an error when attempting to create
a video editor audio sink with more than two channels.
Change-Id: Ib9bba067da0b286c08656976b89fba7c8b42f99f
|
|
|
|
| |
Change-Id: I0d203f4e7aa83e0449f7ebb9f3cafe021e38fc2f
|
|
|
|
| |
Change-Id: I720d5e6ac7e4455d7ab59eab7e9c2478b911228a
|
|
|
|
|
|
|
| |
Update the getNextBuffer signatures to have an additional (but
ignorable) parameter used to implement timed audio output.
Change-Id: Icb98e4af4d136c234ae8c5cbb4a5de4350b436bb
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I307b3f565808ec8e3b9a4d944c6c0d1f603b04c9
|
|/
|
|
|
|
|
|
|
|
| |
When the transition clip is generated: two clips in general are involved.
The second clip was assigned the incorrect effect number when a transition was coupled with a color effect
o patch contributed by Hong Teng <hongteng@nxp.com>
o related-to-bug: 5713461
Change-Id: I61b497620264692b331da8b8e7753240edc5d1aa
|
|
|
|
| |
Change-Id: I447057f861bb6b7977de48a598fd5bed7e75460b
|
|
|
|
|
|
|
|
| |
issues in the video editor engine
o related-to-bug: 5947347
Change-Id: I8eae8166e87e5809e2f3699f760f3a3e57895b4f
|
|
|
|
|
|
|
|
|
| |
o moved local types inside the class to avoid external exposure
o use non-virtual destructor since it is not meant to be a base class
o removed unused header files and moved some of the header files to .cpp file from .h file
o replaced #define constants with local enums
Change-Id: Ib321fc8c0379955083bc892c2ef93ed58c6c2ff5
|
|\ |
|
| |
| |
| |
| |
| |
| | |
o related-to-bug: 5890998
Change-Id: If0198e52ff7bbd7422f219f55a37aae97f7d74f1
|
|/
|
|
|
|
|
|
|
| |
o added #ifndef/#define in the header
o removed unused variables
o renamed some types and methods
o replaced macro with class private enum
Change-Id: I588ef062fcadcd11591a5a55b4aed771c724492f
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
o this patch removed the AudioPlayerBase class.
o verified and passed functional tests
Change-Id: I33727069ef63136979b954a9dee1c35309ef6dd4
|
|/
|
|
| |
Change-Id: Ib566226b427f5357d52c7b9c0742afa05fdd3a84
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
o fixed incorrect design and got rid of PreviewPlayerBase class
o removed obsolete/unused code as much as possible and reformatted the source code
o verified and passed functional tests
o More to come ...
Change-Id: I7a89162f8b9d9ea6eabcf0457366cd2f6d970d11
|
|/
|
|
| |
Change-Id: Ic525ed66308681ec62363bc90ed2cea42c165a2b
|
|
|
|
| |
Change-Id: Ia0b6af98bd8f2ccb4d79705064a225e5f699ed8d
|