163 int target_duration = 0;
174 target_duration = ceil(en->
duration);
182 avio_printf(hls->
pb,
"#EXT-X-TARGETDURATION:%d\n", target_duration);
183 avio_printf(hls->
pb,
"#EXT-X-MEDIA-SEQUENCE:%"PRId64
"\n", sequence);
191 avio_printf(hls->
pb,
"#EXT-X-BYTERANGE:%"PRIi64
"@%"PRIi64
"\n",
238 const char *pattern =
"%d.ts";
240 int basename_size = strlen(s->
filename) + strlen(pattern) + 1;
263 "More than a single video stream present, "
264 "expect issues decoding it.\n");
326 int ret, can_split = 1;
339 is_ref_pkt = can_split = 0;
347 int64_t new_start_pos;
403 #define OFFSET(x) offsetof(HLSContext, x)
404 #define E AV_OPT_FLAG_ENCODING_PARAM
408 {
"hls_list_size",
"set maximum number of playlist entries",
OFFSET(max_nb_segments),
AV_OPT_TYPE_INT, {.i64 = 5}, 0, INT_MAX,
E},
409 {
"hls_ts_options",
"set hls mpegts list of options for the container format used for hls",
OFFSET(format_options_str),
AV_OPT_TYPE_STRING, {.str = NULL}, 0, 0,
E},
411 {
"hls_allow_cache",
"explicitly set whether the client MAY (1) or MUST NOT (0) cache media segments",
OFFSET(allowcache),
AV_OPT_TYPE_INT, {.i64 = -1}, INT_MIN, INT_MAX,
E},
413 {
"hls_flags",
"set flags affecting HLS playlist and media file generation",
OFFSET(
flags),
AV_OPT_TYPE_FLAGS, {.i64 = 0 }, 0, UINT_MAX,
E,
"flags"},
430 .extensions =
"m3u8",
438 .priv_class = &hls_class,