History log of /frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
a0940a569f2bc24b00dc10ce0fa7658b1dc3a3a5 24-Sep-2014 Lajos Molnar <lajos@google.com> stagefright: misc fixes to software video encoders (and decoders)

- move logic to set encoder parameters to common encoder class
(similarly to what was done for decoders)
- set compressed buffer size based on frame size and compression ratio,
and codec-specific minimum size
- set raw buffer size based on frame size and metadata mode
- do not set stride and slice height on compressed ports
- advertise only QCIF support for google H263 encoder
- set large-enough input size for video decoders to support adaptive
playback
- do not change input buffer size on output port reconfiguration, as
no input buffer reallocation takes place
- do not return empty buffers with EOS after EOS has been signaled

Bug: 18513091
Bug: 18639027
Change-Id: Ib13492ef66adf331aa4572c67d2b283ea020cb41
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
a32d5435d9585794b72dd12546054f13adb845f2 25-Oct-2014 Lajos Molnar <lajos@google.com> libstagefright: set actual stride info for SW encoder input port

This fixes encoding flexible YUV content using SW encoders.
Also skip setting input color format if it is flexible YUV, as it
has already been translated to a color format supported by the codec.

Bug: 18124320
Change-Id: I423782936986f4d6cf65ea9ef89ae77a92e30140
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
2edda09a2ad1d112c52acd37d323f63f0a492d67 11-Oct-2014 Lajos Molnar <lajos@google.com> stagefright: fix surface input handling of software encoders

- added SoftVideoEncoder for common color conversion and
extension handling logic
- fix YUV420 SemiPlanar handling that should be NV12 not NV21

Bug: 17935149
Change-Id: I9b8d05678b1862dd37bf349ea83d67bdf1bb5560
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
c24dd75a6baf9448f8a54a671519557fc19d84bd 09-Jul-2014 Narayan Kamath <narayan@google.com> am 782be1ec: am 1c1b5e51: am c37eaa32: Merge "m4v_h263_enc: Use uint32_t for ULong"

* commit '782be1ecf1022d4e2da714b5aebe51ab616e9975':
m4v_h263_enc: Use uint32_t for ULong
2426d11f795a99de85999b3ff0a26cc070a99a59 16-Jun-2014 Ashok Bhat <ashok.bhat@arm.com> m4v_h263_enc: Use uint32_t for ULong

ULong is used in the encoder code as 32-bit unsigned integer type.
But it has been defined as an unsigned long, which will be 64-bit
on 64-bit platforms. This causes many problems including output
mismatch between 32-bit and 64-bit code and crash in certain cases.

This patch defines ULong as uint32_t. In addition, it uses uintptr_t
at places where an address is cast to an integer to check for alignment.

Change-Id: I2b0086824a5985b9fc4628ce6fbe81db156e37d2
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
f6d0c1fd6d9e697bb3a891fae14c7e9d4b685de6 15-Apr-2014 Colin Cross <ccross@google.com> libstagefright: fix 64-bit warnings

%lld -> %" PRId64 " for int64_t
%d -> %zu for size_t
Also fixes some casts from void* to integer types, and some comparisons
between signed and unsigned.

(cherry picked from commit b4a7a2df4c28c3f32b5d877b54831d2cc5d78f81)

Change-Id: I76ba94d0b67776fd7abdc83b43d47c61d6c32f4c
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
d411b4ca2945cd8974a3a78199fce94646950128 11-Apr-2014 Andreas Huber <andih@google.com> warnings be gone.

(cherry picked from commit 84333e0475bc911adc16417f4ca327c975cf6c36)

Modified by Mark Salyzyn <salyzyn@google.com> to keep merge conflicts
or errors downstream to a minimum.

Change-Id: Ic3b272f9cbf3155001aabd2f79728f1bc31de613
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
619fd4d6d4d815065becbdf360422ee40dfa7690 03-Apr-2014 Glenn Kasten <gkasten@google.com> Merge commit '52a23bd3' into manualmerge

Change-Id: I7a6105f467a2fa3631c62be3d306845e9cf9b365
66fe2e9ee30bcb4161bc487ec63d2ae4a05f4051 02-Apr-2014 Glenn Kasten <gkasten@google.com> 64-bit: Correction to OMX_U32 and OMX_S32

Change-Id: I9c41bb34c35595ac19a7ab8faaacde8cb4fa9a15
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
b4a7a2df4c28c3f32b5d877b54831d2cc5d78f81 20-Mar-2014 Colin Cross <ccross@android.com> libstagefright: fix 64-bit warnings

%lld -> %" PRId64 " for int64_t
%d -> %zu for size_t
Also fixes some casts from void* to integer types, and some comparisons
between signed and unsigned.

Change-Id: I9c52f76240e39399da252c66459042a6fc626a90
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
442cc6dc48f8188e097617f7f804c314a9dacd0e 12-Feb-2014 Andreas Huber <andih@google.com> Even more warnings (now errors) fixed to unbreak the sdk-x86 build(s).

Change-Id: Ib4a5ab1a9e50fe9e7747a907f8b4a8c207099fdb
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
84333e0475bc911adc16417f4ca327c975cf6c36 08-Feb-2014 Andreas Huber <andih@google.com> warnings be gone.

Change-Id: Ie3bae3f037730e316d7fca12e7a3527973f752ef
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
b483a82f02e86710fade1f581e9255f8f4afb246 22-Apr-2013 Jun Tian <jun.j.tian@intel.com> Fixed the wrong timestamps issue about camera recording

On emulator, the camera video recording crashes randomly.
It's caused by wrong timestamp when encoding the video frame.
The element of the vector is erased before accessing it.
Therefore, when reading the timestamp from the element,
the memory of the element has been changed.

Change-Id: I9750417fbb9dc4697ccae1e78e286b23925d3764

Signed-off-by: Panfeng Chang <panfengx.chang@intel.com>
Signed-off-by: Jun Tian <jun.j.tian@intel.com>
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
6e5b6ef15bb39cc0aa3d8fb7d4f75d44e5aadd92 22-Apr-2013 Jun Tian <jun.j.tian@intel.com> Fixed the wrong timestamps issue about camera recording

On emulator, the camera video recording crashes randomly.
It's caused by wrong timestamp when encoding the video frame.
The element of the vector is erased before accessing it.
Therefore, when reading the timestamp from the element,
the memory of the element has been changed.

Change-Id: I9750417fbb9dc4697ccae1e78e286b23925d3764

Signed-off-by: Panfeng Chang <panfengx.chang@intel.com>
Signed-off-by: Jun Tian <jun.j.tian@intel.com>
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
bf5bea96f236adb5eef78c2f414ef82b3602a0f7 19-Jul-2012 Eino-Ville Talvala <etalvala@google.com> Codecs: Add MetaDataMode support to software video encoders.

This support is needed to enable efficient video recording with
emulator and camera HAL 2.

- Update SoftAVCEncoder and SoftMPEG4Encoder to support MetaDataMode
extension.
- Allow CameraSource to handle opaque pixel formats, so that
MetaDataMode can be used.
- Remove hardware codec restriction for MetaDataMode

Bug: 6243944
Change-Id: I970eb3d55542a413b6d75a78f76d3a8583155601
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp
1700744ae0ce2fcf722816453ae0af2cd5646458 24-Apr-2012 James Dong <jdong@google.com> Software MPEG4/H263 video encoder is now OMX-based

o related-to-bug: 6401068

Change-Id: If8eccea060f38e42ad31eb6e91aaa832e67c5559
/frameworks/av/media/libstagefright/codecs/m4v_h263/enc/SoftMPEG4Encoder.cpp