29 #define SEQ_START_CODE 0x000001b3
30 #define GOP_START_CODE 0x000001b8
31 #define PICTURE_START_CODE 0x00000100
32 #define SLICE_START_CODE 0x00000101
33 #define PACK_START_CODE 0x000001ba
34 #define VIDEO_ID 0x000001e0
35 #define AUDIO_ID 0x000001c0
40 int pic=0, seq=0, slice=0, pspack=0, vpes=0, apes=0, res=0, sicle=0;
47 if ((code & 0xffffff00) == 0x100) {
50 if (!(ptr[3 + 1 + 2] & 0x20))
61 if (
AV_RB24(ptr + j + 9) & 0xFFFFFE)
72 if (code >= last) slice++;
79 if ((code & 0x1f0) ==
VIDEO_ID) vpes++;
80 else if((code & 0x1e0) ==
AUDIO_ID) apes++;
84 if(seq && seq*9<=pic*10 && pic*9<=slice*10 && !pspack && !apes && !res && slice > sicle) {
#define FF_DEF_RAWVIDEO_DEMUXER(shortname, longname, probe, ext, id)
#define PICTURE_START_CODE
static av_cold int end(AVCodecContext *avctx)
const uint8_t * avpriv_find_start_code(const uint8_t *p, const uint8_t *end, uint32_t *state)
static int mpegvideo_probe(AVProbeData *p)
int buf_size
Size of buf except extra allocated bytes.
unsigned char * buf
Buffer must have AVPROBE_PADDING_SIZE of extra allocated bytes filled with zero.
uint64_t_TMPL AV_WL64 unsigned int_TMPL AV_WL32 unsigned int_TMPL AV_WL24 unsigned int_TMPL AV_WL16 uint64_t_TMPL AV_WB64 unsigned int_TMPL AV_WB32 unsigned int_TMPL AV_RB24
This structure contains the data a format has to probe a file.
common internal api header.