1 /*
2 * Delphine Software International CIN File Demuxer
3 * Copyright (c) 2006 Gregory Montoir (cyx@users.sourceforge.net)
4 *
5 * This file is part of FFmpeg.
6 *
7 * FFmpeg is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * FFmpeg is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with FFmpeg; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 */
21
22 /**
23 * @file
24 * Delphine Software International CIN file demuxer
25 */
26
32
33
43
51
61
62
64 {
65 /* header starts with this special marker */
67 return 0;
68
69 /* for accuracy, check some header field values */
71 return 0;
72
74 }
75
78
81
89
92
93 return 0;
94 }
95
97 {
98 int rc;
103
105 if (rc)
106 return rc;
107
111
112 /* initialize the video decoder stream */
114 if (!st)
116
124
125 /* initialize the audio decoder stream */
127 if (!st)
129
140
141 return 0;
142 }
143
146
152
155
158
159 return 0;
160 }
161
163 {
167 int rc, palette_type, pkt_size;
169
172 if (rc)
173 return rc;
174
177 palette_type = 1;
178 } else {
179 palette_type = 0;
180 }
181
182 /* palette and video packet */
184
186
188 if (ret < 0)
190
193
194 pkt->
data[0] = palette_type;
198
200 if (ret < 0) {
203 }
204 if (ret < pkt_size)
206
207 /* sound buffer will be processed on next read_packet() call */
209 return 0;
210 }
211
212 /* audio packet */
214 if (ret < 0)
216
222 return 0;
223 }
224
232 };