source: svn/newcon3bcm2_21bu/BSEAV/lib/bcmplayer/include/bcmplayer_version.h @ 22

Last change on this file since 22 was 22, checked in by phkim, 11 years ago
  1. phkim
  2. newcon3sk 를 kctv 로 브랜치 함
  • Property svn:executable set to *
File size: 4.3 KB
Line 
1/***************************************************************************
2 *     Copyright (c) 2002-2010, Broadcom Corporation
3 *     All Rights Reserved
4 *     Confidential Property of Broadcom Corporation
5 *
6 *  THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE
7 *  AGREEMENT  BETWEEN THE USER AND BROADCOM.  YOU HAVE NO RIGHT TO USE OR
8 *  EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT.
9 *
10 * $brcm_Workfile: bcmplayer_version.h $
11 * $brcm_Revision: 3 $
12 * $brcm_Date: 6/21/10 4:31p $
13 *
14 * Module Description: Converts startcode index to bcmplayer index
15 *
16 * Revision History:
17 *
18 * $brcm_Log: /BSEAV/lib/bcmplayer/include/bcmplayer_version.h $
19 *
20 * 3   6/21/10 4:31p erickson
21 * SW7405-4249: added BNAV_Version_TimestampOnly option for indexing
22 * audio-only or scrambled streams
23 *
24 * 2   2/26/08 12:28p katrep
25 * PR38429: Added AVS record and playback support
26 *
27 * Irvine_BSEAVSW_Devel/5   3/6/06 1:21p erickson
28 * PR19853: added VC1 PES support
29 *
30 * Irvine_BSEAVSW_Devel/4   7/13/05 2:11p erickson
31 * PR16138: added AVC NAV version
32 *
33 * Irvine_BSEAVSW_Devel/3   3/18/05 9:38a erickson
34 * PR14451: added 6 word SCT support
35 *
36 * Irvine_BSEAVSW_Devel/2   6/24/03 11:03a erickson
37 * PR7218 - handled partially encrypted streams. Added maxFrameSize and
38 * mpegSizeCallback. Had to change the
39 * NAV table format (version 2) in order to handle I frames with reference
40 * offset of 0. Bcmplayer
41 * is backward compatible.
42 *
43 * Irvine_BSEAVSW_Devel/1   2/14/03 2:24p erickson
44 * added bcmplayer_version.h
45 *
46 ****************************************************************************/
47#ifndef BCMPLAYER_VERSION_H
48#define BCMPLAYER_VERSION_H
49
50/**
51* Input to bcmindexer based on SCD (Start code detect) hardware. This cannot
52* be autodetected reliably.
53**/
54typedef enum {
55    BSCT_Version32bitOffset,    /* 32 bit index entries, 4 words per entry. */
56    BSCT_Version40bitOffset,    /* 40 bit index entries, 4 words per entry.
57                                    Not available in venom2. */
58    BSCT_Version6wordEntry      /* 6 words per entry. */
59} BSCT_Version;
60
61/**
62* Output of bcmindexer and input to bcmplayer.
63* Bcmindexer can output all formats, but defaults to the latest format.
64* Bcmplayer reads the version from the NAV table as is always backward compatible.
65*
66* Max storage is 4 bits. Therefore only values 0..14 should be used. Value of 15 should be reserved
67* for extended version field.
68**/
69typedef enum {
70    BNAV_VersionOriginal = 0,       /* Open GOP B's use the immediate I frame as reference frame */
71    BNAV_VersionOpenGopBs = 1,      /* Open GOP B's use the prior I frame as reference frame */
72    BNAV_Version2 = 2,              /* Drop dangling open GOP B's and set initial I frame
73                                    reference offsets to 0. */
74    /* There may be extensions of non-AVC versions.*/
75
76    BNAV_Version_AVC = 3,           /* First extended-size AVC version */
77
78    BNAV_Version_VC1_PES = 4,       /* VC1 video in PES stream. Use BNAV_Indexer_FeedPES. */
79    BNAV_Version_AVS = 5,           /* AVS video */
80    BNAV_Version_TimestampOnly = 6, /* Content-agnostic index. Use timestamps and PTS for seek and current position status.
81                                       This can be used for audio-only streams, encrypted streams, or unsupported
82                                       video codecs. */
83    BNAV_VersionUnknown     /* Unknown version. Needs to be autodetected. */
84} BNAV_Version;
85
86#define BNAV_VersionLatest BNAV_Version2
87
88/**
89* Output of bcmplayer to mpegvideo decoder.
90* Mpegvideo porting interface reports its capabilities.
91**/
92typedef struct {
93    int supportsBroadcomTrickModes; /* This must be true to have any Broadcom trick modes.
94                                        If false, bcmplayer will only allow host trick modes. */
95    int supportsCombiningBs;        /* When doing 1x rewind, you can send multiple B's
96                                        in the same DISPLAY_REVERSE sequence. Venom2 support
97                                        is in development. */
98    int supportsDisplayPastBuffer;  /* BTP command to display past predictor. */
99    int supportsDummyPicture;       /* Send a one packet dummy picture if it doesn't
100                                        need to be decoded. */
101} BNAV_DecoderFeatures;
102
103#endif /* BCMPLAYER_VERSION_H */
Note: See TracBrowser for help on using the repository browser.