Mercurial > mplayer.hg
annotate libmpdemux/mpeg_hdr.h @ 29732:eb29792f6a72
Add support for "Forward Uncompressed" decoding via FFmpeg
author | reimar |
---|---|
date | Wed, 14 Oct 2009 19:19:20 +0000 |
parents | d643e4643313 |
children | 7c6145c57bda |
rev | line source |
---|---|
29238
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
1 /* |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
2 * This file is part of MPlayer. |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
3 * |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
4 * MPlayer is free software; you can redistribute it and/or modify |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
5 * it under the terms of the GNU General Public License as published by |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
6 * the Free Software Foundation; either version 2 of the License, or |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
7 * (at your option) any later version. |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
8 * |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
9 * MPlayer is distributed in the hope that it will be useful, |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
12 * GNU General Public License for more details. |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
13 * |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
14 * You should have received a copy of the GNU General Public License along |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
15 * with MPlayer; if not, write to the Free Software Foundation, Inc., |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
17 */ |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
26029
diff
changeset
|
18 |
26029 | 19 #ifndef MPLAYER_MPEG_HDR_H |
20 #define MPLAYER_MPEG_HDR_H | |
2565 | 21 |
22 typedef struct { | |
23 // video info: | |
24 int mpeg1; // 0=mpeg2 1=mpeg1 | |
25 int display_picture_width; | |
26 int display_picture_height; | |
27 int aspect_ratio_information; | |
28 int frame_rate_code; | |
16184
04dd5945fab8
100l to whoever wrote this crap using 1/10000 units. it caused framerates to get trashed from 30000/1001 to 2997/100, etc.!
rfelker
parents:
15217
diff
changeset
|
29 float fps; |
2565 | 30 int bitrate; // 0x3FFFF==VBR |
31 // timing: | |
32 int picture_structure; | |
33 int progressive_sequence; | |
34 int repeat_first_field; | |
35 int progressive_frame; | |
36 int top_field_first; | |
37 int display_time; // secs*100 | |
14477
92553e3c8f01
automatic fps calculation for mpeg4 in raw stream/mpeg-ts
nicodvb
parents:
2565
diff
changeset
|
38 //the following are for mpeg4 |
15217 | 39 unsigned int timeinc_resolution, timeinc_bits, timeinc_unit; |
14477
92553e3c8f01
automatic fps calculation for mpeg4 in raw stream/mpeg-ts
nicodvb
parents:
2565
diff
changeset
|
40 int picture_type; |
2565 | 41 } mp_mpeg_header_t; |
42 | |
24784
328d1b36952a
Mark constant argument of mp_header_process_sequence_header as such.
diego
parents:
21947
diff
changeset
|
43 int mp_header_process_sequence_header (mp_mpeg_header_t * picture, const unsigned char * buffer); |
2565 | 44 int mp_header_process_extension (mp_mpeg_header_t * picture, unsigned char * buffer); |
18398
a1375e440e92
COSMETICS: moved code to parse mpeg1/2 A/R to mpeg_hdr.c
nicodvb
parents:
16184
diff
changeset
|
45 float mpeg12_aspect_info(mp_mpeg_header_t *picture); |
14477
92553e3c8f01
automatic fps calculation for mpeg4 in raw stream/mpeg-ts
nicodvb
parents:
2565
diff
changeset
|
46 int mp4_header_process_vol(mp_mpeg_header_t * picture, unsigned char * buffer); |
14887 | 47 void mp4_header_process_vop(mp_mpeg_header_t * picture, unsigned char * buffer); |
14798
0bd50330e688
framerate autodetection for H264 in raw/ts streams
nicodvb
parents:
14477
diff
changeset
|
48 int h264_parse_sps(mp_mpeg_header_t * picture, unsigned char * buf, int len); |
21947 | 49 int mp_vc1_decode_sequence_header(mp_mpeg_header_t * picture, unsigned char * buf, int len); |
25553
6ac1ece1f9fe
Add multiple inclusion guards to all header files that lack them.
diego
parents:
24784
diff
changeset
|
50 |
26029 | 51 #endif /* MPLAYER_MPEG_HDR_H */ |