kierank-libmpegts/dvb/dvb.h

71 wiersze
2.8 KiB
C
Czysty Zwykły widok Historia

2010-12-18 15:53:28 +00:00
/*****************************************************************************
* dvb.h : DVB specific headers
*****************************************************************************
* Copyright (C) 2010 Kieran Kunhya
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, USA.
*****************************************************************************/
#ifndef LIBMPEGTS_DVB_H
#define LIBMPEGTS_DVB_H
/* Descriptor Tags */
2011-05-02 18:57:40 +00:00
#define DVB_VBI_DESCRIPTOR_TAG 0x45
#define DVB_VBI_TELETEXT_DESCRIPTOR_TAG 0x46
2011-01-10 14:02:33 +00:00
#define DVB_SERVICE_DESCRIPTOR_TAG 0x48
2010-12-30 14:11:12 +00:00
#define DVB_STREAM_IDENTIFIER_DESCRIPTOR_TAG 0x52
2011-01-10 14:02:33 +00:00
#define DVB_TELETEXT_DESCRIPTOR_TAG 0x56
#define DVB_SUBTITLING_DESCRIPTOR_TAG 0x59
2010-12-18 15:53:28 +00:00
#define DVB_AC3_DESCRIPTOR_TAG 0x6a
2011-01-10 14:02:33 +00:00
#define DVB_ADAPTATION_FIELD_DATA_DESCRIPTOR 0x70
2010-12-18 15:53:28 +00:00
#define DVB_EAC3_DESCRIPTOR_TAG 0x7a
2010-12-30 14:11:12 +00:00
#define DVB_AAC_DESCRIPTOR_TAG 0x7c
2010-12-18 15:53:28 +00:00
/* PIDs */
#define SDT_PID 0x0011
#define EIT_PID 0x0012
#define TDT_PID 0x0014
/* TIDs */
#define SDT_TID 0x42
#define EIT_TID 0x4e
#define TDT_TID 0x70
2010-12-19 18:46:57 +00:00
/* Default Retransmit times (ms) */
#define EIT_MAX_RETRANS_TIME 2000
#define EIT_OTHER_TS_MAX_RETRANS_TIME 10000
2011-01-10 14:02:33 +00:00
#define TDT_MAX_RETRANS_TIME 25000
#define TOT_MAX_RETRANS_TIME 25000
2010-12-19 18:46:57 +00:00
2010-12-18 15:53:28 +00:00
/* Private Data Bytes data_field_tags */
#define ANNOUNCEMENT_SWITCHING_DATA_FIELD 0x01
#define AU_INFORMATION_DATA_FIELD 0x02
#define PVR_ASSIST_INFORMATION_DATA_FIELD 0x03
2011-01-10 14:02:33 +00:00
void write_aac_descriptor( bs_t *s, ts_int_stream_t *stream );
void write_adaptation_field_data_descriptor( bs_t *s, uint8_t identifier );
void write_dvb_subtitling_descriptor( bs_t *s, ts_int_stream_t *stream );
2010-12-18 15:53:28 +00:00
void write_stream_identifier_descriptor( bs_t *s, uint8_t stream_identifier );
2011-05-02 18:57:40 +00:00
void write_teletext_descriptor( bs_t *s, ts_int_stream_t *stream, int vbi );
void write_vbi_descriptor( bs_t *s, ts_int_stream_t *stream );
2011-01-10 14:02:33 +00:00
2011-03-16 01:12:36 +00:00
int write_nit( ts_writer_t *w );
2011-01-10 14:02:33 +00:00
//void write_sdt( ts_writer_t *w );
//void write_eit( ts_writer_t *w );
2011-04-03 21:49:20 +00:00
int write_tdt( ts_writer_t *w );
2011-01-10 14:02:33 +00:00
2010-12-30 14:11:43 +00:00
void write_dvb_au_information( bs_t *s, ts_int_pes_t *pes );
2010-12-18 16:12:41 +00:00
#endif