Ticket #3679: 0001-Recognize-MJPEG-at-probing.patch

File 0001-Recognize-MJPEG-at-probing.patch, 1.2 KB (added by Andrey Utkin, 12 years ago)
  • libavformat/rawdec.c

    From c9a442a88528c677745cd2bf276bc8aac6f7076c Mon Sep 17 00:00:00 2001
    From: Andrey Utkin <andrey.krieger.utkin@gmail.com>
    Date: Fri, 6 Jun 2014 18:26:21 +0300
    Subject: [PATCH] Recognize MJPEG at probing
    
    Based on patch from Carl Eugen Hoyos
    ---
     libavformat/rawdec.c | 16 +++++++++++++++-
     1 file changed, 15 insertions(+), 1 deletion(-)
    
    diff --git a/libavformat/rawdec.c b/libavformat/rawdec.c
    index 9b2aa35..cde5f79 100644
    a b AVInputFormat ff_latm_demuxer = {  
    134134};
    135135#endif
    136136
     137static int mjpeg_probe(AVProbeData *p)
     138{
     139    static const char ct_jpeg[] = "\r\nContent-Type: image/jpeg\r\n\r\n";
     140
     141    /* Detect HTTP-streamed MJPEG in multipart/x-mixed-replace content-type */
     142    if (memmem(p->buf, p->buf_size, ct_jpeg, sizeof(ct_jpeg) - 1))
     143        return AVPROBE_SCORE_MAX;
     144
     145    if (AV_RB16(p->buf) == 0xffd8)
     146        return AVPROBE_SCORE_EXTENSION / 2;
     147
     148    return 0;
     149}
     150
    137151#if CONFIG_MJPEG_DEMUXER
    138 FF_DEF_RAWVIDEO_DEMUXER(mjpeg, "raw MJPEG video", NULL, "mjpg,mjpeg,mpo", AV_CODEC_ID_MJPEG)
     152FF_DEF_RAWVIDEO_DEMUXER(mjpeg, "raw MJPEG video", mjpeg_probe, "mjpg,mjpeg,mpo", AV_CODEC_ID_MJPEG)
    139153#endif
    140154
    141155#if CONFIG_MLP_DEMUXER