30 #define DEFAULT_PACKET_SIZE 1024 
   31 #define OVERREAD_SIZE 3 
   77     for (; p < end - 3; p += 4) {
 
   80         if (x & (~(x+0x01010101)) & 0x80808080) {
 
   83             } 
else if (p[1] == 0xff) {
 
   85             } 
else if (p[2] == 0xff) {
 
   87             } 
else if (p[3] == 0xff) {
 
   93     for (; p < 
end; ++p) {
 
   94         if (*p == 0xff) 
return p;
 
  104     unsigned int soi_pos;
 
  109     if (current_pos > current_pos + cache_size)
 
  113                              current_pos + cache_size +
 
  136     uint8_t *startmarker_ptr, *
end, *search_end, marker;
 
  155             if (startmarker_ptr >= search_end - 1 ||
 
  156                 *(startmarker_ptr + 1) != 
EOI) 
break;
 
  159         if (startmarker_ptr != search_end) { 
 
  160             marker = *(startmarker_ptr + 1);
 
  165                 mxg->
soi_ptr = startmarker_ptr;
 
  166             } 
else if (marker == 
EOI) {
 
  191             } 
else if ( (
SOF0 <= marker && marker <= 
SOF15) ||
 
  192                         (
SOS  <= marker && marker <= 
COM) ) {
 
  211                 if (marker == 
APP13 && size >= 16) { 
 
  215                     memcpy(pkt->
data, startmarker_ptr + 16, size - 14);
 
  229                 } 
else if (marker == 
COM && size >= 18 &&
 
  230                            !strncmp(startmarker_ptr + 4, 
"MXF", 3)) {
 
#define AV_LOG_WARNING
Something somehow does not look correct. 
static uint8_t * mxg_find_startmarker(uint8_t *p, uint8_t *end)
enum AVCodecID codec_id
Specific type of the encoded data (the codec used). 
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_WB24 unsigned int_TMPL AV_RB16
MJPEG encoder and decoder. 
static av_cold int end(AVCodecContext *avctx)
AVStream * avformat_new_stream(AVFormatContext *s, const AVCodec *c)
Add a new stream to a media file. 
#define AVERROR_EOF
End of file. 
static av_cold int read_close(AVFormatContext *ctx)
uint64_t channel_layout
Audio only. 
int avio_read(AVIOContext *s, unsigned char *buf, int size)
Read size bytes from AVIOContext into buf. 
int av_new_packet(AVPacket *pkt, int size)
Allocate the payload of a packet and initialize its fields with default values. 
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
enum AVMediaType codec_type
General type of the encoded data. 
static int mxg_read_packet(AVFormatContext *s, AVPacket *pkt)
common internal API header 
int block_align
Audio only. 
audio channel layout utility functions 
#define DEFAULT_PACKET_SIZE
AVInputFormat ff_mxg_demuxer
void * av_fast_realloc(void *ptr, unsigned int *size, size_t min_size)
Reallocate the given buffer if it is not large enough, otherwise do nothing. 
static int mxg_update_cache(AVFormatContext *s, unsigned int cache_size)
static int read_header(FFV1Context *f)
static int read_packet(void *opaque, uint8_t *buf, int buf_size)
AVIOContext * pb
I/O context. 
int error
contains the error code or 0 if no error happened 
int sample_rate
Audio only. 
static int mxg_close(struct AVFormatContext *s)
#define AV_INPUT_BUFFER_PADDING_SIZE
Required number of additionally allocated bytes at the end of the input bitstream for decoding...
void * priv_data
Format private data. 
int bits_per_coded_sample
The number of bits per sample in the codedwords. 
int64_t dts
Decompression timestamp in AVStream->time_base units; the time at which the packet is decompressed...
AVCodecParameters * codecpar
Codec parameters associated with this stream. 
int avio_feof(AVIOContext *s)
feof() equivalent for AVIOContext. 
#define AV_CH_LAYOUT_MONO
This structure stores compressed data. 
int64_t pts
Presentation timestamp in AVStream->time_base units; the time at which the decompressed packet will b...
#define AV_NOPTS_VALUE
Undefined timestamp value. 
static int mxg_read_header(AVFormatContext *s)