]> git.sesse.net Git - ffmpeg/commitdiff
Merge commit '24e87f7f425a52b1e69661dcb2fbe0555a76f30b'
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 9 Aug 2014 23:36:21 +0000 (01:36 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 9 Aug 2014 23:36:21 +0000 (01:36 +0200)
* commit '24e87f7f425a52b1e69661dcb2fbe0555a76f30b':
  Remove obsolete FF_API_PROBE_MIME cruft.

Conflicts:
libavformat/avformat.h
libavformat/format.c
libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavformat/avformat.h
libavformat/format.c
libavformat/version.h

index 7551f7b54827810fedf759590a559d2fd192f5da,2948d40490c266158a22f0c2126d40308f4466ff..9a7672f9e0ba1d83530e6d759d25a81ce67ccbc4
@@@ -393,14 -391,9 +393,12 @@@ typedef struct AVProbeData 
      const char *filename;
      unsigned char *buf; /**< Buffer must have AVPROBE_PADDING_SIZE of extra allocated bytes filled with zero. */
      int buf_size;       /**< Size of buf except extra allocated bytes */
- #if FF_API_PROBE_MIME
      uint8_t *mime_type; /**< mime_type, when known. */
- #endif
  } AVProbeData;
  
 +#define AVPROBE_SCORE_RETRY (AVPROBE_SCORE_MAX/4)
 +#define AVPROBE_SCORE_STREAM_RETRY (AVPROBE_SCORE_MAX/4-1)
 +
  #define AVPROBE_SCORE_EXTENSION  50 ///< score for file extension
  #define AVPROBE_SCORE_MIME       75 ///< score for file mime type
  #define AVPROBE_SCORE_MAX       100 ///< maximum score
index 1c25d6b933cb72c6c55e1392cb0a03b4f9e0771f,bdc90446fadf996d2f28b5320e42850e34e21422..999e8216da65724354514210c0dc1e0330e599ab
@@@ -216,19 -195,32 +216,17 @@@ AVInputFormat *av_probe_input_format3(A
              if (av_match_ext(lpd.filename, fmt1->extensions))
                  score = AVPROBE_SCORE_EXTENSION;
          }
- #if FF_API_PROBE_MIME
          if (av_match_name(lpd.mime_type, fmt1->mime_type))
              score = FFMAX(score, AVPROBE_SCORE_EXTENSION);
- #endif
 -        if (score > *score_max) {
 -            *score_max = score;
 -            fmt        = fmt1;
 -        } else if (score == *score_max)
 +        if (score > score_max) {
 +            score_max = score;
 +            fmt       = fmt1;
 +        } else if (score == score_max)
              fmt = NULL;
      }
 -
 -    // A hack for files with huge id3v2 tags -- try to guess by file extension.
 -    if (!fmt && is_opened && *score_max < AVPROBE_SCORE_EXTENSION / 2) {
 -        while ((fmt = av_iformat_next(fmt)))
 -            if (fmt->extensions &&
 -                av_match_ext(lpd.filename, fmt->extensions)) {
 -                *score_max = AVPROBE_SCORE_EXTENSION / 2;
 -                break;
 -            }
 -    }
 -
 -    if (!fmt && id3 && *score_max < AVPROBE_SCORE_EXTENSION / 2 - 1) {
 -        while ((fmt = av_iformat_next(fmt)))
 -            if (fmt->extensions && av_match_ext("mp3", fmt->extensions)) {
 -                *score_max = AVPROBE_SCORE_EXTENSION / 2 - 1;
 -                break;
 -            }
 -    }
 +    if (nodat == 1)
 +        score_max = FFMIN(AVPROBE_SCORE_EXTENSION / 2 - 1, score_max);
 +    *score_ret = score_max;
  
      return fmt;
  }
@@@ -271,19 -252,10 +269,18 @@@ int av_probe_input_buffer2(AVIOContext 
  
      if (offset >= max_probe_size)
          return AVERROR(EINVAL);
 -    avio_skip(pb, offset);
 -    max_probe_size -= offset;
 +
- #if FF_API_PROBE_MIME
      if (pb->av_class)
          av_opt_get(pb, "mime_type", AV_OPT_SEARCH_CHILDREN, &pd.mime_type);
- #else
++#if 0
 +    if (!*fmt && pb->av_class && av_opt_get(pb, "mime_type", AV_OPT_SEARCH_CHILDREN, &mime_type) >= 0 && mime_type) {
 +        if (!av_strcasecmp(mime_type, "audio/aacp")) {
 +            *fmt = av_find_input_format("aac");
 +        }
 +        av_freep(&mime_type);
 +    }
 +#endif
 +
      for (probe_size = PROBE_BUF_MIN; probe_size <= max_probe_size && !*fmt;
           probe_size = FFMIN(probe_size << 1,
                              FFMAX(max_probe_size, probe_size + 1))) {
  
  fail:
      /* Rewind. Reuse probe buffer to avoid seeking. */
 -    if (ret < 0 ||
 -        (ret = ffio_rewind_with_probe_data(pb, buf, pd.buf_size)) < 0) {
 -        av_free(buf);
 -    }
 +    ret2 = ffio_rewind_with_probe_data(pb, &buf, buf_offset);
 +    if (ret >= 0)
 +        ret = ret2;
 +
- #if FF_API_PROBE_MIME
      av_free(pd.mime_type);
- #endif
 -    return ret;
 +    return ret < 0 ? ret : score;
 +}
 +
 +int av_probe_input_buffer(AVIOContext *pb, AVInputFormat **fmt,
 +                          const char *filename, void *logctx,
 +                          unsigned int offset, unsigned int max_probe_size)
 +{
 +    int ret = av_probe_input_buffer2(pb, fmt, filename, logctx, offset, max_probe_size);
 +    return ret < 0 ? ret : 0;
  }
index c40c0c9819b72d3391907023444463a4c61bab94,5eb9249c781ca1331dd63ca1cc4560487c5419bf..9686a58cccb68eb2bff28495dceaa76b96c6f49a
  #ifndef FF_API_LAVF_CODEC_TB
  #define FF_API_LAVF_CODEC_TB            (LIBAVFORMAT_VERSION_MAJOR < 57)
  #endif
 +#ifndef FF_API_URL_FEOF
 +#define FF_API_URL_FEOF                 (LIBAVFORMAT_VERSION_MAJOR < 57)
 +#endif
  
- #ifndef FF_API_PROBE_MIME
- #define FF_API_PROBE_MIME               (LIBAVFORMAT_VERSION_MAJOR > 55)
- #endif
 +#ifndef FF_API_ALLOC_OUTPUT_CONTEXT
 +#define FF_API_ALLOC_OUTPUT_CONTEXT    (LIBAVFORMAT_VERSION_MAJOR < 56)
 +#endif
 +#ifndef FF_API_FORMAT_PARAMETERS
 +#define FF_API_FORMAT_PARAMETERS       (LIBAVFORMAT_VERSION_MAJOR < 56)
 +#endif
 +#ifndef FF_API_NEW_STREAM
 +#define FF_API_NEW_STREAM              (LIBAVFORMAT_VERSION_MAJOR < 56)
 +#endif
 +#ifndef FF_API_SET_PTS_INFO
 +#define FF_API_SET_PTS_INFO            (LIBAVFORMAT_VERSION_MAJOR < 56)
 +#endif
 +#ifndef FF_API_CLOSE_INPUT_FILE
 +#define FF_API_CLOSE_INPUT_FILE        (LIBAVFORMAT_VERSION_MAJOR < 56)
 +#endif
 +#ifndef FF_API_READ_PACKET
 +#define FF_API_READ_PACKET             (LIBAVFORMAT_VERSION_MAJOR < 56)
 +#endif
 +#ifndef FF_API_ASS_SSA
 +#define FF_API_ASS_SSA                 (LIBAVFORMAT_VERSION_MAJOR < 56)
 +#endif
 +#ifndef FF_API_R_FRAME_RATE
 +#define FF_API_R_FRAME_RATE            1
 +#endif
  #endif /* AVFORMAT_VERSION_H */