FFmpeg
|
#include <string.h>
#include "cmdutils.h"
#include "ffmpeg.h"
#include "ffmpeg_mux.h"
#include "ffmpeg_sched.h"
#include "fopen_utf8.h"
#include "libavformat/avformat.h"
#include "libavformat/avio.h"
#include "libavcodec/avcodec.h"
#include "libavfilter/avfilter.h"
#include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/avutil.h"
#include "libavutil/bprint.h"
#include "libavutil/dict.h"
#include "libavutil/display.h"
#include "libavutil/getenv_utf8.h"
#include "libavutil/iamf.h"
Go to the source code of this file.
Data Structures | |
struct | EncStatsFile |
Functions | |
static int | check_opt_bitexact (void *ctx, const AVDictionary *opts, const char *opt_name, int flag) |
static int | choose_encoder (const OptionsContext *o, AVFormatContext *s, MuxStream *ms, const AVCodec **enc) |
static char * | get_line (AVIOContext *s, AVBPrint *bprint) |
static int | get_preset_file_2 (const char *preset_name, const char *codec_name, AVIOContext **s) |
static int | enc_stats_get_file (AVIOContext **io, const char *path) |
void | of_enc_stats_close (void) |
static int | unescape (char **pdst, size_t *dst_len, const char **pstr, char delim) |
static int | enc_stats_init (OutputStream *ost, EncStats *es, int pre, const char *path, const char *fmt_spec) |
static const char * | output_stream_item_name (void *obj) |
static MuxStream * | mux_stream_alloc (Muxer *mux, enum AVMediaType type) |
static int | ost_get_filters (const OptionsContext *o, AVFormatContext *oc, OutputStream *ost, char **dst) |
static int | parse_matrix_coeffs (void *logctx, uint16_t *dest, const char *str) |
static int | fmt_in_list (const int *formats, int format) |
static enum AVPixelFormat | choose_pixel_fmt (const AVCodecContext *avctx, enum AVPixelFormat target) |
static enum AVPixelFormat | pix_fmt_parse (OutputStream *ost, const char *name) |
static int | new_stream_video (Muxer *mux, const OptionsContext *o, OutputStream *ost, int *keep_pix_fmt, enum VideoSyncMethod *vsync_method) |
static int | new_stream_audio (Muxer *mux, const OptionsContext *o, OutputStream *ost) |
static int | new_stream_subtitle (Muxer *mux, const OptionsContext *o, OutputStream *ost) |
static int | ost_bind_filter (const Muxer *mux, MuxStream *ms, OutputFilter *ofilter, const OptionsContext *o, AVRational enc_tb, enum VideoSyncMethod vsync_method, int keep_pix_fmt, int autoscale, int threads_manual, const ViewSpecifier *vs, SchedulerNode *src) |
static int | streamcopy_init (const OptionsContext *o, const Muxer *mux, OutputStream *ost, AVDictionary **encoder_opts) |
static int | set_encoder_id (OutputStream *ost, const AVCodec *codec) |
static int | ost_add (Muxer *mux, const OptionsContext *o, enum AVMediaType type, InputStream *ist, OutputFilter *ofilter, const ViewSpecifier *vs, OutputStream **post) |
static int | map_auto_video (Muxer *mux, const OptionsContext *o) |
static int | map_auto_audio (Muxer *mux, const OptionsContext *o) |
static int | map_auto_subtitle (Muxer *mux, const OptionsContext *o) |
static int | map_auto_data (Muxer *mux, const OptionsContext *o) |
static int | map_manual (Muxer *mux, const OptionsContext *o, const StreamMap *map) |
static int | of_add_attachments (Muxer *mux, const OptionsContext *o) |
static int | create_streams (Muxer *mux, const OptionsContext *o) |
static int | setup_sync_queues (Muxer *mux, AVFormatContext *oc, int64_t buf_size_us, int shortest) |
static int | of_parse_iamf_audio_element_layers (Muxer *mux, AVStreamGroup *stg, char *ptr) |
static int | of_parse_iamf_submixes (Muxer *mux, AVStreamGroup *stg, char *ptr) |
static int | of_serialize_options (Muxer *mux, void *obj, AVBPrint *bp) |
static int64_t | get_stream_group_index_from_id (Muxer *mux, int64_t id) |
static int | of_map_group (Muxer *mux, AVDictionary **dict, AVBPrint *bp, const char *map) |
static int | of_parse_group_token (Muxer *mux, const char *token, char *ptr) |
static int | of_add_groups (Muxer *mux, const OptionsContext *o) |
static int | of_add_programs (Muxer *mux, const OptionsContext *o) |
static int | parse_meta_type (void *logctx, const char *arg, char *type, int *index, const char **stream_spec) |
Parse a metadata specifier passed as 'arg' parameter. More... | |
static int | of_add_metadata (OutputFile *of, AVFormatContext *oc, const OptionsContext *o) |
static int | copy_chapters (InputFile *ifile, OutputFile *ofile, AVFormatContext *os, int copy_metadata) |
static int | copy_metadata (Muxer *mux, AVFormatContext *ic, const char *outspec, const char *inspec, int *metadata_global_manual, int *metadata_streams_manual, int *metadata_chapters_manual) |
static int | copy_meta (Muxer *mux, const OptionsContext *o) |
static int | set_dispositions (Muxer *mux, const OptionsContext *o) |
static int | compare_int64 (const void *a, const void *b) |
static int | parse_forced_key_frames (void *log, KeyframeForceCtx *kf, const Muxer *mux, const char *spec) |
static int | process_forced_keyframes (Muxer *mux, const OptionsContext *o) |
static const char * | output_file_item_name (void *obj) |
static Muxer * | mux_alloc (void) |
int | of_open (const OptionsContext *o, const char *filename, Scheduler *sch) |
Variables | |
static EncStatsFile * | enc_stats_files |
static int | nb_enc_stats_files |
static const AVClass | output_stream_class |
static const char *const | forced_keyframes_const_names [] |
static const AVClass | output_file_class |
|
static |
Definition at line 53 of file ffmpeg_mux_init.c.
Referenced by of_open().
|
static |
Definition at line 69 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 113 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 126 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 164 of file ffmpeg_mux_init.c.
Referenced by enc_stats_init().
void of_enc_stats_close | ( | void | ) |
Definition at line 197 of file ffmpeg_mux_init.c.
Referenced by ffmpeg_cleanup().
|
static |
Definition at line 207 of file ffmpeg_mux_init.c.
Referenced by enc_stats_init().
|
static |
Definition at line 246 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 378 of file ffmpeg_mux_init.c.
|
static |
Definition at line 392 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 416 of file ffmpeg_mux_init.c.
Referenced by ost_bind_filter().
|
static |
Definition at line 466 of file ffmpeg_mux_init.c.
Referenced by new_stream_video().
|
static |
Definition at line 485 of file ffmpeg_mux_init.c.
Referenced by pix_fmt_parse().
|
static |
Definition at line 494 of file ffmpeg_mux_init.c.
Referenced by pix_fmt_parse().
|
static |
Definition at line 525 of file ffmpeg_mux_init.c.
Referenced by new_stream_video().
|
static |
Definition at line 574 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 817 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 856 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 898 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 1014 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 1158 of file ffmpeg_mux_init.c.
Referenced by ost_add().
|
static |
Definition at line 1180 of file ffmpeg_mux_init.c.
Referenced by create_streams(), map_auto_audio(), map_auto_data(), map_auto_subtitle(), map_auto_video(), map_manual(), and of_add_attachments().
|
static |
Definition at line 1592 of file ffmpeg_mux_init.c.
Referenced by create_streams().
|
static |
Definition at line 1645 of file ffmpeg_mux_init.c.
Referenced by create_streams().
|
static |
Definition at line 1689 of file ffmpeg_mux_init.c.
Referenced by create_streams().
|
static |
Definition at line 1728 of file ffmpeg_mux_init.c.
Referenced by create_streams().
|
static |
Definition at line 1751 of file ffmpeg_mux_init.c.
Referenced by create_streams().
|
static |
Definition at line 1836 of file ffmpeg_mux_init.c.
Referenced by create_streams().
|
static |
Definition at line 1919 of file ffmpeg_mux_init.c.
Referenced by of_open().
|
static |
Definition at line 2043 of file ffmpeg_mux_init.c.
Referenced by of_open().
|
static |
Definition at line 2144 of file ffmpeg_mux_init.c.
Referenced by of_parse_group_token().
|
static |
Definition at line 2220 of file ffmpeg_mux_init.c.
Referenced by of_parse_group_token().
|
static |
Definition at line 2349 of file ffmpeg_mux_init.c.
Referenced by of_map_group().
Definition at line 2390 of file ffmpeg_mux_init.c.
Referenced by of_map_group().
|
static |
Definition at line 2401 of file ffmpeg_mux_init.c.
Referenced by of_parse_group_token().
|
static |
Definition at line 2497 of file ffmpeg_mux_init.c.
Referenced by of_add_groups().
|
static |
Definition at line 2639 of file ffmpeg_mux_init.c.
Referenced by of_open().
|
static |
Definition at line 2666 of file ffmpeg_mux_init.c.
Referenced by of_open().
|
static |
Parse a metadata specifier passed as 'arg' parameter.
arg | metadata string to parse |
type | metadata type is written here – g(lobal)/s(tream)/c(hapter)/p(rogram) |
index | for type c/p, chapter/program index is written here |
stream_spec | for type s, the stream specifier is written here |
Definition at line 2735 of file ffmpeg_mux_init.c.
Referenced by copy_metadata(), and of_add_metadata().
|
static |
Definition at line 2765 of file ffmpeg_mux_init.c.
Referenced by of_open().
|
static |
Definition at line 2823 of file ffmpeg_mux_init.c.
Referenced by copy_meta().
|
static |
Definition at line 2865 of file ffmpeg_mux_init.c.
Referenced by copy_chapters(), and copy_meta().
|
static |
Definition at line 2952 of file ffmpeg_mux_init.c.
Referenced by of_open().
|
static |
Definition at line 3024 of file ffmpeg_mux_init.c.
Referenced by of_open().
|
static |
Definition at line 3104 of file ffmpeg_mux_init.c.
Referenced by parse_forced_key_frames().
|
static |
Definition at line 3109 of file ffmpeg_mux_init.c.
Referenced by process_forced_keyframes().
|
static |
Definition at line 3187 of file ffmpeg_mux_init.c.
Referenced by of_open().
|
static |
Definition at line 3233 of file ffmpeg_mux_init.c.
|
static |
Definition at line 3247 of file ffmpeg_mux_init.c.
Referenced by of_open().
int of_open | ( | const OptionsContext * | o, |
const char * | filename, | ||
Scheduler * | sch | ||
) |
Definition at line 3262 of file ffmpeg_mux_init.c.
|
static |
Definition at line 161 of file ffmpeg_mux_init.c.
Referenced by enc_stats_get_file(), and of_enc_stats_close().
|
static |
Definition at line 162 of file ffmpeg_mux_init.c.
Referenced by enc_stats_get_file(), and of_enc_stats_close().
|
static |
Definition at line 385 of file ffmpeg_mux_init.c.
Referenced by mux_stream_alloc().
|
static |
Definition at line 3095 of file ffmpeg_mux_init.c.
Referenced by process_forced_keyframes().
|
static |
Definition at line 3240 of file ffmpeg_mux_init.c.
Referenced by mux_alloc().