#include "config.h"
#include "avformat.h"
#include "internal.h"
#include "mux.h"
#include "os_support.h"
#include "avc.h"
#include "url.h"
#include "libavutil/opt.h"
#include "libavutil/avstring.h"
#include "libavutil/mathematics.h"
#include "libavutil/uuid.h"
Go to the source code of this file.
|
static int | ism_write (void *opaque, uint8_t *buf, int buf_size) |
|
static int64_t | ism_seek (void *opaque, int64_t offset, int whence) |
|
static void | get_private_data (OutputStream *os) |
|
static void | ism_free (AVFormatContext *s) |
|
static void | output_chunk_list (OutputStream *os, AVIOContext *out, int final, int skip, int window_size) |
|
static int | write_manifest (AVFormatContext *s, int final) |
|
static int | ism_write_header (AVFormatContext *s) |
|
static int | parse_fragment (AVFormatContext *s, const char *filename, int64_t *start_ts, int64_t *duration, int64_t *moof_size, int64_t size) |
|
static int | add_fragment (OutputStream *os, const char *file, const char *infofile, int64_t start_time, int64_t duration, int64_t start_pos, int64_t size) |
|
static int | copy_moof (AVFormatContext *s, const char *infile, const char *outfile, int64_t size) |
|
static int | ism_flush (AVFormatContext *s, int final) |
|
static int | ism_write_packet (AVFormatContext *s, AVPacket *pkt) |
|
static int | ism_write_trailer (AVFormatContext *s) |
|
◆ OFFSET
◆ ism_write()
static int ism_write |
( |
void * |
opaque, |
|
|
uint8_t * |
buf, |
|
|
int |
buf_size |
|
) |
| |
|
static |
◆ ism_seek()
static int64_t ism_seek |
( |
void * |
opaque, |
|
|
int64_t |
offset, |
|
|
int |
whence |
|
) |
| |
|
static |
◆ get_private_data()
◆ ism_free()
◆ output_chunk_list()
◆ write_manifest()
◆ ism_write_header()
◆ parse_fragment()
static int parse_fragment |
( |
AVFormatContext * |
s, |
|
|
const char * |
filename, |
|
|
int64_t * |
start_ts, |
|
|
int64_t * |
duration, |
|
|
int64_t * |
moof_size, |
|
|
int64_t |
size |
|
) |
| |
|
static |
◆ add_fragment()
static int add_fragment |
( |
OutputStream * |
os, |
|
|
const char * |
file, |
|
|
const char * |
infofile, |
|
|
int64_t |
start_time, |
|
|
int64_t |
duration, |
|
|
int64_t |
start_pos, |
|
|
int64_t |
size |
|
) |
| |
|
static |
◆ copy_moof()
static int copy_moof |
( |
AVFormatContext * |
s, |
|
|
const char * |
infile, |
|
|
const char * |
outfile, |
|
|
int64_t |
size |
|
) |
| |
|
static |
◆ ism_flush()
◆ ism_write_packet()
◆ ism_write_trailer()
◆ options
Initial value:= {
{
"window_size",
"number of fragments kept in the manifest",
OFFSET(window_size),
AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX,
E },
{
"extra_window_size",
"number of fragments kept outside of the manifest before removing from disk",
OFFSET(extra_window_size),
AV_OPT_TYPE_INT, { .i64 = 5 }, 0, INT_MAX,
E },
{
"lookahead_count",
"number of lookahead fragments",
OFFSET(lookahead_count),
AV_OPT_TYPE_INT, { .i64 = 2 }, 0, INT_MAX,
E },
{
"min_frag_duration",
"minimum fragment duration (in microseconds)",
OFFSET(min_frag_duration),
AV_OPT_TYPE_INT64, { .i64 = 5000000 }, 0, INT_MAX,
E },
{
"remove_at_exit",
"remove all fragments when finished",
OFFSET(remove_at_exit),
AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1,
E },
}
Definition at line 623 of file smoothstreamingenc.c.
◆ ism_class
◆ ff_smoothstreaming_muxer