On Tue, Mar 18, 2014 at 9:18 PM, Luca Barbato <[email protected]> wrote:
> From: Enrique Arizón Benito <[email protected]>
>
> Useful to generate lists with absolute urls.
>
> Signed-off-by: Luca Barbato <[email protected]>
> ---
>
> This version has some formatting nits removed and docs added, feel free
> to clean up the documentation if it feels too terse.
>
> doc/muxers.texi | 3 +++
> libavformat/segment.c | 5 +++++
> 2 files changed, 8 insertions(+)
>
> diff --git a/doc/muxers.texi b/doc/muxers.texi
> index 143e595..cf5e016 100644
> --- a/doc/muxers.texi
> +++ b/doc/muxers.texi
> @@ -480,6 +480,9 @@ Set segment duration to @var{t} seconds.
> Generate also a listfile named @var{name}.
> @item segment_list_size @var{size}
> Overwrite the listfile once it reaches @var{size} entries.
> +@item segment_list_entry_prefix @var{prefix}
> +Prepend @var{prefix} to each entry. Useful to generate absolute paths,
> +has the parser consuming it unable to use relative ones.
What does this mean?
Other parts are ok.
Vittorio
> @item segment_wrap @var{limit}
> Wrap around segment index once it reaches @var{limit}.
> @end table
> diff --git a/libavformat/segment.c b/libavformat/segment.c
> index d79a327..390263c 100644
> --- a/libavformat/segment.c
> +++ b/libavformat/segment.c
> @@ -37,6 +37,7 @@ typedef struct {
> AVFormatContext *avf;
> char *format; /**< Set by a private option. */
> char *list; /**< Set by a private option. */
> + char *entry_prefix; /**< Set by a private option. */
> int list_type; /**< Set by a private option. */
> float time; /**< Set by a private option. */
> int size; /**< Set by a private option. */
> @@ -97,6 +98,9 @@ static int segment_hls_window(AVFormatContext *s, int last)
> for (i = FFMAX(0, seg->number - seg->size);
> i < seg->number; i++) {
> avio_printf(seg->pb, "#EXTINF:%d,\n", (int)seg->time);
> + if (seg->entry_prefix != NULL) {
> + avio_printf(seg->pb, "%s", seg->entry_prefix);
> + }
> av_get_frame_filename(buf, sizeof(buf), s->filename, i);
> avio_printf(seg->pb, "%s\n", buf);
> }
> @@ -363,6 +367,7 @@ static const AVOption options[] = {
> { "flat", "plain list (default)", 0,
> AV_OPT_TYPE_CONST, {.i64 = LIST_FLAT}, 0, 0, E, "list_type" },
> { "hls", "Apple HTTP Live Streaming compatible", 0,
> AV_OPT_TYPE_CONST, {.i64 = LIST_HLS}, 0, 0, E, "list_type" },
> { "segment_wrap", "number after which the index wraps",
> OFFSET(wrap), AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, E },
> + { "segment_list_entry_prefix", "base url prefix for segments",
> OFFSET(entry_prefix), AV_OPT_TYPE_STRING, {.str = NULL}, 0, 0, E },
> { "individual_header_trailer", "write header/trailer to each segment",
> OFFSET(individual_header_trailer), AV_OPT_TYPE_INT, {.i64 = 1}, 0, 1, E },
> { "write_header_trailer", "write a header to the first segment and a
> trailer to the last one", OFFSET(write_header_trailer), AV_OPT_TYPE_INT,
> {.i64 = 1}, 0, 1, E },
> { NULL },
> --
> 1.8.3.4 (Apple Git-47)
>
> _______________________________________________
> libav-devel mailing list
> [email protected]
> https://lists.libav.org/mailman/listinfo/libav-devel
--
Vittorio
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel