FFmpeg
|
#include <stdint.h>
#include "config_components.h"
#include "av1.h"
#include "avc.h"
#include "hevc.h"
#include "avformat.h"
#include "avio_internal.h"
#include "avlanguage.h"
#include "dovi_isom.h"
#include "flacenc.h"
#include "internal.h"
#include "isom.h"
#include "matroska.h"
#include "mux.h"
#include "riff.h"
#include "version.h"
#include "vorbiscomment.h"
#include "wv.h"
#include "libavutil/avstring.h"
#include "libavutil/channel_layout.h"
#include "libavutil/crc.h"
#include "libavutil/dict.h"
#include "libavutil/intfloat.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/lfg.h"
#include "libavutil/mastering_display_metadata.h"
#include "libavutil/mathematics.h"
#include "libavutil/opt.h"
#include "libavutil/parseutils.h"
#include "libavutil/random_seed.h"
#include "libavutil/rational.h"
#include "libavutil/samplefmt.h"
#include "libavutil/stereo3d.h"
#include "libavcodec/av1.h"
#include "libavcodec/xiph.h"
#include "libavcodec/mpeg4audio.h"
Go to the source code of this file.
Data Structures | |
struct | ebml_master |
struct | ebml_stored_master |
struct | BlockContext |
struct | EbmlMaster |
struct | EbmlElement |
struct | EbmlWriter |
struct | mkv_seekhead_entry |
struct | mkv_seekhead |
struct | mkv_cuepoint |
struct | mkv_cues |
struct | mkv_track |
struct | MatroskaMuxContext |
Macros | |
#define | MAX_SEEKHEAD_ENTRIES 7 |
#define | MAX_EBML_LENGTH ((1ULL << 56) - 2) |
#define | MAX_SUPPORTED_EBML_LENGTH FFMIN(MAX_EBML_LENGTH, INT_MAX) |
#define | MODE_MATROSKAv2 0x01 |
#define | MODE_WEBM 0x02 |
#define | IS_WEBM(mkv) |
#define | IS_SEEKABLE(pb, mkv) |
#define | EBML_WRITER(max_nb_elems) |
#define | MAX_SEEKENTRY_SIZE 21 |
2 bytes * 3 for EBML IDs, 3 1-byte EBML lengths, 8 bytes for 64 bit offset, 4 bytes for target EBML ID More... | |
#define | MAX_CUETRACKPOS_SIZE 40 |
4 * (1-byte EBML ID, 1-byte EBML size, 8-byte uint max) More... | |
#define | DURATION_SIMPLETAG_SIZE (2 + 1 + (2 + 1 + 8) + 23) |
2 + 1 Simpletag header, 2 + 1 + 8 Name "DURATION", 23B for TagString More... | |
#define | OPUS_SEEK_PREROLL 80000000 |
Seek preroll value for opus. More... | |
#define | MAX_VIDEO_COLOR_ELEMS 20 |
#define | MAX_VIDEO_PROJECTION_ELEMS 6 |
#define | MAX_FIELD_ORDER_ELEMS 2 |
#define | MAX_STEREO_MODE_ELEMS 1 |
#define | CASE(type, variable) |
#define | OFFSET(x) offsetof(MatroskaMuxContext, x) |
#define | FLAGS AV_OPT_FLAG_ENCODING_PARAM |
Enumerations | |
enum | { DEFAULT_MODE_INFER, DEFAULT_MODE_INFER_NO_SUBS, DEFAULT_MODE_PASSTHROUGH } |
enum | EbmlType { EBML_NONE, EBML_UINT, EBML_SINT, EBML_FLOAT, EBML_STR, EBML_UTF8, EBML_BIN, EBML_NEST, EBML_LEVEL1, EBML_STOP, EBML_TYPE_COUNT, EBML_UINT, EBML_SINT, EBML_FLOAT, EBML_UID, EBML_STR, EBML_UTF8 = EBML_STR, EBML_BIN, EBML_BLOCK, EBML_MASTER } |
Functions | |
static int | ebml_id_size (uint32_t id) |
static void | put_ebml_id (AVIOContext *pb, uint32_t id) |
static void | put_ebml_size_unknown (AVIOContext *pb, int bytes) |
Write an EBML size meaning "unknown size". More... | |
static int | ebml_num_size (uint64_t num) |
Returns how many bytes are needed to represent a number as EBML variable length integer. More... | |
static int | ebml_length_size (uint64_t length) |
Calculate how many bytes are needed to represent the length field of an EBML element whose payload has a given length. More... | |
static void | put_ebml_num (AVIOContext *pb, uint64_t num, int bytes) |
Write a number as EBML variable length integer on bytes bytes. More... | |
static void | put_ebml_length (AVIOContext *pb, uint64_t length, int bytes) |
Write a length as EBML variable length integer. More... | |
static void | put_ebml_uid (AVIOContext *pb, uint32_t elementid, uint64_t uid) |
Write a (random) UID with fixed size to make the output more deterministic. More... | |
static void | put_ebml_uint (AVIOContext *pb, uint32_t elementid, uint64_t val) |
static void | put_ebml_float (AVIOContext *pb, uint32_t elementid, double val) |
static void | put_ebml_binary (AVIOContext *pb, uint32_t elementid, const void *buf, int size) |
static void | put_ebml_string (AVIOContext *pb, uint32_t elementid, const char *str) |
static void | put_ebml_void (AVIOContext *pb, int size) |
Write a void element of a given size. More... | |
static ebml_master | start_ebml_master (AVIOContext *pb, uint32_t elementid, uint64_t expectedsize) |
static void | end_ebml_master (AVIOContext *pb, ebml_master master) |
static EbmlElement * | ebml_writer_add (EbmlWriter *writer, uint32_t id, EbmlType type) |
static void | ebml_writer_open_master (EbmlWriter *writer, uint32_t id) |
static void | ebml_writer_close_master (EbmlWriter *writer) |
static void | ebml_writer_close_or_discard_master (EbmlWriter *writer) |
static void | ebml_writer_add_string (EbmlWriter *writer, uint32_t id, const char *str) |
static void | ebml_writer_add_bin (EbmlWriter *writer, uint32_t id, const uint8_t *data, size_t size) |
static void | ebml_writer_add_float (EbmlWriter *writer, uint32_t id, double val) |
static void | ebml_writer_add_uid (EbmlWriter *writer, uint32_t id, uint64_t val) |
static void | ebml_writer_add_uint (EbmlWriter *writer, uint32_t id, uint64_t val) |
static void | ebml_writer_add_sint (EbmlWriter *writer, uint32_t id, int64_t val) |
static void | ebml_writer_add_block (EbmlWriter *writer, MatroskaMuxContext *mkv) |
static int | ebml_writer_str_len (EbmlElement *elem) |
static av_const int | uint_size (uint64_t val) |
static int | ebml_writer_uint_len (EbmlElement *elem) |
static av_const int | sint_size (int64_t val) |
static int | ebml_writer_sint_len (EbmlElement *elem) |
static int | ebml_writer_elem_len (EbmlWriter *writer, EbmlElement *elem, int remaining_elems) |
static int | ebml_writer_master_len (EbmlWriter *writer, EbmlElement *elem, int remaining_elems) |
static int | ebml_writer_block_len (EbmlElement *elem) |
static void | ebml_writer_write_block (const EbmlElement *elem, AVIOContext *pb) |
static int | ebml_writer_elem_write (const EbmlElement *elem, AVIOContext *pb) |
static int | ebml_writer_write (EbmlWriter *writer, AVIOContext *pb) |
static void | mkv_add_seekhead_entry (MatroskaMuxContext *mkv, uint32_t elementid, uint64_t filepos) |
static int | start_ebml_master_crc32 (AVIOContext **dyn_cp, MatroskaMuxContext *mkv) |
static int | end_ebml_master_crc32 (AVIOContext *pb, AVIOContext **dyn_cp, MatroskaMuxContext *mkv, uint32_t id, int length_size, int keep_buffer, int add_seekentry) |
static int | end_ebml_master_crc32_tentatively (AVIOContext *pb, ebml_stored_master *elem, MatroskaMuxContext *mkv, uint32_t id) |
Output EBML master. More... | |
static void | put_xiph_size (AVIOContext *pb, int size) |
static void | mkv_deinit (AVFormatContext *s) |
Free the members allocated in the mux context. More... | |
static void | mkv_start_seekhead (MatroskaMuxContext *mkv, AVIOContext *pb) |
Initialize the SeekHead element to be ready to index level 1 Matroska elements. More... | |
static int | mkv_write_seekhead (AVIOContext *pb, MatroskaMuxContext *mkv, int error_on_seek_failure, int64_t destpos) |
Write the SeekHead to the file at the location reserved for it and seek to destpos afterwards. More... | |
static int | mkv_add_cuepoint (MatroskaMuxContext *mkv, int stream, int64_t ts, int64_t cluster_pos, int64_t relative_pos, int64_t duration) |
static int | mkv_assemble_cues (AVStream **streams, AVIOContext *dyn_cp, AVIOContext *cuepoint, const mkv_cues *cues, mkv_track *tracks, int num_tracks, uint64_t offset) |
static int | put_xiph_codecpriv (AVFormatContext *s, AVIOContext *pb, const AVCodecParameters *par, const uint8_t *extradata, int extradata_size) |
static int | mkv_assemble_native_codecprivate (AVFormatContext *s, AVIOContext *dyn_cp, const AVCodecParameters *par, const uint8_t *extradata, int extradata_size, unsigned *size_to_reserve) |
static int | mkv_assemble_codecprivate (AVFormatContext *s, AVIOContext *dyn_cp, AVCodecParameters *par, const uint8_t *extradata, int extradata_size, int native_id, int qt_id, uint8_t **codecpriv, int *codecpriv_size, unsigned *max_payload_size) |
static void | mkv_put_codecprivate (AVIOContext *pb, unsigned max_payload_size, const uint8_t *codecpriv, unsigned codecpriv_size) |
static int | mkv_update_codecprivate (AVFormatContext *s, MatroskaMuxContext *mkv, uint8_t *side_data, int side_data_size, AVCodecParameters *par, AVIOContext *pb, mkv_track *track, unsigned alternative_size) |
static void | mkv_write_video_color (EbmlWriter *writer, const AVStream *st, const AVCodecParameters *par) |
static void | mkv_write_video_projection (AVFormatContext *s, EbmlWriter *writer, const AVStream *st, uint8_t private[]) |
static void | mkv_write_field_order (EbmlWriter *writer, int is_webm, enum AVFieldOrder field_order) |
static int | mkv_write_stereo_mode (AVFormatContext *s, EbmlWriter *writer, AVStream *st, int is_webm, int *h_width, int *h_height) |
static void | mkv_write_dovi (AVFormatContext *s, AVIOContext *pb, AVStream *st) |
static int | mkv_write_track_video (AVFormatContext *s, MatroskaMuxContext *mkv, AVStream *st, const AVCodecParameters *par, AVIOContext *pb) |
static int | mkv_write_track (AVFormatContext *s, MatroskaMuxContext *mkv, AVStream *st, mkv_track *track, AVIOContext *pb, int is_default) |
static int | mkv_write_tracks (AVFormatContext *s) |
static int | mkv_write_simpletag (AVIOContext *pb, const AVDictionaryEntry *t) |
static void | mkv_write_tag_targets (MatroskaMuxContext *mkv, AVIOContext *pb, uint32_t elementid, uint64_t uid) |
static int | mkv_check_tag_name (const char *name, uint32_t elementid) |
static int | mkv_write_tag (MatroskaMuxContext *mkv, const AVDictionary *m, AVIOContext **pb, unsigned reserved_size, uint32_t elementid, uint64_t uid) |
static int | mkv_write_tags (AVFormatContext *s) |
static int | mkv_new_chapter_ids_needed (const AVFormatContext *s) |
static int | mkv_write_chapters (AVFormatContext *s) |
static const char * | get_mimetype (const AVStream *st) |
static int | mkv_write_attachments (AVFormatContext *s) |
static int64_t | get_metadata_duration (AVFormatContext *s) |
static void | ebml_write_header (AVIOContext *pb, const char *doctype, int version) |
static int | mkv_write_info (AVFormatContext *s) |
static int | mkv_write_header (AVFormatContext *s) |
static int | mkv_reformat_av1 (MatroskaMuxContext *mkv, AVIOContext *pb, const AVPacket *pkt, int *size) |
static int | webm_reformat_vtt (MatroskaMuxContext *mkv, AVIOContext *pb, const AVPacket *pkt, int *size) |
static int | mkv_write_block (void *logctx, MatroskaMuxContext *mkv, AVIOContext *pb, const AVCodecParameters *par, mkv_track *track, const AVPacket *pkt, int keyframe, int64_t ts, uint64_t duration, int force_blockgroup, int64_t relative_packet_pos) |
static int | mkv_end_cluster (AVFormatContext *s) |
static int | mkv_check_new_extra_data (AVFormatContext *s, const AVPacket *pkt) |
static int | mkv_write_packet_internal (AVFormatContext *s, const AVPacket *pkt) |
static int | mkv_write_packet (AVFormatContext *s, const AVPacket *pkt) |
static int | mkv_write_flush_packet (AVFormatContext *s, AVPacket *pkt) |
static int | mkv_write_trailer (AVFormatContext *s) |
static uint64_t | mkv_get_uid (const mkv_track *tracks, int i, AVLFG *c) |
static int | mkv_init (struct AVFormatContext *s) |
static int | mkv_check_bitstream (AVFormatContext *s, AVStream *st, const AVPacket *pkt) |
Variables | |
static const AVCodecTag | additional_audio_tags [] |
static const AVCodecTag | additional_video_tags [] |
static const AVCodecTag | additional_subtitle_tags [] |
static const AVOption | options [] |
static const AVClass | matroska_webm_class |
#define MAX_SEEKHEAD_ENTRIES 7 |
Definition at line 65 of file matroskaenc.c.
#define MAX_EBML_LENGTH ((1ULL << 56) - 2) |
Definition at line 68 of file matroskaenc.c.
#define MAX_SUPPORTED_EBML_LENGTH FFMIN(MAX_EBML_LENGTH, INT_MAX) |
Definition at line 71 of file matroskaenc.c.
#define MODE_MATROSKAv2 0x01 |
Definition at line 73 of file matroskaenc.c.
#define MODE_WEBM 0x02 |
Definition at line 74 of file matroskaenc.c.
#define IS_WEBM | ( | mkv | ) |
Definition at line 76 of file matroskaenc.c.
#define IS_SEEKABLE | ( | pb, | |
mkv | |||
) |
Definition at line 78 of file matroskaenc.c.
#define EBML_WRITER | ( | max_nb_elems | ) |
Definition at line 144 of file matroskaenc.c.
#define MAX_SEEKENTRY_SIZE 21 |
2 bytes * 3 for EBML IDs, 3 1-byte EBML lengths, 8 bytes for 64 bit offset, 4 bytes for target EBML ID
Definition at line 255 of file matroskaenc.c.
#define MAX_CUETRACKPOS_SIZE 40 |
4 * (1-byte EBML ID, 1-byte EBML size, 8-byte uint max)
Definition at line 258 of file matroskaenc.c.
#define DURATION_SIMPLETAG_SIZE (2 + 1 + (2 + 1 + 8) + 23) |
2 + 1 Simpletag header, 2 + 1 + 8 Name "DURATION", 23B for TagString
Definition at line 261 of file matroskaenc.c.
#define OPUS_SEEK_PREROLL 80000000 |
Seek preroll value for opus.
Definition at line 264 of file matroskaenc.c.
#define MAX_VIDEO_COLOR_ELEMS 20 |
Definition at line 1294 of file matroskaenc.c.
#define MAX_VIDEO_PROJECTION_ELEMS 6 |
Definition at line 1377 of file matroskaenc.c.
#define MAX_FIELD_ORDER_ELEMS 2 |
Definition at line 1443 of file matroskaenc.c.
#define MAX_STEREO_MODE_ELEMS 1 |
Definition at line 1483 of file matroskaenc.c.
#define CASE | ( | type, | |
variable | |||
) |
#define OFFSET | ( | x | ) | offsetof(MatroskaMuxContext, x) |
Definition at line 3275 of file matroskaenc.c.
#define FLAGS AV_OPT_FLAG_ENCODING_PARAM |
Definition at line 3276 of file matroskaenc.c.
anonymous enum |
Enumerator | |
---|---|
DEFAULT_MODE_INFER | |
DEFAULT_MODE_INFER_NO_SUBS | |
DEFAULT_MODE_PASSTHROUGH |
Definition at line 81 of file matroskaenc.c.
enum EbmlType |
Definition at line 97 of file matroskaenc.c.
|
static |
Definition at line 266 of file matroskaenc.c.
Referenced by ebml_writer_master_len(), mkv_write_seekhead(), and put_ebml_id().
|
static |
Definition at line 271 of file matroskaenc.c.
Referenced by ebml_writer_elem_write(), end_ebml_master_crc32(), end_ebml_master_crc32_tentatively(), mkv_put_codecprivate(), mkv_write_header(), mkv_write_seekhead(), put_ebml_binary(), put_ebml_float(), put_ebml_uid(), put_ebml_uint(), put_ebml_void(), and start_ebml_master().
|
static |
Write an EBML size meaning "unknown size".
bytes | The number of bytes the size should occupy (maximum: 8). |
Definition at line 283 of file matroskaenc.c.
Referenced by mkv_write_header(), and start_ebml_master().
|
static |
Returns how many bytes are needed to represent a number as EBML variable length integer.
Definition at line 296 of file matroskaenc.c.
Referenced by ebml_length_size(), and mkv_init().
|
static |
Calculate how many bytes are needed to represent the length field of an EBML element whose payload has a given length.
Definition at line 309 of file matroskaenc.c.
Referenced by ebml_writer_elem_len(), mkv_put_codecprivate(), mkv_write_trailer(), put_ebml_length(), and start_ebml_master().
|
static |
Write a number as EBML variable length integer on bytes
bytes.
bytes
is taken literally without checking.
Definition at line 318 of file matroskaenc.c.
Referenced by ebml_writer_elem_write(), ebml_writer_write_block(), and put_ebml_length().
|
static |
Write a length as EBML variable length integer.
bytes | The number of bytes that need to be used to write the number. If zero, the minimal number of bytes will be used. |
Definition at line 331 of file matroskaenc.c.
Referenced by end_ebml_master(), end_ebml_master_crc32(), end_ebml_master_crc32_tentatively(), mkv_put_codecprivate(), mkv_write_seekhead(), mkv_write_trailer(), put_ebml_binary(), put_ebml_float(), put_ebml_uid(), put_ebml_uint(), and put_ebml_void().
|
static |
Write a (random) UID with fixed size to make the output more deterministic.
Definition at line 349 of file matroskaenc.c.
Referenced by mkv_write_tag_targets(), and mkv_write_track().
|
static |
Definition at line 356 of file matroskaenc.c.
Referenced by mkv_assemble_cues(), mkv_write_chapters(), mkv_write_dovi(), mkv_write_info(), mkv_write_packet_internal(), mkv_write_seekhead(), and mkv_write_track().
|
static |
Definition at line 369 of file matroskaenc.c.
Referenced by mkv_check_new_extra_data(), mkv_write_info(), mkv_write_track(), and mkv_write_trailer().
|
static |
Definition at line 376 of file matroskaenc.c.
Referenced by end_ebml_master_crc32(), mkv_assemble_cues(), mkv_write_dovi(), mkv_write_info(), mkv_write_tag(), mkv_write_trailer(), and put_ebml_string().
|
static |
Definition at line 384 of file matroskaenc.c.
Referenced by mkv_write_dovi(), mkv_write_info(), mkv_write_track(), and mkv_write_trailer().
|
static |
Write a void element of a given size.
Useful for reserving space in the file to be written to later.
size | The number of bytes to reserve, which must be at least 2. |
Definition at line 396 of file matroskaenc.c.
Referenced by mkv_put_codecprivate(), mkv_start_seekhead(), mkv_write_header(), mkv_write_info(), mkv_write_seekhead(), mkv_write_tag(), mkv_write_trailer(), and start_ebml_master_crc32().
|
static |
Definition at line 414 of file matroskaenc.c.
Referenced by mkv_assemble_cues(), mkv_write_chapters(), mkv_write_dovi(), mkv_write_seekhead(), mkv_write_tag_targets(), mkv_write_track(), and mkv_write_trailer().
|
static |
Definition at line 424 of file matroskaenc.c.
Referenced by mkv_assemble_cues(), mkv_write_chapters(), mkv_write_dovi(), mkv_write_seekhead(), mkv_write_tag_targets(), mkv_write_track(), and mkv_write_trailer().
|
static |
Definition at line 434 of file matroskaenc.c.
Referenced by ebml_writer_add_bin(), ebml_writer_add_block(), ebml_writer_add_float(), ebml_writer_add_sint(), ebml_writer_add_string(), ebml_writer_add_uid(), ebml_writer_add_uint(), and ebml_writer_open_master().
|
static |
Definition at line 442 of file matroskaenc.c.
Referenced by ebml_write_header(), mkv_write_attachments(), mkv_write_block(), mkv_write_chapters(), mkv_write_simpletag(), mkv_write_track_video(), mkv_write_video_color(), and mkv_write_video_projection().
|
static |
Definition at line 453 of file matroskaenc.c.
Referenced by ebml_writer_close_or_discard_master(), mkv_write_block(), and mkv_write_video_projection().
|
static |
Definition at line 467 of file matroskaenc.c.
Referenced by mkv_write_video_color().
|
static |
Definition at line 485 of file matroskaenc.c.
Referenced by ebml_write_header(), mkv_write_attachments(), mkv_write_chapters(), and mkv_write_simpletag().
|
static |
Definition at line 493 of file matroskaenc.c.
Referenced by mkv_write_attachments(), mkv_write_block(), mkv_write_track_video(), and mkv_write_video_projection().
|
static |
Definition at line 505 of file matroskaenc.c.
Referenced by mkv_write_video_color(), and mkv_write_video_projection().
|
static |
Definition at line 513 of file matroskaenc.c.
Referenced by mkv_write_attachments().
|
static |
Definition at line 520 of file matroskaenc.c.
Referenced by ebml_write_header(), mkv_write_block(), mkv_write_chapters(), mkv_write_field_order(), mkv_write_stereo_mode(), mkv_write_track_video(), mkv_write_video_color(), and mkv_write_video_projection().
|
static |
Definition at line 527 of file matroskaenc.c.
Referenced by mkv_write_block().
|
static |
Definition at line 534 of file matroskaenc.c.
Referenced by mkv_write_block().
|
static |
Definition at line 540 of file matroskaenc.c.
Referenced by ebml_writer_elem_len().
Definition at line 550 of file matroskaenc.c.
Referenced by ebml_writer_uint_len(), and sint_size().
|
static |
Definition at line 559 of file matroskaenc.c.
Referenced by ebml_writer_elem_len().
Definition at line 565 of file matroskaenc.c.
Referenced by ebml_writer_sint_len().
|
static |
Definition at line 571 of file matroskaenc.c.
Referenced by ebml_writer_elem_len().
|
static |
Definition at line 652 of file matroskaenc.c.
Referenced by ebml_writer_master_len(), and ebml_writer_write().
|
static |
Definition at line 580 of file matroskaenc.c.
Referenced by ebml_writer_elem_len().
|
static |
Definition at line 606 of file matroskaenc.c.
Referenced by ebml_writer_elem_len().
|
static |
Definition at line 631 of file matroskaenc.c.
Referenced by ebml_writer_elem_write().
|
static |
Definition at line 686 of file matroskaenc.c.
Referenced by ebml_writer_write().
|
static |
Definition at line 729 of file matroskaenc.c.
Referenced by ebml_write_header(), mkv_write_attachments(), mkv_write_block(), mkv_write_chapters(), mkv_write_simpletag(), and mkv_write_track_video().
|
static |
Definition at line 739 of file matroskaenc.c.
Referenced by end_ebml_master_crc32(), and end_ebml_master_crc32_tentatively().
|
static |
Definition at line 750 of file matroskaenc.c.
Referenced by mkv_write_attachments(), mkv_write_chapters(), mkv_write_info(), mkv_write_packet_internal(), mkv_write_seekhead(), mkv_write_tag(), mkv_write_tracks(), and mkv_write_trailer().
|
static |
Definition at line 763 of file matroskaenc.c.
Referenced by end_ebml_master_crc32_tentatively(), mkv_end_cluster(), mkv_write_attachments(), mkv_write_chapters(), mkv_write_seekhead(), and mkv_write_trailer().
|
static |
Output EBML master.
Keep the buffer if seekable, allowing for later updates. Furthermore always add a SeekHead Entry for this element.
Definition at line 800 of file matroskaenc.c.
Referenced by mkv_write_info(), mkv_write_tags(), and mkv_write_tracks().
|
static |
Definition at line 823 of file matroskaenc.c.
Referenced by put_xiph_codecpriv().
|
static |
Free the members allocated in the mux context.
Definition at line 832 of file matroskaenc.c.
|
static |
Initialize the SeekHead element to be ready to index level 1 Matroska elements.
Enough space to write MAX_SEEKHEAD_ENTRIES SeekHead entries will be reserved at the current file location.
Definition at line 852 of file matroskaenc.c.
Referenced by mkv_write_header().
|
static |
Write the SeekHead to the file at the location reserved for it and seek to destpos afterwards.
When error_on_seek_failure is not set, failure to seek to the position designated for the SeekHead is not considered an error and it is presumed that destpos is the current position; failure to seek to destpos afterwards is always an error.
Definition at line 872 of file matroskaenc.c.
Referenced by mkv_write_header(), and mkv_write_trailer().
|
static |
Definition at line 913 of file matroskaenc.c.
Referenced by mkv_write_packet_internal().
|
static |
Definition at line 945 of file matroskaenc.c.
Referenced by mkv_write_trailer().
|
static |
Definition at line 987 of file matroskaenc.c.
Referenced by mkv_assemble_native_codecprivate().
|
static |
Definition at line 1099 of file matroskaenc.c.
Referenced by mkv_assemble_codecprivate().
|
static |
Definition at line 1155 of file matroskaenc.c.
Referenced by mkv_update_codecprivate(), and mkv_write_track().
|
static |
Definition at line 1228 of file matroskaenc.c.
Referenced by mkv_update_codecprivate(), and mkv_write_track().
|
static |
Definition at line 1257 of file matroskaenc.c.
Referenced by mkv_check_new_extra_data().
|
static |
Definition at line 1295 of file matroskaenc.c.
Referenced by mkv_write_track_video().
|
static |
Definition at line 1378 of file matroskaenc.c.
Referenced by mkv_write_track_video().
|
static |
Definition at line 1444 of file matroskaenc.c.
Referenced by mkv_write_track_video().
|
static |
Definition at line 1484 of file matroskaenc.c.
Referenced by mkv_write_track_video().
|
static |
Definition at line 1576 of file matroskaenc.c.
Referenced by mkv_write_track().
|
static |
Definition at line 1609 of file matroskaenc.c.
Referenced by mkv_write_track().
|
static |
Definition at line 1689 of file matroskaenc.c.
Referenced by mkv_write_tracks().
|
static |
Definition at line 1924 of file matroskaenc.c.
Referenced by mkv_write_header().
|
static |
Definition at line 1978 of file matroskaenc.c.
Referenced by mkv_write_tag().
|
static |
Definition at line 2013 of file matroskaenc.c.
Referenced by mkv_write_tag().
|
static |
Definition at line 2023 of file matroskaenc.c.
Referenced by mkv_write_tag().
|
static |
Definition at line 2037 of file matroskaenc.c.
Referenced by mkv_write_chapters(), and mkv_write_tags().
|
static |
Definition at line 2078 of file matroskaenc.c.
Referenced by mkv_write_header().
|
static |
Definition at line 2129 of file matroskaenc.c.
Referenced by mkv_write_chapters().
|
static |
Definition at line 2141 of file matroskaenc.c.
Referenced by mkv_write_header(), and mkv_write_trailer().
|
static |
Definition at line 2226 of file matroskaenc.c.
Referenced by mkv_init(), and mkv_write_attachments().
|
static |
Definition at line 2243 of file matroskaenc.c.
Referenced by mkv_write_header().
|
static |
Definition at line 2293 of file matroskaenc.c.
Referenced by mkv_write_info().
|
static |
Definition at line 2317 of file matroskaenc.c.
Referenced by mkv_write_header().
|
static |
Definition at line 2333 of file matroskaenc.c.
Referenced by mkv_write_header().
|
static |
Definition at line 2392 of file matroskaenc.c.
|
static |
Definition at line 2548 of file matroskaenc.c.
Referenced by mkv_init().
|
static |
Definition at line 2558 of file matroskaenc.c.
Referenced by mkv_init().
|
static |
Definition at line 2585 of file matroskaenc.c.
Referenced by mkv_write_packet_internal().
|
static |
Definition at line 2660 of file matroskaenc.c.
Referenced by mkv_write_flush_packet(), mkv_write_packet(), and mkv_write_packet_internal().
|
static |
Definition at line 2679 of file matroskaenc.c.
Referenced by mkv_write_packet().
|
static |
Definition at line 2751 of file matroskaenc.c.
Referenced by mkv_write_packet(), and mkv_write_trailer().
|
static |
Definition at line 2826 of file matroskaenc.c.
Referenced by mkv_write_flush_packet().
|
static |
Definition at line 2900 of file matroskaenc.c.
|
static |
Definition at line 2918 of file matroskaenc.c.
Definition at line 3095 of file matroskaenc.c.
Referenced by mkv_init().
|
static |
Definition at line 3113 of file matroskaenc.c.
|
static |
Definition at line 3227 of file matroskaenc.c.
|
static |
Definition at line 3245 of file matroskaenc.c.
|
static |
Definition at line 3261 of file matroskaenc.c.
|
static |
Definition at line 3268 of file matroskaenc.c.
|
static |
Definition at line 3277 of file matroskaenc.c.
|
static |
Definition at line 3295 of file matroskaenc.c.