Mercurial > libavcodec.hg
annotate tiertexseqv.c @ 4166:eced83504436 libavcodec
mp3 header (de)compression bitstream filter
this will make mp3 frames 4 bytes smaller, it will not give you binary identical mp3 files, but it will give you mp3 files which decode to binary identical output
this will only work in containers providing at least packet size, sample_rate and number of channels
bugreports about mp3 files for which this fails are welcome
and this is experimental (dont expect compatibility and dont even expect to be able to decompress what you compressed, hell dont even expect this to work without editing the source a little)
author | michael |
---|---|
date | Fri, 10 Nov 2006 01:41:53 +0000 |
parents | 986d6651a452 |
children | 66ef3690d108 |
rev | line source |
---|---|
4006
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
1 /* |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
2 * Tiertex Limited SEQ Video Decoder |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
3 * Copyright (c) 2006 Gregory Montoir (cyx@users.sourceforge.net) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
4 * |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
5 * This file is part of FFmpeg. |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
6 * |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
7 * FFmpeg is free software; you can redistribute it and/or |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
8 * modify it under the terms of the GNU Lesser General Public |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
9 * License as published by the Free Software Foundation; either |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
10 * version 2.1 of the License, or (at your option) any later version. |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
11 * |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
12 * FFmpeg is distributed in the hope that it will be useful, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
15 * Lesser General Public License for more details. |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
16 * |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
17 * You should have received a copy of the GNU Lesser General Public |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
18 * License along with FFmpeg; if not, write to the Free Software |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
20 */ |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
21 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
22 /** |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
23 * @file tiertexseqv.c |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
24 * Tiertex Limited SEQ video decoder |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
25 */ |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
26 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
27 #include "avcodec.h" |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
28 #include "common.h" |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
29 #define ALT_BITSTREAM_READER_LE |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
30 #include "bitstream.h" |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
31 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
32 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
33 typedef struct SeqVideoContext { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
34 AVCodecContext *avctx; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
35 AVFrame frame; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
36 unsigned int palette[256]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
37 unsigned char block[8 * 8]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
38 } SeqVideoContext; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
39 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
40 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
41 static unsigned char *seq_unpack_rle_block(unsigned char *src, unsigned char *dst, int dst_size) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
42 { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
43 int i, len, sz; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
44 GetBitContext gb; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
45 int code_table[64]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
46 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
47 /* get the rle codes (at most 64 bytes) */ |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
48 init_get_bits(&gb, src, 64 * 8); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
49 for (i = 0, sz = 0; i < 64 && sz < dst_size; i++) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
50 code_table[i] = get_sbits(&gb, 4); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
51 sz += FFABS(code_table[i]); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
52 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
53 src += (get_bits_count(&gb) + 7) / 8; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
54 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
55 /* do the rle unpacking */ |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
56 for (i = 0; i < 64 && dst_size > 0; i++) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
57 len = code_table[i]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
58 if (len < 0) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
59 len = -len; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
60 memset(dst, *src++, FFMIN(len, dst_size)); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
61 } else { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
62 memcpy(dst, src, FFMIN(len, dst_size)); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
63 src += len; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
64 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
65 dst += len; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
66 dst_size -= len; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
67 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
68 return src; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
69 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
70 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
71 static unsigned char *seq_decode_op1(SeqVideoContext *seq, unsigned char *src, unsigned char *dst) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
72 { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
73 unsigned char *color_table; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
74 int b, i, len, bits; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
75 GetBitContext gb; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
76 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
77 len = *src++; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
78 if (len & 0x80) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
79 switch (len & 3) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
80 case 1: |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
81 src = seq_unpack_rle_block(src, seq->block, sizeof(seq->block)); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
82 for (b = 0; b < 8; b++) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
83 memcpy(dst, &seq->block[b * 8], 8); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
84 dst += seq->frame.linesize[0]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
85 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
86 break; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
87 case 2: |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
88 src = seq_unpack_rle_block(src, seq->block, sizeof(seq->block)); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
89 for (i = 0; i < 8; i++) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
90 for (b = 0; b < 8; b++) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
91 dst[b * seq->frame.linesize[0]] = seq->block[i * 8 + b]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
92 ++dst; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
93 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
94 break; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
95 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
96 } else { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
97 color_table = src; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
98 src += len; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
99 bits = ff_log2_tab[len - 1] + 1; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
100 init_get_bits(&gb, src, bits * 8 * 8); src += bits * 8; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
101 for (b = 0; b < 8; b++) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
102 for (i = 0; i < 8; i++) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
103 dst[i] = color_table[get_bits(&gb, bits)]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
104 dst += seq->frame.linesize[0]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
105 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
106 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
107 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
108 return src; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
109 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
110 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
111 static unsigned char *seq_decode_op2(SeqVideoContext *seq, unsigned char *src, unsigned char *dst) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
112 { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
113 int i; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
114 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
115 for (i = 0; i < 8; i++) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
116 memcpy(dst, src, 8); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
117 src += 8; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
118 dst += seq->frame.linesize[0]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
119 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
120 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
121 return src; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
122 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
123 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
124 static unsigned char *seq_decode_op3(SeqVideoContext *seq, unsigned char *src, unsigned char *dst) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
125 { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
126 int pos, offset; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
127 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
128 do { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
129 pos = *src++; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
130 offset = ((pos >> 3) & 7) * seq->frame.linesize[0] + (pos & 7); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
131 dst[offset] = *src++; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
132 } while (!(pos & 0x80)); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
133 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
134 return src; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
135 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
136 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
137 static void seqvideo_decode(SeqVideoContext *seq, unsigned char *data, int data_size) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
138 { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
139 GetBitContext gb; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
140 int flags, i, j, x, y, op; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
141 unsigned char c[3]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
142 unsigned char *dst; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
143 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
144 flags = *data++; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
145 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
146 if (flags & 1) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
147 for (i = 0; i < 256; i++) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
148 for (j = 0; j < 3; j++, data++) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
149 c[j] = (*data << 2) | (*data >> 4); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
150 seq->palette[i] = (c[0] << 16) | (c[1] << 8) | c[2]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
151 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
152 memcpy(seq->frame.data[1], seq->palette, sizeof(seq->palette)); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
153 seq->frame.palette_has_changed = 1; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
154 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
155 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
156 if (flags & 2) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
157 init_get_bits(&gb, data, 128 * 8); data += 128; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
158 for (y = 0; y < 128; y += 8) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
159 for (x = 0; x < 256; x += 8) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
160 dst = &seq->frame.data[0][y * seq->frame.linesize[0] + x]; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
161 op = get_bits(&gb, 2); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
162 switch (op) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
163 case 1: |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
164 data = seq_decode_op1(seq, data, dst); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
165 break; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
166 case 2: |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
167 data = seq_decode_op2(seq, data, dst); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
168 break; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
169 case 3: |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
170 data = seq_decode_op3(seq, data, dst); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
171 break; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
172 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
173 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
174 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
175 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
176 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
177 static int seqvideo_decode_init(AVCodecContext *avctx) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
178 { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
179 SeqVideoContext *seq = (SeqVideoContext *)avctx->priv_data; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
180 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
181 seq->avctx = avctx; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
182 avctx->pix_fmt = PIX_FMT_PAL8; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
183 avctx->has_b_frames = 0; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
184 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
185 seq->frame.data[0] = NULL; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
186 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
187 return 0; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
188 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
189 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
190 static int seqvideo_decode_frame(AVCodecContext *avctx, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
191 void *data, int *data_size, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
192 uint8_t *buf, int buf_size) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
193 { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
194 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
195 SeqVideoContext *seq = (SeqVideoContext *)avctx->priv_data; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
196 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
197 seq->frame.reference = 1; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
198 seq->frame.buffer_hints = FF_BUFFER_HINTS_VALID | FF_BUFFER_HINTS_PRESERVE | FF_BUFFER_HINTS_REUSABLE; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
199 if (avctx->reget_buffer(avctx, &seq->frame)) { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
200 av_log(seq->avctx, AV_LOG_ERROR, "tiertexseqvideo: reget_buffer() failed\n"); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
201 return -1; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
202 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
203 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
204 seqvideo_decode(seq, buf, buf_size); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
205 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
206 *data_size = sizeof(AVFrame); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
207 *(AVFrame *)data = seq->frame; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
208 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
209 return buf_size; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
210 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
211 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
212 static int seqvideo_decode_end(AVCodecContext *avctx) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
213 { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
214 SeqVideoContext *seq = (SeqVideoContext *)avctx->priv_data; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
215 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
216 if (seq->frame.data[0]) |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
217 avctx->release_buffer(avctx, &seq->frame); |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
218 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
219 return 0; |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
220 } |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
221 |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
222 AVCodec tiertexseqvideo_decoder = { |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
223 "tiertexseqvideo", |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
224 CODEC_TYPE_VIDEO, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
225 CODEC_ID_TIERTEXSEQVIDEO, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
226 sizeof(SeqVideoContext), |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
227 seqvideo_decode_init, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
228 NULL, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
229 seqvideo_decode_end, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
230 seqvideo_decode_frame, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
231 CODEC_CAP_DR1, |
986d6651a452
support for Tiertex .seq files demuxing/video decoding, by Gregory Montoir %cyx A users P sourceforge P net%
bcoudurier
parents:
diff
changeset
|
232 }; |