libgpac
Documentation of the core library of GPAC
reframe_rawpcm.c File Reference
#include <gpac/avparse.h>
#include <gpac/constants.h>
#include <gpac/filters.h>
+ Include dependency graph for reframe_rawpcm.c:

Data Structures

struct  GF_PCMReframeCtx
 

Macros

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

Functions

GF_Err pcmreframe_configure_pid (GF_Filter *filter, GF_FilterPid *pid, Bool is_remove)
 
static Bool pcmreframe_process_event (GF_Filter *filter, const GF_FilterEvent *evt)
 
void pcmreframe_flush_packet (GF_PCMReframeCtx *ctx)
 
GF_Err pcmreframe_process (GF_Filter *filter)
 
static const char * pcmreframe_probe_data (const u8 *data, u32 size, GF_FilterProbeScore *score)
 
static void pcmreframe_finalize (GF_Filter *filter)
 
const GF_FilterRegister * rfpcm_register (GF_FilterSession *session)
 

Variables

static GF_FilterCapability PCMReframeCaps []
 
static GF_FilterArgs PCMReframeArgs []
 
GF_FilterRegister PCMReframeRegister
 

Data Structure Documentation

◆ GF_PCMReframeCtx

struct GF_PCMReframeCtx
Data Fields
u32 framelen
u32 safmt
u32 sr
u32 ch
GF_FilterPid * ipid
GF_FilterPid * opid
Bool file_loaded
Bool is_playing
Bool initial_play_done
u64 cts
u32 frame_size
u32 nb_bytes_in_frame
u32 Bps
u64 filepos
u64 total_frames
u64 layout
GF_FilterPacket * out_pck
u8 * out_data
Bool reverse_play
Bool done
u32 probe_wave
u32 wav_hdr_size
Bool init_skip
u8 * probe_data
u32 probe_data_size

Macro Definition Documentation

◆ OFFS

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

Function Documentation

◆ pcmreframe_configure_pid()

GF_Err pcmreframe_configure_pid ( GF_Filter *  filter,
GF_FilterPid *  pid,
Bool  is_remove 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ pcmreframe_process_event()

static Bool pcmreframe_process_event ( GF_Filter *  filter,
const GF_FilterEvent *  evt 
)
static
+ Here is the call graph for this function:

◆ pcmreframe_flush_packet()

void pcmreframe_flush_packet ( GF_PCMReframeCtx ctx)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ pcmreframe_process()

GF_Err pcmreframe_process ( GF_Filter *  filter)
+ Here is the call graph for this function:

◆ pcmreframe_probe_data()

static const char* pcmreframe_probe_data ( const u8 data,
u32  size,
GF_FilterProbeScore score 
)
static
+ Here is the call graph for this function:

◆ pcmreframe_finalize()

static void pcmreframe_finalize ( GF_Filter *  filter)
static
+ Here is the call graph for this function:

◆ rfpcm_register()

const GF_FilterRegister* rfpcm_register ( GF_FilterSession *  session)
+ Here is the call graph for this function:

Variable Documentation

◆ PCMReframeCaps

GF_FilterCapability PCMReframeCaps[]
static
Initial value:
=
{
{0},
}
@ GF_CODECID_RAW
Definition: constants.h:600
@ GF_STREAM_AUDIO
Definition: constants.h:66
@ GF_STREAM_FILE
Definition: constants.h:104
#define CAP_UINT(_f, _a, _b)
Definition: filters.h:2172
#define CAP_STRING(_f, _a, _b)
Definition: filters.h:2194
#define CAP_BOOL(_f, _a, _b)
Definition: filters.h:2180
#define GF_CAPS_INPUT
Definition: filters.h:2220
#define GF_CAPS_OUTPUT_STATIC
Definition: filters.h:2238
#define GF_CAPS_OUTPUT_STATIC_EXCLUDED
Definition: filters.h:2240
@ GF_PROP_PID_CODECID
Definition: filters.h:1116
@ GF_PROP_PID_STREAM_TYPE
Definition: filters.h:1112
@ GF_PROP_PID_UNFRAMED
Definition: filters.h:1118
@ GF_PROP_PID_FILE_EXT
Definition: filters.h:1190
@ GF_PROP_PID_MIME
Definition: filters.h:1189
@ GF_TRUE
Definition: setup.h:474

◆ PCMReframeArgs

GF_FilterArgs PCMReframeArgs[]
static
Initial value:
=
{
{ OFFS(sr), "sample rate", GF_PROP_UINT, "44100", NULL, 0},
{ OFFS(safmt), "audio format", GF_PROP_PCMFMT, "none", NULL, 0},
{ OFFS(ch), "number of channels", GF_PROP_UINT, "2", NULL, 0},
{ OFFS(framelen), "number of samples to put in one audio frame. For planar formats, indicate plane size in samples", GF_PROP_UINT, "1024", NULL, GF_FS_ARG_HINT_ADVANCED},
{0}
}
@ GF_FS_ARG_HINT_ADVANCED
Definition: filters.h:2102
@ GF_PROP_UINT
Definition: filters.h:852
@ GF_PROP_PCMFMT
Definition: filters.h:918
#define OFFS(_n)
Definition: reframe_rawpcm.c:513

◆ PCMReframeRegister

GF_FilterRegister PCMReframeRegister
Initial value:
= {
.name = "rfpcm",
.private_size = sizeof(GF_PCMReframeCtx),
.finalize = pcmreframe_finalize,
.configure_pid = pcmreframe_configure_pid,
.process = pcmreframe_process,
.process_event = pcmreframe_process_event,
.probe_data = pcmreframe_probe_data,
.hint_class_type = GF_FS_CLASS_FRAMING
}
#define SETCAPS(__struct)
Definition: filters.h:2364
@ GF_FS_CLASS_FRAMING
Definition: filters.h:2459
attribute Array args
Definition: jsf.idl:24
static void pcmreframe_finalize(GF_Filter *filter)
Definition: reframe_rawpcm.c:492
static GF_FilterArgs PCMReframeArgs[]
Definition: reframe_rawpcm.c:514
static const char * pcmreframe_probe_data(const u8 *data, u32 size, GF_FilterProbeScore *score)
Definition: reframe_rawpcm.c:471
static Bool pcmreframe_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
Definition: reframe_rawpcm.c:142
static GF_FilterCapability PCMReframeCaps[]
Definition: reframe_rawpcm.c:499
GF_Err pcmreframe_process(GF_Filter *filter)
Definition: reframe_rawpcm.c:225
GF_Err pcmreframe_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool is_remove)
Definition: reframe_rawpcm.c:59
Definition: reframe_rawpcm.c:33