libgpac
Documentation of the core library of GPAC
Loading...
Searching...
No Matches
reframe_amr.c File Reference
#include <gpac/filters.h>
#include <gpac/constants.h>

Data Structures

struct  AMRIdx
 
struct  GF_AMRDmxCtx
 

Macros

#define OFFS(_n)   #_n, offsetof(GF_AMRDmxCtx, _n)
 

Functions

GF_Err amrdmx_configure_pid (GF_Filter *filter, GF_FilterPid *pid, Bool is_remove)
 
static void amrdmx_check_dur (GF_Filter *filter, GF_AMRDmxCtx *ctx)
 
static void amrdmx_check_pid (GF_Filter *filter, GF_AMRDmxCtx *ctx, u16 amr_mode_set)
 
static Bool amrdmx_process_event (GF_Filter *filter, const GF_FilterEvent *evt)
 
static GFINLINE void amrdmx_update_cts (GF_AMRDmxCtx *ctx)
 
GF_Err amrdmx_process (GF_Filter *filter)
 
static GF_Err amrdmx_initialize (GF_Filter *filter)
 
static void amrdmx_finalize (GF_Filter *filter)
 
static const char * amrdmx_probe_data (const u8 *data, u32 size, GF_FilterProbeScore *score)
 
const GF_FilterRegister * amrdmx_register (GF_FilterSession *session)
 

Variables

static const GF_FilterCapability AMRDmxCaps []
 
static const GF_FilterArgs AMRDmxArgs []
 
GF_FilterRegister AMRDmxRegister
 

Data Structure Documentation

◆ AMRIdx

struct AMRIdx
Data Fields
u64 pos
Double duration

◆ GF_AMRDmxCtx

struct GF_AMRDmxCtx
Data Fields
Double index
GF_FilterPid * ipid
GF_FilterPid * opid
u32 start_offset
u32 codecid
u32 sample_rate
u32 block_size
u32 bitrate
u64 file_pos
u64 cts
u16 amr_mode_set
GF_Fraction64 duration
Double start_range
Bool in_seek
u32 timescale
Bool is_playing
Bool is_file
Bool initial_play_done
Bool file_loaded
Bool skip_magic
u32 hdr
u32 resume_from
u32 remaining
AMRIdx * indexes
u32 index_alloc_size
u32 index_size

Macro Definition Documentation

◆ OFFS

#define OFFS (   _n)    #_n, offsetof(GF_AMRDmxCtx, _n)

Function Documentation

◆ amrdmx_configure_pid()

GF_Err amrdmx_configure_pid ( GF_Filter *  filter,
GF_FilterPid *  pid,
Bool  is_remove 
)

◆ amrdmx_check_dur()

static void amrdmx_check_dur ( GF_Filter *  filter,
GF_AMRDmxCtx ctx 
)
static

◆ amrdmx_check_pid()

static void amrdmx_check_pid ( GF_Filter *  filter,
GF_AMRDmxCtx ctx,
u16  amr_mode_set 
)
static

◆ amrdmx_process_event()

static Bool amrdmx_process_event ( GF_Filter *  filter,
const GF_FilterEvent *  evt 
)
static

◆ amrdmx_update_cts()

static GFINLINE void amrdmx_update_cts ( GF_AMRDmxCtx ctx)
static

◆ amrdmx_process()

GF_Err amrdmx_process ( GF_Filter *  filter)

◆ amrdmx_initialize()

static GF_Err amrdmx_initialize ( GF_Filter *  filter)
static

◆ amrdmx_finalize()

static void amrdmx_finalize ( GF_Filter *  filter)
static

◆ amrdmx_probe_data()

static const char * amrdmx_probe_data ( const u8 data,
u32  size,
GF_FilterProbeScore score 
)
static

◆ amrdmx_register()

const GF_FilterRegister * amrdmx_register ( GF_FilterSession *  session)

Variable Documentation

◆ AMRDmxCaps

const GF_FilterCapability AMRDmxCaps[]
static
Initial value:
=
{
CAP_STRING(GF_CAPS_INPUT, GF_PROP_PID_MIME, "audio/amr|audio/evrc|audio/smv"),
}
@ GF_CODECID_EVRC
Definition constants.h:451
@ GF_CODECID_SMV
Definition constants.h:453
@ GF_CODECID_AMR
Definition constants.h:457
@ GF_CODECID_AMR_WB
Definition constants.h:459
@ GF_STREAM_AUDIO
Definition constants.h:66
@ GF_STREAM_FILE
Definition constants.h:104
#define GF_CAPS_OUTPUT
Definition filters.h:2013
#define CAP_UINT(_f, _a, _b)
Definition filters.h:1955
#define CAP_STRING(_f, _a, _b)
Definition filters.h:1977
#define GF_CAPS_OUTPUT_EXCLUDED
Definition filters.h:2017
#define CAP_BOOL(_f, _a, _b)
Definition filters.h:1963
#define GF_CAPS_INPUT
Definition filters.h:2001
@ GF_PROP_PID_CODECID
Definition filters.h:1020
@ GF_PROP_PID_STREAM_TYPE
Definition filters.h:1016
@ GF_PROP_PID_UNFRAMED
Definition filters.h:1022
@ GF_PROP_PID_FILE_EXT
Definition filters.h:1092
@ GF_PROP_PID_MIME
Definition filters.h:1091
@ GF_TRUE
Definition setup.h:435

◆ AMRDmxArgs

const GF_FilterArgs AMRDmxArgs[]
static
Initial value:
=
{
{ OFFS(index), "indexing window length", GF_PROP_DOUBLE, "1.0", NULL, 0},
{0}
}
@ GF_PROP_DOUBLE
Definition filters.h:775
#define OFFS(_n)
Definition reframe_amr.c:596

◆ AMRDmxRegister

GF_FilterRegister AMRDmxRegister
Initial value:
= {
.name = "rfamr",
.private_size = sizeof(GF_AMRDmxCtx),
.initialize = amrdmx_initialize,
.finalize = amrdmx_finalize,
.configure_pid = amrdmx_configure_pid,
.process = amrdmx_process,
.probe_data = amrdmx_probe_data,
.process_event = amrdmx_process_event
}
#define SETCAPS(__struct)
Definition filters.h:2144
attribute Array args
Definition jsf.idl:24
static const char * amrdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore *score)
Definition reframe_amr.c:562
static void amrdmx_finalize(GF_Filter *filter)
Definition reframe_amr.c:556
GF_Err amrdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool is_remove)
Definition reframe_amr.c:73
GF_Err amrdmx_process(GF_Filter *filter)
Definition reframe_amr.c:349
static GF_Err amrdmx_initialize(GF_Filter *filter)
Definition reframe_amr.c:549
static Bool amrdmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
Definition reframe_amr.c:273
static const GF_FilterArgs AMRDmxArgs[]
Definition reframe_amr.c:597
static const GF_FilterCapability AMRDmxCaps[]
Definition reframe_amr.c:583
Definition reframe_amr.c:36