#define STREAM_TYPE_AUDIO_AC3 0x81
#define STREAM_TYPE_AUDIO_DTS 0x8a
-typedef struct MpegTSContext MpegTSContext;
-
-MpegTSContext *mpegts_parse_open(AVFormatContext *s);
-int mpegts_parse_packet(MpegTSContext *ts, AVPacket *pkt,
- const uint8_t *buf, int len);
-void mpegts_parse_close(MpegTSContext *ts);
-
#endif /* AVFORMAT_MPEGTS_H */
data, q - data);
}
+
+
static void mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
{
// MpegTSWrite *ts = s->priv_data;
stream_type = STREAM_TYPE_AUDIO_AAC;
break;
case CODEC_ID_AC3:
- stream_type = STREAM_TYPE_AUDIO_AC3;
+ if (!strcmp(s->oformat->name, "dvb"))
+ stream_type = STREAM_TYPE_PRIVATE_DATA;
+ else
+ stream_type = STREAM_TYPE_AUDIO_AC3;
break;
default:
stream_type = STREAM_TYPE_PRIVATE_DATA;
mpegts_write_packet,
mpegts_write_end,
};
+
+
+AVOutputFormat dvb_muxer = {
+ "dvb",
+ NULL_IF_CONFIG_SMALL("DVB style MPEG-2 transport stream format"),
+ "video/x-mpegts",
+ "dvb",
+ sizeof(MpegTSWrite),
+ CODEC_ID_MP2,
+ CODEC_ID_MPEG2VIDEO,
+ mpegts_write_header,
+ mpegts_write_packet,
+ mpegts_write_end,
+};