linux/drivers/staging/media/av7110/dvb_filter.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 * Copyright (C) 2003 Convergence GmbH
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public License
 * as published by the Free Software Foundation; either version 2.1
 * 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.
 */

#ifndef _DVB_FILTER_H_
#define _DVB_FILTER_H_

#include <linux/slab.h>

#include <media/demux.h>

dvb_filter_pes2ts_cb_t;

struct dvb_filter_pes2ts {};

void dvb_filter_pes2ts_init(struct dvb_filter_pes2ts *p2ts, unsigned short pid,
			    dvb_filter_pes2ts_cb_t *cb, void *priv);

int dvb_filter_pes2ts(struct dvb_filter_pes2ts *p2ts, unsigned char *pes,
		      int len, int payload_start);

#define PROG_STREAM_MAP
#define PRIVATE_STREAM1
#define PADDING_STREAM
#define PRIVATE_STREAM2
#define AUDIO_STREAM_S
#define AUDIO_STREAM_E
#define VIDEO_STREAM_S
#define VIDEO_STREAM_E
#define ECM_STREAM
#define EMM_STREAM
#define DSM_CC_STREAM
#define ISO13522_STREAM
#define PROG_STREAM_DIR

#define DVB_PICTURE_START
#define DVB_USER_START
#define DVB_SEQUENCE_HEADER
#define DVB_SEQUENCE_ERROR
#define DVB_EXTENSION_START
#define DVB_SEQUENCE_END
#define DVB_GOP_START
#define DVB_EXCEPT_SLICE

#define SEQUENCE_EXTENSION
#define SEQUENCE_DISPLAY_EXTENSION
#define PICTURE_CODING_EXTENSION
#define QUANT_MATRIX_EXTENSION
#define PICTURE_DISPLAY_EXTENSION

#define I_FRAME
#define B_FRAME
#define P_FRAME

/* Initialize sequence_data */
#define INIT_HORIZONTAL_SIZE
#define INIT_VERTICAL_SIZE
#define INIT_ASPECT_RATIO
#define INIT_FRAME_RATE
#define INIT_DISP_HORIZONTAL_SIZE
#define INIT_DISP_VERTICAL_SIZE

//flags2
#define PTS_DTS_FLAGS
#define ESCR_FLAG
#define ES_RATE_FLAG
#define DSM_TRICK_FLAG
#define ADD_CPY_FLAG
#define PES_CRC_FLAG
#define PES_EXT_FLAG

//pts_dts flags
#define PTS_ONLY
#define PTS_DTS

#define TS_SIZE
#define TRANS_ERROR
#define PAY_START
#define TRANS_PRIO
#define PID_MASK_HI
//flags
#define TRANS_SCRMBL1
#define TRANS_SCRMBL2
#define ADAPT_FIELD
#define PAYLOAD
#define COUNT_MASK

// adaptation flags
#define DISCON_IND
#define RAND_ACC_IND
#define ES_PRI_IND
#define PCR_FLAG
#define OPCR_FLAG
#define SPLICE_FLAG
#define TRANS_PRIV
#define ADAP_EXT_FLAG

// adaptation extension flags
#define LTW_FLAG
#define PIECE_RATE
#define SEAM_SPLICE

#define MAX_PLENGTH
#define MMAX_PLENGTH

#ifndef IPACKS
#define IPACKS
#endif

struct ipack {};

struct dvb_video_info {};

#define OFF_SIZE
#define FIRST_FIELD
#define SECOND_FIELD
#define VIDEO_FRAME_PICTURE

struct mpg_picture {};

struct dvb_audio_info {};

int dvb_filter_get_ac3info(u8 *mbuf, int count, struct dvb_audio_info *ai, int pr);

#endif