comparison mtv.c @ 4069:52a514815c9a libavformat

COSMETICS
author reynaldo
date Sun, 07 Dec 2008 01:53:31 +0000
parents 6eb27e4e1e83
children 49c1d3b27727
comparison
equal deleted inserted replaced
4068:d8ef0a1e3f45 4069:52a514815c9a
34 #define VIDEO_SID 0 34 #define VIDEO_SID 0
35 #define AUDIO_SID 1 35 #define AUDIO_SID 1
36 36
37 typedef struct MTVDemuxContext { 37 typedef struct MTVDemuxContext {
38 38
39 unsigned int file_size; ///< filesize, not always right 39 unsigned int file_size; ///< filesize, not always right
40 unsigned int segments; ///< number of 512 byte segments 40 unsigned int segments; ///< number of 512 byte segments
41 unsigned int audio_identifier; ///< 'MP3' on all files I have seen 41 unsigned int audio_identifier; ///< 'MP3' on all files I have seen
42 unsigned int audio_br; ///< bitrate of audio chanel (mp3) 42 unsigned int audio_br; ///< bitrate of audio chanel (mp3)
43 unsigned int img_colorfmt; ///< frame colorfmt rgb 565/555 43 unsigned int img_colorfmt; ///< frame colorfmt rgb 565/555
44 unsigned int img_bpp; ///< frame bits per pixel 44 unsigned int img_bpp; ///< frame bits per pixel
45 unsigned int img_width; // 45 unsigned int img_width; //
46 unsigned int img_height; // 46 unsigned int img_height; //
47 unsigned int img_segment_size; ///< size of image segment 47 unsigned int img_segment_size; ///< size of image segment
48 unsigned int video_fps; // 48 unsigned int video_fps; //
49 unsigned int full_segment_size; 49 unsigned int full_segment_size;
50 50
51 } MTVDemuxContext; 51 } MTVDemuxContext;
52 52
53 static int mtv_probe(AVProbeData *p) 53 static int mtv_probe(AVProbeData *p)
54 { 54 {
55 /* Magic is 'AMV' */ 55 /* Magic is 'AMV' */
56
57 if(*(p->buf) != 'A' || *(p->buf+1) != 'M' || *(p->buf+2) != 'V') 56 if(*(p->buf) != 'A' || *(p->buf+1) != 'M' || *(p->buf+2) != 'V')
58 return 0; 57 return 0;
59 58
60 return AVPROBE_SCORE_MAX; 59 return AVPROBE_SCORE_MAX;
61 } 60 }
62 61
63 static int mtv_read_header(AVFormatContext *s, AVFormatParameters *ap) 62 static int mtv_read_header(AVFormatContext *s, AVFormatParameters *ap)
64 { 63 {
65 MTVDemuxContext *mtv = s->priv_data; 64 MTVDemuxContext *mtv = s->priv_data;
66 ByteIOContext *pb = s->pb; 65 ByteIOContext *pb = s->pb;
67 AVStream *st; 66 AVStream *st;
68 unsigned int audio_subsegments; 67 unsigned int audio_subsegments;
69
70 68
71 url_fskip(pb, 3); 69 url_fskip(pb, 3);
72 mtv->file_size = get_le32(pb); 70 mtv->file_size = get_le32(pb);
73 mtv->segments = get_le32(pb); 71 mtv->segments = get_le32(pb);
74 url_fskip(pb, 32); 72 url_fskip(pb, 32);