Annotation of margi2/streams.h, revision 1.1.1.1

1.1       cvs         1: /* 
                      2:     streams.h
                      3: 
                      4:     Copyright (C) Christian Wolff for convergence integrated media.
                      5: 
                      6:     This program is free software; you can redistribute it and/or modify
                      7:     it under the terms of the GNU General Public License as published by
                      8:     the Free Software Foundation; either version 2 of the License, or
                      9:     (at your option) any later version.
                     10: 
                     11:     This program is distributed in the hope that it will be useful,
                     12:     but WITHOUT ANY WARRANTY; without even the implied warranty of
                     13:     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     14:     GNU General Public License for more details.
                     15: 
                     16:     You should have received a copy of the GNU General Public License
                     17:     along with this program; if not, write to the Free Software
                     18:     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
                     19: */
                     20: 
                     21: #ifndef CVDV_STREAMS_H
                     22: #define CVDV_STREAMS_H
                     23: 
                     24: #include "cardbase.h"
                     25: 
                     26: // Frees allocated channel buffers
                     27: int DecoderKillChannelBuffers(struct cvdv_cards *card);
                     28: 
                     29: // Allocates channel buffers
                     30: // All sizes in bytes, preferably multiple of 256 (will be rounded up otherwise)
                     31: int DecoderSetChannelBuffers(struct cvdv_cards *card, int VideoES,     // Video ES Channel Buffer size, e.g. 229376 byte for NTSC
                     32:                             int AudioES,       // Audio ES Channel Buffer size, 4096 byte
                     33:                             int VideoPES,      // Video PES Header / SPU Channel Buffer size, 512 byte
                     34:                             int DataDump,      // Data Dump Channel Buffer size, e.g. 80896 byte
                     35:                             int AudioPES,      // Audio PES Header / System Channel Buffer size, 512 byte
                     36:                             int NaviBank);     // Navi Bank Channel Buffer size, 2048 byte
                     37: 
                     38: //int DecoderReadFifo
                     39: 
                     40: int DecoderUnPrepare(struct cvdv_cards *card);
                     41: 
                     42: void DecoderPrepare(struct cvdv_cards *card);
                     43: 
                     44: // Selects audio type MPEG and sets stream ID's
                     45: // AID:     -1=all MPEG, Audio Stream ID: 0..31
                     46: // AExt:    -1=unused, Audio Stream Extension ID: 0..31, only used if AType=5
                     47: void DecoderSelectAudioID(struct cvdv_cards *card);
                     48: 
                     49: // AHeader: 0=No Headers, 1=first PTS/DTS header, 2=all headers, 3=All with PTS/DTS
                     50: // AType:   0=disable audio, 1=MPEG ID (MPEG 1), 2=Lin.PCM ID, 3=AC3 ID, 4=all MPEG (use only, if just one MPEG audio stream), 5=MPEG multichannel ID (MPEG 2)
                     51: // AID:     -1=all MPEG, Audio Stream ID: 0..31
                     52: // AExt:    -1=unused, Audio Stream Extension ID: 0..31, only used if AType=5
                     53: // IEC956:  0:MPEG/AC3 data on digital out 1:IEC956 data on digital S/PDIF out
                     54: void DecoderPrepareAudio(struct cvdv_cards *card);
                     55: 
                     56: // VHeader: -1=disable Video, 0=No Headers, 1=first PTS/DTS header, 2=all headers, 3=All with PTS/DTS
                     57: // VID: -1=all MPEG, 0..15=Video Stream ID
                     58: void DecoderPrepareVideo(struct cvdv_cards *card);
                     59: 
                     60: // Prepare Decoder for Elementary Streams, Disable Preparser
                     61: int DecoderPrepareES(struct cvdv_cards *card);
                     62: 
                     63: // Prepare Decoder for Packetised Elementary Streams, set parameters of Preparser
                     64: int DecoderPreparePES(struct cvdv_cards *card);
                     65: 
                     66: 
                     67: // Prepare Decoder for MPEG 1 Systems Streams or MPEG 2 Program Streams
                     68: // SPUID: -1:ignore, 0...15 SPU Substream ID
                     69: // DataDump: 0:disable data dump stream, 1:enable data dump stream
                     70: // PackHeader: 0:write no headers, 1:write one header, 2:write all headers, 3:always discard
                     71: // SysHeaader: 0:always discard, 1:write one header, 2:write all headers, 3:always discard
                     72: // DSIHeader: 0:write no DSI or PCI headers, 3:write DSI and PCI headers + packets
                     73: // DVD: 0: normal MPEG-2 data, 1: DVD stream with navi pack data
                     74: int DecoderPreparePS(struct cvdv_cards *card,
                     75:                     int SPUID, int DataDump,
                     76:                     int PackHeader, int SysHeader, int DSIHeader,
                     77:                     int DVD);
                     78: 
                     79: #endif                         /* CVDV_STREAMS_H */

LinuxTV legacy CVS <linuxtv.org/cvs>