MHEG5  15.3.0
source/ics/src/stmr_header.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
00003  * Copyright © 2010 Ocean Blue Software Ltd
00004  *
00005  * This file is part of a DTVKit Software Component
00006  * You are permitted to copy, modify or distribute this file subject to the terms
00007  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
00008  *
00009  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
00010  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
00011  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
00012  *
00013  * If you or your organisation is not a member of DTVKit then you have access
00014  * to this source code outside of the terms of the licence agreement
00015  * and you are expected to delete this and any associated files immediately.
00016  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
00017  *******************************************************************************/
00025 #ifndef _STMR_HEADER_H_
00026 #define _STMR_HEADER_H_
00027 
00028 /*---includes for this file--------------------------------------------------*/
00029 
00030 #include "techtype.h"
00031 #include "httptype.h"
00032 #include "dvb_ics.h"
00033 #include "stmr_util.h"
00034 
00035 /*---Constant and macro definitions for public use---------------------------*/
00036 
00037 /*---Enumerations for public use---------------------------------------------*/
00038 
00039 /*---Global type defs for public use-----------------------------------------*/
00040 
00041 /* Encryption keys for IP streams */
00042 typedef struct
00043 {
00044    U16BIT PID;
00045    U8BIT odd_key[16];
00046    U8BIT even_key[16];
00047    U8BIT iv[16];
00048 } S_ICSPidInfo;
00049 
00050 typedef struct
00051 {
00052    S_ICSPidInfo *pid_info;
00053    U16BIT num_pids;
00054 } S_ICSKeys;
00055 
00056 
00057 /*---Global variable declarations for public use-----------------------------*/
00058 
00059 /*---Global Function prototypes for public use-------------------------------*/
00060 
00069 void MHEG5parseStreamKeys(U8BIT *data, U16BIT len, S_ICSKeys *keys);
00070 
00079 void MHEG5ParseXKeys(U8BIT *data, U32BIT len, S_ICSKeys *keys);
00080 
00081 
00089 void MHEG5ParseXKeyLocation(U8BIT *data, U32BIT len, MHEG5String *keyLocation);
00090 
00091 
00100 void MHEG5ParseXBytesPerSecond(U8BIT *data, U32BIT len, U32BIT *bytesPerSecond,
00101    BOOLEAN *knownBitrate);
00102 
00103 
00104 #endif /*_STMR_HEADER_H*/
 All Data Structures Files Functions Variables Typedefs Defines