Hi!

Attached patch should allow to set the teletext decoder properties to 
(AV_CODEC_PROP_TEXT_SUB | AV_CODEC_PROP_BITMAP_SUB).

Please comment, Carl Eugen
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 6071380..3db2a1c 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -1595,7 +1595,8 @@ int attribute_align_arg avcodec_open2(AVCodecContext 
*avctx, const AVCodec *code
                        "supported with subtitles codecs\n");
                 ret = AVERROR(EINVAL);
                 goto free_and_end;
-            } else if (avctx->codec_descriptor->props & 
AV_CODEC_PROP_BITMAP_SUB) {
+            } else if (    avctx->codec_descriptor->props & 
AV_CODEC_PROP_BITMAP_SUB
+                       && ~avctx->codec_descriptor->props & 
AV_CODEC_PROP_TEXT_SUB) {
                 av_log(avctx, AV_LOG_WARNING, "Codec '%s' is bitmap-based, "
                        "subtitles character encoding will be ignored\n",
                        avctx->codec_descriptor->name);
@@ -2676,9 +2677,11 @@ int avcodec_decode_subtitle2(AVCodecContext *avctx, 
AVSubtitle *sub,
 
                 av_free_packet(&pkt_recoded);
             }
-            if (avctx->codec_descriptor->props & AV_CODEC_PROP_BITMAP_SUB)
+            if (    avctx->codec_descriptor->props & AV_CODEC_PROP_BITMAP_SUB
+                && ~avctx->codec_descriptor->props & AV_CODEC_PROP_TEXT_SUB)
                 sub->format = 0;
-            else if (avctx->codec_descriptor->props & AV_CODEC_PROP_TEXT_SUB)
+            else if (    avctx->codec_descriptor->props & 
AV_CODEC_PROP_TEXT_SUB
+                     && ~avctx->codec_descriptor->props & 
AV_CODEC_PROP_BITMAP_SUB)
                 sub->format = 1;
             avctx->internal->pkt = NULL;
         }
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to