#include "config_components.h"
#include <stdint.h>
#include "libavutil/attributes.h"
#include "libavutil/fifo.h"
#include "libavutil/log.h"
#include "libavutil/mathematics.h"
#include "libavutil/mem.h"
#include "libavutil/opt.h"
#include "libavcodec/put_bits.h"
#include "avformat.h"
#include "avio_internal.h"
#include "internal.h"
#include "mpeg.h"
#include "mux.h"
Go to the source code of this file.
|
static int | put_pack_header (AVFormatContext *ctx, uint8_t *buf, int64_t timestamp) |
|
static int | put_system_header (AVFormatContext *ctx, uint8_t *buf, int only_for_stream_id) |
|
static int | get_system_header_size (AVFormatContext *ctx) |
|
static av_cold int | mpeg_mux_init (AVFormatContext *ctx) |
|
static void | put_timestamp (AVIOContext *pb, int id, int64_t timestamp) |
|
static int | get_vcd_padding_size (AVFormatContext *ctx, int64_t pts) |
|
static void | put_padding_packet (AVFormatContext *ctx, AVIOContext *pb, int packet_bytes) |
|
static int | get_nb_frames (AVFormatContext *ctx, StreamInfo *stream, int len) |
|
static int | fifo_avio_wrapper (void *opaque, void *buf, size_t *nb_elems) |
|
static int | flush_packet (AVFormatContext *ctx, int stream_index, int64_t pts, int64_t dts, int64_t scr, int trailer_size) |
|
static void | put_vcd_padding_sector (AVFormatContext *ctx) |
|
static int | remove_decoded_packets (AVFormatContext *ctx, int64_t scr) |
|
static int | output_packet (AVFormatContext *ctx, int flush) |
|
static int | mpeg_mux_write_packet (AVFormatContext *ctx, AVPacket *pkt) |
|
static int | mpeg_mux_end (AVFormatContext *ctx) |
|
static void | mpeg_mux_deinit (AVFormatContext *ctx) |
|
◆ MAX_PAYLOAD_SIZE
#define MAX_PAYLOAD_SIZE 4096 |
◆ VCD_PADDING_BITRATE_DEN
#define VCD_PADDING_BITRATE_DEN (2279 * 2294) |
◆ OFFSET
◆ put_pack_header()
◆ put_system_header()
static int put_system_header |
( |
AVFormatContext * |
ctx, |
|
|
uint8_t * |
buf, |
|
|
int |
only_for_stream_id |
|
) |
| |
|
static |
◆ get_system_header_size()
◆ mpeg_mux_init()
◆ put_timestamp()
◆ get_vcd_padding_size()
◆ put_padding_packet()
◆ get_nb_frames()
◆ fifo_avio_wrapper()
static int fifo_avio_wrapper |
( |
void * |
opaque, |
|
|
void * |
buf, |
|
|
size_t * |
nb_elems |
|
) |
| |
|
static |
◆ flush_packet()
◆ put_vcd_padding_sector()
◆ remove_decoded_packets()
◆ output_packet()
◆ mpeg_mux_write_packet()
◆ mpeg_mux_end()
◆ mpeg_mux_deinit()
◆ ff_mpeg1vcd_muxer
◆ ff_mpeg2dvd_muxer
◆ ff_mpeg2svcd_muxer
◆ ff_mpeg2vob_muxer
◆ options
Initial value:= {
{
"muxrate",
"mux rate as bits/s",
OFFSET(user_mux_rate),
AV_OPT_TYPE_INT, { .i64 = 0 }, 0, ((1<<22) - 1) * (8 * 50),
E },
{
"preload",
"initial demux-decode delay in microseconds",
OFFSET(preload),
AV_OPT_TYPE_INT, { .i64 = 500000 }, 0, INT_MAX,
E },
}
Definition at line 1294 of file mpegenc.c.
◆ mpeg_class
Initial value:= {
.class_name = "mpeg/(s)vcd/vob/dvd muxer",
}
Definition at line 1300 of file mpegenc.c.