Mercurial > libavformat.hg
annotate dv.h @ 1500:2ac9e4f39a67 libavformat
index less seeking in O(log n) time
author | michael |
---|---|
date | Tue, 14 Nov 2006 13:19:51 +0000 |
parents | 0899bfe4105c |
children | aedce96c28ff |
rev | line source |
---|---|
885 | 1 /* |
2 * General DV muxer/demuxer | |
933 | 3 * Copyright (c) 2003 Roman Shaposhnik |
262
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
4 * |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
5 * Many thanks to Dan Dennedy <dan@dennedy.org> for providing wealth |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
6 * of DV technical info. |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
7 * |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
8 * Raw DV format |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
9 * Copyright (c) 2002 Fabrice Bellard. |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
10 * |
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
933
diff
changeset
|
11 * This file is part of FFmpeg. |
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
933
diff
changeset
|
12 * |
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
933
diff
changeset
|
13 * FFmpeg is free software; you can redistribute it and/or |
262
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
14 * modify it under the terms of the GNU Lesser General Public |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
15 * License as published by the Free Software Foundation; either |
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
933
diff
changeset
|
16 * version 2.1 of the License, or (at your option) any later version. |
262
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
17 * |
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
933
diff
changeset
|
18 * FFmpeg is distributed in the hope that it will be useful, |
262
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
21 * Lesser General Public License for more details. |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
22 * |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
23 * You should have received a copy of the GNU Lesser General Public |
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
933
diff
changeset
|
24 * License along with FFmpeg; if not, write to the Free Software |
896
edbe5c3717f9
Update licensing information: The FSF changed postal address.
diego
parents:
885
diff
changeset
|
25 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
262
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
26 */ |
f174d9c00bce
* DV handling was streamlined for both muxing/demuxing and
romansh
parents:
diff
changeset
|
27 |
296
252946de6d3f
* DV demuxer is now capable of decoding auxilary audio stream. So,
romansh
parents:
262
diff
changeset
|
28 typedef struct DVDemuxContext DVDemuxContext; |
252946de6d3f
* DV demuxer is now capable of decoding auxilary audio stream. So,
romansh
parents:
262
diff
changeset
|
29 DVDemuxContext* dv_init_demux(AVFormatContext* s); |
252946de6d3f
* DV demuxer is now capable of decoding auxilary audio stream. So,
romansh
parents:
262
diff
changeset
|
30 int dv_get_packet(DVDemuxContext*, AVPacket *); |
252946de6d3f
* DV demuxer is now capable of decoding auxilary audio stream. So,
romansh
parents:
262
diff
changeset
|
31 int dv_produce_packet(DVDemuxContext*, AVPacket*, uint8_t*, int); |
562
bf3231dd1d7c
* static allocation for audio packets. This will make it a little bit
romansh
parents:
296
diff
changeset
|
32 void dv_flush_audio_packets(DVDemuxContext*); |
296
252946de6d3f
* DV demuxer is now capable of decoding auxilary audio stream. So,
romansh
parents:
262
diff
changeset
|
33 |
252946de6d3f
* DV demuxer is now capable of decoding auxilary audio stream. So,
romansh
parents:
262
diff
changeset
|
34 typedef struct DVMuxContext DVMuxContext; |
252946de6d3f
* DV demuxer is now capable of decoding auxilary audio stream. So,
romansh
parents:
262
diff
changeset
|
35 DVMuxContext* dv_init_mux(AVFormatContext* s); |
252946de6d3f
* DV demuxer is now capable of decoding auxilary audio stream. So,
romansh
parents:
262
diff
changeset
|
36 int dv_assemble_frame(DVMuxContext *c, AVStream*, const uint8_t*, int, uint8_t**); |
252946de6d3f
* DV demuxer is now capable of decoding auxilary audio stream. So,
romansh
parents:
262
diff
changeset
|
37 void dv_delete_mux(DVMuxContext*); |