Lines Matching +full:video +full:- +full:decoder

1 /* SPDX-License-Identifier: GPL-2.0 */
11 #include <media/v4l2-device.h>
12 #include <media/v4l2-mem2mem.h>
14 #include "delta-cfg.h"
17 * enum delta_state - state of decoding instance
21 * to know what is the relevant decoder to open.
46 * struct delta_streaminfo - information about stream to decode
49 * @width: width of video stream
51 * @streamformat: fourcc compressed format of video (MJPEG, MPEG2, ...)
56 * @pixelaspect: pixel aspect ratio of video (4/3, 5/4)
89 * struct delta_au - access unit structure.
91 * @vbuf: video buffer information for V4L2
112 * struct delta_frameinfo - information about decoded frame
115 * @pixelformat: fourcc code for uncompressed video format
118 * @aligned_width: width of frame (with encoder or decoder alignment
120 * @aligned_height: height of frame (with encoder or decoder alignment
125 * @pixelaspect: pixel aspect ratio of video (4/3, 5/4)
153 * struct delta_frame - frame structure.
155 * @vbuf: video buffer information for V4L2
186 #define DELTA_FRAME_BSY 0x02 /* is owned by decoder and busy */
189 #define DELTA_FRAME_RDY 0x10 /* is ready but still held by decoder */
193 * struct delta_dts - decoding timestamp.
227 * struct delta_dec - decoder structure.
229 * @name: name of this decoder
230 * @streamformat: input stream format that this decoder support
231 * @pixelformat: pixel format of decoded frame that this decoder support
232 * @max_width: (optional) maximum width that can decode this decoder
234 * @max_height: (optional) maximum height that can decode this decoder
236 * @pm: (optional) if set, decoder will manage power on its own
237 * @open: open this decoder
238 * @close: close this decoder
239 * @setup_frame: setup frame to be used by decoder, see below
243 * @setup_frame: setup frame to be used by decoder, see below
247 * @flush: (optional) flush decoder, see below
248 * @drain: (optional) drain decoder, see below
259 * decoder ops
265 * setup_frame() - setup frame to be used by decoder
273 * to decoder through this call.
274 * Several frames must be given to decoder (dpb),
280 * get_streaminfo() - get stream related infos
288 * If no valid header is found, get_streaminfo will return -ENODATA,
296 * get_frameinfo() - get decoded frame related infos
306 * set_frameinfo() - set decoded frame related infos
311 * Typically used to negotiate with decoder the output
312 * frame if decoder can do post-processing.
318 * decode() - decode a single access unit
336 * get_frame() - get the next decoded frame available
346 * If no frame is available, -ENODATA is returned.
355 * recycle() - recycle the given frame
362 * This frame will then be reused by decoder to proceed
365 * or recycle() is not called fast enough, the decoder can run out
368 * decoder is called only if at least one frame is available.
373 * flush() - flush decoder
377 * Reset decoder context and discard all internal buffers.
379 * of input bitstream that decoder must know to restart its internal
385 * drain() - drain decoder
389 * Mark decoder pending frames (decoded but not yet output) as ready
400 * struct delta_ctx - instance structure.
405 * @dec: selected decoder context for this instance
430 * @priv: private decoder context for this instance, allocated
431 * by decoder @open time.
468 * struct delta_dev - device struct, 1 per probe (so single one for
472 * @vdev: v4l2 video device
475 * @m2m_dev: memory-to-memory V4L2 device
482 * @pixelformats: supported uncompressed video formats
483 * @nb_of_pixelformats: number of supported umcompressed video formats
484 * @streamformats: supported compressed video formats
485 * @nb_of_streamformats:number of supported compressed video formats
529 return "-"; in frame_field_str()