|
FFmpeg
|
#include "libavutil/avassert.h"#include "avfilter.h"#include "bufferqueue.h"#include "framesync.h"#include "internal.h"Go to the source code of this file.
Macros | |
| #define | OFFSET(member) offsetof(FFFrameSync, member) |
Enumerations | |
| enum | { STATE_BOF, STATE_RUN, STATE_EOF } |
Functions | |
| static const char * | framesync_name (void *ptr) |
| int | ff_framesync_init (FFFrameSync *fs, void *parent, unsigned nb_in) |
| Initialize a frame sync structure. More... | |
| static void | framesync_sync_level_update (FFFrameSync *fs) |
| int | ff_framesync_configure (FFFrameSync *fs) |
| Configure a frame sync structure. More... | |
| static void | framesync_advance (FFFrameSync *fs) |
| static int64_t | framesync_pts_extrapolate (FFFrameSync *fs, unsigned in, int64_t pts) |
| static void | framesync_inject_frame (FFFrameSync *fs, unsigned in, AVFrame *frame) |
| int | ff_framesync_add_frame (FFFrameSync *fs, unsigned in, AVFrame *frame) |
| Add a frame to an input. More... | |
| void | ff_framesync_next (FFFrameSync *fs) |
| Prepare the next frame event. More... | |
| void | ff_framesync_drop (FFFrameSync *fs) |
| Drop the current frame event. More... | |
| int | ff_framesync_get_frame (FFFrameSync *fs, unsigned in, AVFrame **rframe, unsigned get) |
| Get the current frame in an input. More... | |
| void | ff_framesync_uninit (FFFrameSync *fs) |
| Free all memory currently allocated. More... | |
| int | ff_framesync_process_frame (FFFrameSync *fs, unsigned all) |
| Process one or several frame using the on_event callback. More... | |
| int | ff_framesync_filter_frame (FFFrameSync *fs, AVFilterLink *inlink, AVFrame *in) |
| Accept a frame on a filter input. More... | |
| int | ff_framesync_request_frame (FFFrameSync *fs, AVFilterLink *outlink) |
| Request a frame on the filter output. More... | |
Variables | |
| static const AVClass | framesync_class |
| #define OFFSET | ( | member | ) | offsetof(FFFrameSync, member) |
Definition at line 27 of file framesync.c.
| anonymous enum |
| Enumerator | |
|---|---|
| STATE_BOF | |
| STATE_RUN | |
| STATE_EOF | |
Definition at line 43 of file framesync.c.
|
static |
Definition at line 29 of file framesync.c.
| int ff_framesync_init | ( | FFFrameSync * | fs, |
| void * | parent, | ||
| unsigned | nb_in | ||
| ) |
Initialize a frame sync structure.
The entire structure is expected to be already set to 0.
| fs | frame sync structure to initialize |
| parent | parent object, used for logging |
| nb_in | number of inputs |
Definition at line 49 of file framesync.c.
Referenced by config_output(), and ff_dualinput_init().
|
static |
Definition at line 61 of file framesync.c.
Referenced by ff_framesync_configure(), and framesync_inject_frame().
| int ff_framesync_configure | ( | FFFrameSync * | fs | ) |
Configure a frame sync structure.
Must be called after all options are set but before all use.
Definition at line 77 of file framesync.c.
Referenced by config_output(), and ff_dualinput_init().
|
static |
Definition at line 118 of file framesync.c.
Referenced by ff_framesync_next().
|
static |
Definition at line 176 of file framesync.c.
Referenced by framesync_inject_frame().
|
static |
Definition at line 183 of file framesync.c.
Referenced by ff_framesync_add_frame(), and ff_framesync_next().
| int ff_framesync_add_frame | ( | FFFrameSync * | fs, |
| unsigned | in, | ||
| AVFrame * | frame | ||
| ) |
Add a frame to an input.
Typically called from the filter_frame() method.
| fs | frame sync structure |
| in | index of the input |
| frame | input frame, or NULL for EOF |
Definition at line 202 of file framesync.c.
Referenced by ff_framesync_filter_frame(), and ff_framesync_request_frame().
| void ff_framesync_next | ( | FFFrameSync * | fs | ) |
Prepare the next frame event.
The status of the operation can be found in fs->frame_ready and fs->eof.
Definition at line 212 of file framesync.c.
Referenced by ff_framesync_process_frame().
| void ff_framesync_drop | ( | FFFrameSync * | fs | ) |
Drop the current frame event.
Definition at line 224 of file framesync.c.
Referenced by ff_framesync_process_frame().
| int ff_framesync_get_frame | ( | FFFrameSync * | fs, |
| unsigned | in, | ||
| AVFrame ** | rframe, | ||
| unsigned | get | ||
| ) |
Get the current frame in an input.
| fs | frame sync structure |
| in | index of the input |
| rframe | used to return the current frame (or NULL) |
| get | if not zero, the calling code needs to get ownership of the returned frame; the current frame will either be duplicated or removed from the framesync structure |
Definition at line 229 of file framesync.c.
Referenced by process_frame().
| void ff_framesync_uninit | ( | FFFrameSync * | fs | ) |
Free all memory currently allocated.
Definition at line 266 of file framesync.c.
Referenced by ff_dualinput_uninit(), and uninit().
| int ff_framesync_process_frame | ( | FFFrameSync * | fs, |
| unsigned | all | ||
| ) |
Process one or several frame using the on_event callback.
Definition at line 279 of file framesync.c.
Referenced by ff_framesync_filter_frame(), and ff_framesync_request_frame().
| int ff_framesync_filter_frame | ( | FFFrameSync * | fs, |
| AVFilterLink * | inlink, | ||
| AVFrame * | in | ||
| ) |
Accept a frame on a filter input.
This function can be the complete implementation of all filter_frame methods of a filter using framesync.
Definition at line 300 of file framesync.c.
Referenced by ff_dualinput_filter_frame(), and filter_frame().
| int ff_framesync_request_frame | ( | FFFrameSync * | fs, |
| AVFilterLink * | outlink | ||
| ) |
Request a frame on the filter output.
This function can be the complete implementation of all filter_frame methods of a filter using framesync if it has only one output.
Definition at line 314 of file framesync.c.
Referenced by ff_dualinput_request_frame(), and request_frame().
|
static |
Definition at line 34 of file framesync.c.
Referenced by ff_framesync_init().
1.8.6