FFmpeg
|
#include <string.h>
#include <sys/types.h>
#include "libavutil/common.h"
#include "libavutil/hwcontext_mediacodec.h"
#include "libavutil/mem.h"
#include "libavutil/log.h"
#include "libavutil/pixfmt.h"
#include "libavutil/time.h"
#include "libavutil/timestamp.h"
#include "avcodec.h"
#include "internal.h"
#include "mediacodec.h"
#include "mediacodec_surface.h"
#include "mediacodec_sw_buffer.h"
#include "mediacodec_wrapper.h"
#include "mediacodecdec_common.h"
Go to the source code of this file.
Macros | |
#define | INPUT_DEQUEUE_TIMEOUT_US 8000 |
OMX.k3.video.decoder.avc, OMX.NVIDIA. More... | |
#define | OUTPUT_DEQUEUE_TIMEOUT_US 8000 |
#define | OUTPUT_DEQUEUE_BLOCK_TIMEOUT_US 1000000 |
#define | AMEDIAFORMAT_GET_INT32(name, key, mandatory) |
Enumerations | |
enum | { COLOR_RANGE_FULL = 0x1, COLOR_RANGE_LIMITED = 0x2 } |
enum | { COLOR_STANDARD_BT709 = 0x1, COLOR_STANDARD_BT601_PAL = 0x2, COLOR_STANDARD_BT601_NTSC = 0x4, COLOR_STANDARD_BT2020 = 0x6 } |
enum | { COLOR_TRANSFER_LINEAR = 0x1, COLOR_TRANSFER_SDR_VIDEO = 0x3, COLOR_TRANSFER_ST2084 = 0x6, COLOR_TRANSFER_HLG = 0x7 } |
enum | { COLOR_FormatYUV420Planar = 0x13, COLOR_FormatYUV420SemiPlanar = 0x15, COLOR_FormatYCbYCr = 0x19, COLOR_FormatAndroidOpaque = 0x7F000789, COLOR_QCOM_FormatYUV420SemiPlanar = 0x7fa30c00, COLOR_QCOM_FormatYUV420SemiPlanar32m = 0x7fa30c04, COLOR_QCOM_FormatYUV420PackedSemiPlanar64x32Tile2m8ka = 0x7fa30c03, COLOR_TI_FormatYUV420PackedSemiPlanar = 0x7f000100, COLOR_TI_FormatYUV420PackedSemiPlanarInterlaced = 0x7f000001 } |
Variables | |
struct { | |
int color_format | |
enum AVPixelFormat pix_fmt | |
} | color_formats [] |
#define INPUT_DEQUEUE_TIMEOUT_US 8000 |
OMX.k3.video.decoder.avc, OMX.NVIDIA.
Gstreamer references: https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/sys/androidmedia/
Gstreamer copyright notice:
Copyright (C) 2012, Collabora Ltd. Author: Sebastian Dröge sebas tian .droe ge@c ollab ora. co.uk
Copyright (C) 2012, Rafaël Carré <funman@videolanorg>
Copyright (C) 2015, Sebastian Dröge sebas tian @cent ricu lar.c om
Copyright (C) 2014-2015, Collabora Ltd. Author: Matthieu Bouron matth ieu. bouro n@gc ollab ora. com
Copyright (C) 2015, Edward Hervey Author: Edward Hervey bilbo ed@g mail. com
Copyright (C) 2015, Matthew Waters matth ew@c entri cula r.com
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation version 2.1 of the License.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Definition at line 84 of file mediacodecdec_common.c.
#define OUTPUT_DEQUEUE_TIMEOUT_US 8000 |
Definition at line 85 of file mediacodecdec_common.c.
#define OUTPUT_DEQUEUE_BLOCK_TIMEOUT_US 1000000 |
Definition at line 86 of file mediacodecdec_common.c.
Definition at line 428 of file mediacodecdec_common.c.
anonymous enum |
Enumerator | |
---|---|
COLOR_RANGE_FULL | |
COLOR_RANGE_LIMITED |
Definition at line 88 of file mediacodecdec_common.c.
anonymous enum |
Enumerator | |
---|---|
COLOR_STANDARD_BT709 | |
COLOR_STANDARD_BT601_PAL | |
COLOR_STANDARD_BT601_NTSC | |
COLOR_STANDARD_BT2020 |
Definition at line 105 of file mediacodecdec_common.c.
anonymous enum |
Enumerator | |
---|---|
COLOR_TRANSFER_LINEAR | |
COLOR_TRANSFER_SDR_VIDEO | |
COLOR_TRANSFER_ST2084 | |
COLOR_TRANSFER_HLG |
Definition at line 144 of file mediacodecdec_common.c.
anonymous enum |
Definition at line 167 of file mediacodecdec_common.c.
|
static |
Definition at line 93 of file mediacodecdec_common.c.
Referenced by mediacodec_dec_parse_format().
|
static |
Definition at line 112 of file mediacodecdec_common.c.
Referenced by mediacodec_dec_parse_format().
|
static |
Definition at line 128 of file mediacodecdec_common.c.
Referenced by mediacodec_dec_parse_format().
|
static |
Definition at line 151 of file mediacodecdec_common.c.
Referenced by mediacodec_dec_parse_format().
|
static |
Definition at line 196 of file mediacodecdec_common.c.
Referenced by mediacodec_dec_parse_format().
|
static |
Definition at line 223 of file mediacodecdec_common.c.
Referenced by mediacodec_wrap_hw_buffer().
|
static |
Definition at line 228 of file mediacodecdec_common.c.
Referenced by ff_mediacodec_dec_close(), and mediacodec_buffer_release().
|
static |
Definition at line 254 of file mediacodecdec_common.c.
Referenced by mediacodec_wrap_hw_buffer().
|
static |
Definition at line 273 of file mediacodecdec_common.c.
Referenced by ff_mediacodec_dec_receive().
|
static |
Definition at line 350 of file mediacodecdec_common.c.
Referenced by ff_mediacodec_dec_receive().
|
static |
Definition at line 439 of file mediacodecdec_common.c.
Referenced by ff_mediacodec_dec_init(), and ff_mediacodec_dec_receive().
|
static |
Definition at line 532 of file mediacodecdec_common.c.
Referenced by ff_mediacodec_dec_flush().
int ff_mediacodec_dec_init | ( | AVCodecContext * | avctx, |
MediaCodecDecContext * | s, | ||
const char * | mime, | ||
FFAMediaFormat * | format | ||
) |
Definition at line 555 of file mediacodecdec_common.c.
Referenced by mediacodec_decode_init().
int ff_mediacodec_dec_send | ( | AVCodecContext * | avctx, |
MediaCodecDecContext * | s, | ||
AVPacket * | pkt, | ||
bool | wait | ||
) |
Definition at line 656 of file mediacodecdec_common.c.
Referenced by mediacodec_receive_frame().
int ff_mediacodec_dec_receive | ( | AVCodecContext * | avctx, |
MediaCodecDecContext * | s, | ||
AVFrame * | frame, | ||
bool | wait | ||
) |
Definition at line 750 of file mediacodecdec_common.c.
Referenced by mediacodec_receive_frame().
int ff_mediacodec_dec_flush | ( | AVCodecContext * | avctx, |
MediaCodecDecContext * | s | ||
) |
Definition at line 873 of file mediacodecdec_common.c.
Referenced by mediacodec_decode_flush(), and mediacodec_receive_frame().
int ff_mediacodec_dec_close | ( | AVCodecContext * | avctx, |
MediaCodecDecContext * | s | ||
) |
Definition at line 891 of file mediacodecdec_common.c.
Referenced by ff_mediacodec_dec_init(), and mediacodec_decode_close().
int ff_mediacodec_dec_is_flushing | ( | AVCodecContext * | avctx, |
MediaCodecDecContext * | s | ||
) |
Definition at line 898 of file mediacodecdec_common.c.
Referenced by mediacodec_receive_frame().
int color_format |
Definition at line 181 of file mediacodecdec_common.c.
Referenced by mcdec_map_color_format().
enum AVPixelFormat pix_fmt |
Definition at line 182 of file mediacodecdec_common.c.
Referenced by ff_mediacodec_dec_init().
const { ... } color_formats[] |
Referenced by mcdec_map_color_format().