#include "config_components.h"
#include <inttypes.h>
#include <stdio.h>
#include <stdlib.h>
#include <libcrystalhd/bc_dts_types.h>
#include <libcrystalhd/bc_dts_defs.h>
#include <libcrystalhd/libcrystalhd_if.h>
#include "avcodec.h"
#include "codec_internal.h"
#include "decode.h"
#include "internal.h"
#include "libavutil/imgutils.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/opt.h"
Go to the source code of this file.
|
static BC_MEDIA_SUBTYPE | id2subtype (CHDContext *priv, enum AVCodecID id) |
|
static void | print_frame_info (CHDContext *priv, BC_DTS_PROC_OUT *output) |
|
static uint64_t | opaque_list_push (CHDContext *priv, uint64_t reordered_opaque) |
|
static OpaqueList * | opaque_list_pop (CHDContext *priv, uint64_t fake_timestamp) |
|
static void | flush (AVCodecContext *avctx) |
|
static av_cold int | uninit (AVCodecContext *avctx) |
|
static av_cold int | init (AVCodecContext *avctx) |
|
static CopyRet | copy_frame (AVCodecContext *avctx, BC_DTS_PROC_OUT *output, AVFrame *frame, int *got_frame) |
|
static CopyRet | receive_frame (AVCodecContext *avctx, AVFrame *frame, int *got_frame) |
|
static int | crystalhd_decode_packet (AVCodecContext *avctx, const AVPacket *avpkt) |
|
static int | crystalhd_receive_frame (AVCodecContext *avctx, AVFrame *frame) |
|
◆ _XOPEN_SOURCE
#define _XOPEN_SOURCE 600 |
◆ OUTPUT_PROC_TIMEOUT
#define OUTPUT_PROC_TIMEOUT 50 |
Timeout parameter passed to DtsProcOutput() in us.
Definition at line 72 of file crystalhd.c.
◆ TIMESTAMP_UNIT
#define TIMESTAMP_UNIT 100000 |
Step between fake timestamps passed to hardware in units of 100ns.
Definition at line 74 of file crystalhd.c.
◆ DEFINE_CRYSTALHD_DECODER
#define DEFINE_CRYSTALHD_DECODER |
( |
|
x, |
|
|
|
X, |
|
|
|
bsf_name |
|
) |
| |
Value: static const AVClass x##_crystalhd_class = { \
}; \
const
FFCodec ff_##x##_crystalhd_decoder = { \
.
p.
name = #x
"_crystalhd", \
CODEC_LONG_NAME(
"CrystalHD " #
X " decoder"), \
.p.id = AV_CODEC_ID_##
X, \
.p.priv_class = &x##_crystalhd_class, \
.bsfs = bsf_name, \
FF_CODEC_CAP_SETS_FRAME_PROPS, \
.p.wrapper_name = "crystalhd", \
};
Definition at line 774 of file crystalhd.c.
◆ CopyRet
Enumerator |
---|
RET_ERROR | |
RET_OK | |
RET_COPY_AGAIN | |
Definition at line 81 of file crystalhd.c.
◆ id2subtype()
◆ print_frame_info()
static void print_frame_info |
( |
CHDContext * |
priv, |
|
|
BC_DTS_PROC_OUT * |
output |
|
) |
| |
|
inlinestatic |
◆ opaque_list_push()
static uint64_t opaque_list_push |
( |
CHDContext * |
priv, |
|
|
uint64_t |
reordered_opaque |
|
) |
| |
|
static |
◆ opaque_list_pop()
◆ flush()
◆ uninit()
◆ init()
◆ copy_frame()
◆ receive_frame()
◆ crystalhd_decode_packet()
◆ crystalhd_receive_frame()
◆ options
Initial value:= {
{ "crystalhd_downscale_width",
"Turn on downscaling to the specified width",
0x42,
}
Definition at line 112 of file crystalhd.c.