[FFmpeg-devel] [PATCH v3 07/18] fftools/play, probe: Adjust for subtitle format type change
Tobias Rapp
t.rapp at noa-archive.com
Mon Sep 13 10:41:00 EEST 2021
On 11.09.2021 08:02, Soft Works wrote:
> Signed-off-by: softworkz <softworkz at hotmail.com>
> ---
> fftools/ffplay.c | 2 +-
> fftools/ffprobe.c | 23 ++++++++++++++++++++++-
> 2 files changed, 23 insertions(+), 2 deletions(-)
>
> diff --git a/fftools/ffplay.c b/fftools/ffplay.c
> index 46758b9f55..f6a4d242c3 100644
> --- a/fftools/ffplay.c
> +++ b/fftools/ffplay.c
> @@ -2250,7 +2250,7 @@ static int subtitle_thread(void *arg)
>
> pts = 0;
>
> - if (got_subtitle && sp->sub.format == 0) {
> + if (got_subtitle && sp->sub.format == AV_SUBTITLE_FMT_BITMAP) {
> if (sp->sub.pts != AV_NOPTS_VALUE)
> pts = sp->sub.pts / (double)AV_TIME_BASE;
> sp->pts = pts;
> diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c
> index acfec09656..fb55f3b292 100644
> --- a/fftools/ffprobe.c
> +++ b/fftools/ffprobe.c
> @@ -2212,6 +2212,7 @@ static void show_subtitle(WriterContext *w, AVSubtitle *sub, AVStream *stream,
> AVFormatContext *fmt_ctx)
> {
> AVBPrint pbuf;
> + const char *s;
>
> av_bprint_init(&pbuf, 1, AV_BPRINT_SIZE_UNLIMITED);
>
> @@ -2220,7 +2221,27 @@ static void show_subtitle(WriterContext *w, AVSubtitle *sub, AVStream *stream,
> print_str ("media_type", "subtitle");
> print_ts ("pts", sub->pts);
> print_time("pts_time", sub->pts, &AV_TIME_BASE_Q);
> - print_int ("format", sub->format);
> +
> + // Remain compatible with previous outputs?
> + switch (sub->format) {
> + case AV_SUBTITLE_FMT_BITMAP:
> + print_int ("format", 0);
> + break;
> + case AV_SUBTITLE_FMT_TEXT:
> + print_int ("format", 1);
> + break;
> + case AV_SUBTITLE_FMT_ASS:
> + print_int ("format", 1);
> + break;
> + default:
> + print_int ("format", -1);
> + break;
> + }
> +
> + s = av_get_subtitle_fmt_name(sub->format);
> + if (s) print_str ("format_str", s);
> + else print_str_opt("format_str", "unknown");
> +
> print_int ("start_display_time", sub->start_display_time);
> print_int ("end_display_time", sub->end_display_time);
> print_int ("num_rects", sub->num_rects);
>
In any case the new attribute should be added to the "subtitle" element
type definition in doc/ffprobe.xsd.
Regards,
Tobias
More information about the ffmpeg-devel
mailing list