lavf/subtitles: error out in case of bitmap subtitles.
authorClément Bœsch <ubitux@gmail.com>
Sun, 17 Feb 2013 12:33:52 +0000 (13:33 +0100)
committerClément Bœsch <ubitux@gmail.com>
Sun, 17 Feb 2013 12:35:35 +0000 (13:35 +0100)
libavfilter/vf_subtitles.c

index 8d58221..4f4fbf7 100644 (file)
@@ -267,6 +267,7 @@ static av_cold int init_subtitles(AVFilterContext *ctx, const char *args)
     AVFormatContext *fmt = NULL;
     AVCodecContext *dec_ctx = NULL;
     AVCodec *dec = NULL;
+    AVCodecDescriptor *dec_desc;
     AVStream *st;
     AVPacket pkt;
     AssContext *ass = ctx->priv;
@@ -309,6 +310,12 @@ static av_cold int init_subtitles(AVFilterContext *ctx, const char *args)
                avcodec_get_name(dec_ctx->codec_id));
         return AVERROR(EINVAL);
     }
+    dec_desc = avcodec_descriptor_get(dec_ctx->codec_id);
+    if (dec_desc && (dec_desc->props & AV_CODEC_PROP_BITMAP_SUB)) {
+        av_log(ctx, AV_LOG_ERROR,
+               "Only text based subtitles are currently supported\n");
+        return AVERROR_PATCHWELCOME;
+    }
     if (ass->charenc)
         av_dict_set(&codec_opts, "sub_charenc", ass->charenc, 0);
     ret = avcodec_open2(dec_ctx, dec, &codec_opts);