1 Decoder firmware API description
2 ================================
4 Note: this API is part of the decoder firmware, so it's cx23415 only.
6 -------------------------------------------------------------------------------
8 Name CX2341X_DEC_PING_FW
11 This API call does nothing. It may be used to check if the firmware
14 -------------------------------------------------------------------------------
16 Name CX2341X_DEC_START_PLAYBACK
19 Begin or resume playback.
21 0 based frame number in GOP to begin playback from.
23 Specifies the number of muted audio frames to play before normal
26 -------------------------------------------------------------------------------
28 Name CX2341X_DEC_STOP_PLAYBACK
31 Ends playback and clears all decoder buffers. If PTS is not zero,
32 playback stops at specified PTS.
34 Display 0=last frame, 1=black
40 -------------------------------------------------------------------------------
42 Name CX2341X_DEC_SET_PLAYBACK_SPEED
45 Playback stream at speed other than normal. There are two modes of
47 Smooth: host transfers entire stream and firmware drops unused
49 Coarse: host drops frames based on indexing as required to achieve
54 1 fast only "1.5 times"
57 '0' during 1.5 times play, every other B frame is dropped
58 '1' during 1.5 times play, stream is unchanged (bitrate
59 must not exceed 8mbps)
64 Direction: 0=forward, 1=reverse
71 B frames per GOP (for reverse play only)
73 Mute audio: 0=disable, 1=enable
75 Display 0=frame, 1=field
77 Specifies the number of muted audio frames to play before normal audio
80 -------------------------------------------------------------------------------
82 Name CX2341X_DEC_STEP_VIDEO
85 Each call to this API steps the playback to the next unit defined below
86 in the current playback direction.
88 0=frame, 1=top field, 2=bottom field
90 -------------------------------------------------------------------------------
92 Name CX2341X_DEC_SET_DMA_BLOCK_SIZE
95 Set DMA transfer block size. Counterpart to API 0xC9
97 DMA transfer block size in bytes. A different size may be specified
98 when issuing the DMA transfer command.
100 -------------------------------------------------------------------------------
102 Name CX2341X_DEC_GET_XFER_INFO
105 This API call may be used to detect an end of stream condtion.
111 Maximum bytes to transfer
115 -------------------------------------------------------------------------------
117 Name CX2341X_DEC_GET_DMA_STATUS
120 Status of the last DMA transfer
122 Bit 1 set means transfer complete
123 Bit 2 set means DMA error
124 Bit 3 set means linked list error
126 DMA type: 0=MPEG, 1=OSD, 2=YUV
128 -------------------------------------------------------------------------------
130 Name CX2341X_DEC_SCHED_DMA_FROM_HOST
133 Setup DMA from host operation. Counterpart to API 0xCC
135 Memory address of link list
137 Total # of bytes to transfer
139 DMA type (0=MPEG, 1=OSD, 2=YUV)
141 -------------------------------------------------------------------------------
143 Name CX2341X_DEC_PAUSE_PLAYBACK
146 Freeze playback immediately. In this mode, when internal buffers are
147 full, no more data will be accepted and data request IRQs will be
150 Display: 0=last frame, 1=black
152 -------------------------------------------------------------------------------
154 Name CX2341X_DEC_HALT_FW
157 The firmware is halted and no further API calls are serviced until
158 the firmware is uploaded again.
160 -------------------------------------------------------------------------------
162 Name CX2341X_DEC_SET_STANDARD
165 Selects display standard
169 -------------------------------------------------------------------------------
171 Name CX2341X_DEC_GET_VERSION
174 Returns decoder firmware version information
181 -------------------------------------------------------------------------------
183 Name CX2341X_DEC_SET_STREAM_INPUT
186 Select decoder stream input port
188 0=memory (default), 1=streaming
190 -------------------------------------------------------------------------------
192 Name CX2341X_DEC_GET_TIMING_INFO
195 Returns timing information from start of playback
197 Frame count by decode order
199 Video PTS bits 0:31 by display order
201 Video PTS bit 32 by display order
203 SCR bits 0:31 by display order
205 SCR bit 32 by display order
207 -------------------------------------------------------------------------------
209 Name CX2341X_DEC_SET_AUDIO_MODE
214 Dual mono mode action
217 0=Stereo, 1=Left, 2=Right, 3=Mono, 4=Swap, -1=Unchanged
219 -------------------------------------------------------------------------------
221 Name CX2341X_DEC_SET_EVENT_NOTIFICATION
224 Setup firmware to notify the host about a particular event.
225 Counterpart to API 0xD5
227 Event: 0=Audio mode change between stereo and dual channel
229 Notification 0=disabled, 1=enabled
233 Mailbox slot, -1 if no mailbox required.
235 -------------------------------------------------------------------------------
237 Name CX2341X_DEC_SET_DISPLAY_BUFFERS
240 Number of display buffers. To decode all frames in reverse playback you
241 must use nine buffers.
243 0=six buffers, 1=nine buffers
245 -------------------------------------------------------------------------------
247 Name CX2341X_DEC_EXTRACT_VBI
252 0=extract from extension & user data, 1=extract from private packets
258 -------------------------------------------------------------------------------
260 Name CX2341X_DEC_SET_DECODER_SOURCE
263 Selects decoder source. Ensure that the parameters passed to this
264 API match the encoder settings.
266 Mode: 0=MPEG from host, 1=YUV from encoder, 2=YUV from host
272 Bitmap: see Param[0] of API 0xBD
274 -------------------------------------------------------------------------------
276 Name CX2341X_DEC_SET_AUDIO_OUTPUT
279 Select audio output format
291 '11' 6 channels with one line data mode
292 (for left justified MSB first mode, 20 bit only)
294 12:13 Channel format:
295 '00' right justified MSB first mode
296 '01' left justified MSB first mode
299 16:21 Right justify bit count
302 -------------------------------------------------------------------------------
304 Name CX2341X_DEC_SET_AV_DELAY
307 Set audio/video delay in 90Khz ticks
309 0=A/V in sync, negative=audio lags, positive=video lags
311 -------------------------------------------------------------------------------
313 Name CX2341X_DEC_SET_PREBUFFERING
316 Decoder prebuffering, when enabled up to 128KB are buffered for
317 streams <8mpbs or 640KB for streams >8mbps