summaryrefslogtreecommitdiffstats
path: root/src/README
blob: 3c75114de4edefb0d83042f772abb2054bc96c4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
DOCUMENTATION ROADMAP
=====================

This file contains the following sections:

NAMING RULE      Files named rules

CODE STRUCTURE   General description files structure in psb_video



NAMING RULE
=====================
This part describes general rule for naming added files in future.
Name Fomat: xx_xxxx.c/h

Explanation:
xx: represents the platform, such as psb for MRST, pnw for MFLD and tng for MRFLD.
xxxx: generally describes files function, such as cmdbuf for command buffer processing, H264ES for H264	encoding, H264 for H264 decoding. For encode codec, xxES is used.

The existed files may not be consistent with it completely. For the exsited files:
lnc_xxxx.c/h are files for encoding on MRST
psb_xxxx.c/h are files for decoding on MRST (some files are reused in MFLD)
pnw_xxxx.c/h are files for encoding/decoding on MFLD
tng_xxxx.c/h are files for encoding/decoding on MRFLD
xx_xxES.c/h are files for various encoding codec, others codec named are for various decoding codec



CODE STRUCTURE
=====================
psb_video
|
|--src (vide driver user space code)
|   |--mrst
|   |   |- lnc_cmdbuf.h (below files are for encode on MRST)
|   |   |- lnc_cmdbuf.c
|   |   |- lnc_H263ES.h
|   |   |- lnc_H263ES.c
|   |   |- lnc_H264ES.h
|   |   |- lnc_H264ES.c
|   |   |- lnc_MPEG4ES.h
|   |   |- lnc_MPEG4ES.c
|   |   |- lnc_hostcode.h
|   |   |- lnc_hostcode.c
|   |   |- lnc_hostheader.h
|   |   |- lnc_hostheader.c
|   |   |- psb_deblock.c (below files are for decode on MRST)
|   |   |- psb_VC1.h
|   |   |- psb_VC1.c
|   |   |- psb_H264.h
|   |   |- psb_H264.c
|   |   |- psb_MPEG4.h
|   |   |- psb_MPEG4.c
|   |   |- psb_MPEG2.h
|   |   |- psb_MPEG2.c
|   |   |- psb_MPEG2MC.c
|   |- pnw_cmdbuf.h (below files are for encode on MFLD)
|   |- pnw_cmdbuf.c
|   |- pnw_H263ES.h
|   |- pnw_H263ES.c
|   |- pnw_H264ES.h
|   |- pnw_H264ES.c
|   |- pnw_MPEG4ES.h
|   |- pnw_MPEG4ES.c
|   |- pnw_hostcode.h
|   |- pnw_hostcode.c
|   |- pnw_hostheader.h
|   |- pnw_hostheader.c
|   |- pnw_hostjpeg.h
|   |- pnw_hostjpeg.c
|   |- pnw_jpeg.h
|   |- pnw_jpeg.c
|   |- psb_cmdbuf.h (below files are for decode on MFLD)
|   |- psb_cmdbuf.c
|   |- tng_vld_dec.h
|   |- tng_vld_dec.c
|   |- pnw_VC1.h
|   |- pnw_VC1.c
|   |- pnw_H264.h
|   |- pnw_H264.c
|   |- pnw_MPEG4.h
|   |- pnw_MPEG4.c
|   |- pnw_MPEG2.h
|   |- pnw_MPEG2.c
|   |- vc1_defs.h
|   |- vc1_header.h
|   |- vc1_idx.c
|   |- vc1_vlc.c
|   |- psb_overlay.h
|   |- psb_overlay.c
|   |- psb_output.h
|   |- psb_output.c
|   |- object_heap.h (below files are common for encode and decode on MFLD)
|   |- object_heap.c
|   |- pnw_rotate.h
|   |- pnw_rotate.c
|   |- psb_buffer.h
|   |- psb_buffer.c
|   |- psb_buffer_dm.c
|   |- psb_def.h
|   |- psb_drv_debug.h
|   |- psb_drv_debug.c
|   |- psb_drv_video.h
|   |- psb_drv_video.c
|   |- psb_surface.h
|   |- psb_surface.c
|   |- psb_surface_attrib.h
|   |- psb_surface_attrib.c
|   |- psb_ws_driver.h
|   |- psb_ws_driver.c
|   |- psb_texture.h
|   |- psb_texture.c
|   |- tng_cmdbuf.h (below files are for encode on MRFLD)
|   |- tng_cmdbuf.c
|   |- tng_H263ES.h
|   |- tng_H263ES.c
|   |- tng_H264ES.h
|   |- tng_H264ES.c
|   |- tng_MPEG4ES.h
|   |- tng_MPEG4ES.c
|   |- tng_hostcode.h
|   |- tng_hostcode.c
|   |- tng_hostheader.h
|   |- tng_hostheader.c
|   |- tng_jpegES.h
|   |- tng_jpegES.c
|   |- tng_hostair.h
|   |- tng_hostair.c
|   |- tng_hostbias.h
|   |- tng_hostbias.c
|   |- tng_picmgmt.h
|   |- tng_picmgmt.c
|   |- tng_slotorder.h
|   |- tng_slotorder.c
|   |- tng_hostdefs.h
|   |- tng_VP8.h (below files are for decode on MRFLD)
|   |- tng_VP8.c
|   |- tng_JPEG.h
|   |- tng_JPEG.c
|   |- tng_yuv_processor.h
|   |- tng_yuv_processor.c
|   |- vsp_cmdbuf.h (below files are for VSP on MRFLD)
|   |- vsp_cmdbuf.c
|   |- tng_VPP.h
|   |- tng_VPP.c
|   |-- hwdefs (HW related info definition)
|   |-- android (display on Android)
|   |-- x11 (display on FPGA, etc.)
|
|--debian (used for package)
|
|--fw (firmware info)
    |-- msvdx (decode firmware)
    |-- topazhp (encode firmware on MRFLD)
    |-- topazsc (encode firmware on MFLD)