[FFmpeg-devel] Adding Force Style option in Subtitles Filter
Stefano Sabatini
stefasab at gmail.com
Thu Feb 5 12:04:44 CET 2015
On date Thursday 2015-02-05 16:16:15 +0530, Eejya Singh encoded:
[...]
> From c0d6197f1936445a23b9eb726de24ed54551c675 Mon Sep 17 00:00:00 2001
> From: Eejya Singh <singh.eejya at gmail.com>
> Date: Wed, 28 Jan 2015 17:41:42 +0530
> Subject: [PATCH] Adding Force Style option in Subtitles Filter
Change the name of the patch (use git-rebase --interactive and reword
the commit log), and use something like "lavfi/subtitles: add
force_style option". Check the log for more examples.
>
> Signed-off-by: Eejya Singh <singh.eejya at gmail.com>
> ---
> doc/filters.texi | 14 ++++++++++++++
> libavfilter/version.h | 2 +-
> libavfilter/vf_subtitles.c | 25 +++++++++++++++++++++++++
> 3 files changed, 40 insertions(+), 1 deletion(-)
>
> diff --git a/doc/filters.texi b/doc/filters.texi
> index 261fd24..857d281 100644
> --- a/doc/filters.texi
> +++ b/doc/filters.texi
> @@ -8470,6 +8470,10 @@ useful if not UTF-8.
>
> @item stream_index, si
> Set subtitles stream index. @code{subtitles} filter only.
> +
> + at item force_style
> +Set desired style for the customization of subtitles like :- FontSize=15,Italic=-1,Outline=2 etc.It follows ASS style format.
Uhm no, please give a formal description. You can use examples later
in the examples section (like you already did).
> +
> @end table
>
> If the first key is not specified, it is assumed that the first value
> @@ -8496,6 +8500,16 @@ To render the second subtitles stream from that file, use:
> subtitles=video.mkv:si=1
> @end example
>
> +To change the font of subtitles stream from file, use:
> + at example
> +subtitles=sub.srt:force_style=FontName=Arial
> + at end example
> +
> +To change the color and formatting of subtitles stream from file, use:
> + at example
> +subtitles='sub.srt:force_style=FontName=Arial,PrimaryColour=255'
> + at end example
> +
> @section super2xsai
>
> Scale the input by 2x and smooth using the Super2xSaI (Scale and
> diff --git a/libavfilter/version.h b/libavfilter/version.h
> index 50967f4..7ec374d 100644
> --- a/libavfilter/version.h
> +++ b/libavfilter/version.h
> @@ -31,7 +31,7 @@
>
> #define LIBAVFILTER_VERSION_MAJOR 5
> #define LIBAVFILTER_VERSION_MINOR 6
> -#define LIBAVFILTER_VERSION_MICRO 100
> +#define LIBAVFILTER_VERSION_MICRO 101
>
> #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
> LIBAVFILTER_VERSION_MINOR, \
> diff --git a/libavfilter/vf_subtitles.c b/libavfilter/vf_subtitles.c
> index be4c6a5..50eab9b 100644
> --- a/libavfilter/vf_subtitles.c
> +++ b/libavfilter/vf_subtitles.c
> @@ -51,6 +51,7 @@ typedef struct {
> ASS_Track *track;
> char *filename;
> char *charenc;
> + char *force_style;
> int stream_index;
> uint8_t rgba_map[4];
> int pix_step[4]; ///< steps per pixel for each plane of the main output
> @@ -260,6 +261,7 @@ static const AVOption subtitles_options[] = {
> {"charenc", "set input character encoding", OFFSET(charenc), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX, FLAGS},
> {"stream_index", "set stream index", OFFSET(stream_index), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, FLAGS},
> {"si", "set stream index", OFFSET(stream_index), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, FLAGS},
> + {"force_style", "force subtitle style", OFFSET(force_style), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX, FLAGS},
> {NULL},
> };
>
> @@ -389,9 +391,32 @@ static av_cold int init_subtitles(AVFilterContext *ctx)
> if (ass->charenc)
> av_dict_set(&codec_opts, "sub_charenc", ass->charenc, 0);
> ret = avcodec_open2(dec_ctx, dec, &codec_opts);
> +
stray change
[...]
LGTM otherwise.
--
FFmpeg = Fiendish & Fantastic Merciless Prodigious Evangelical Gem
More information about the ffmpeg-devel
mailing list