|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
Decoder state shared by the whole-buffer and streaming drivers. More...
#include <ra8_jpeg_sw_internal.h>
Data Fields | |
| const uint8_t * | src |
| Byte slice the parsers read from. | |
| uint32_t | src_len |
| Length of src in bytes. | |
| uint32_t | cursor |
| Parse cursor into src. | |
| uint16_t | width |
| Image width from SOF0, pixels. | |
| uint16_t | height |
| Image height from SOF0, pixels. | |
| uint8_t | ncomp |
| 1 grayscale, 3 YCbCr. | |
| uint8_t | hmax |
| Max horizontal sampling factor. | |
| uint8_t | vmax |
| Max vertical sampling factor. | |
| uint8_t | comp_id [k_ra8_jpeg_max_comps] |
| Component identifiers. | |
| uint8_t | comp_h [k_ra8_jpeg_max_comps] |
| Horizontal sampling. | |
| uint8_t | comp_v [k_ra8_jpeg_max_comps] |
| Vertical sampling. | |
| uint8_t | comp_qid [k_ra8_jpeg_max_comps] |
| Quant-table selector. | |
| uint8_t | comp_dc_id [k_ra8_jpeg_max_comps] |
| DC Huffman selector. | |
| uint8_t | comp_ac_id [k_ra8_jpeg_max_comps] |
| AC Huffman selector. | |
| int32_t | comp_dc_pred [k_ra8_jpeg_max_comps] |
| DC predictors (scan state). | |
| uint16_t | qtab [k_ra8_jpeg_quant_tabs][k_ra8_jpeg_block_size] |
| Dequant tables. | |
| ra8_jpeg_htab_t | hdc [k_ra8_jpeg_huff_ids] |
| DC Huffman tables. | |
| ra8_jpeg_htab_t | hac [k_ra8_jpeg_huff_ids] |
| AC Huffman tables. | |
Decoder state shared by the whole-buffer and streaming drivers.
src/src_len/cursor describe the byte slice the marker parsers read from. The whole-buffer driver points them at the entire JPEG stream; the streaming driver points them at its sliding window (one fully-materialised marker segment at a time). Tables and per-component layout persist across segments either way.
Definition at line 571 of file ra8_jpeg_sw_internal.h.
| uint8_t ra8_jpeg_dec_ctx_t::comp_ac_id[k_ra8_jpeg_max_comps] |
AC Huffman selector.
Definition at line 588 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_block_ac(), and priv_jpeg_sw_parse_sos().
| uint8_t ra8_jpeg_dec_ctx_t::comp_dc_id[k_ra8_jpeg_max_comps] |
DC Huffman selector.
Definition at line 587 of file ra8_jpeg_sw_internal.h.
Referenced by priv_jpeg_sw_block(), and priv_jpeg_sw_parse_sos().
| int32_t ra8_jpeg_dec_ctx_t::comp_dc_pred[k_ra8_jpeg_max_comps] |
DC predictors (scan state).
Definition at line 589 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_scan_begin(), internal_js_scan(), and priv_jpeg_sw_block().
| uint8_t ra8_jpeg_dec_ctx_t::comp_h[k_ra8_jpeg_max_comps] |
Horizontal sampling.
Definition at line 584 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_check_chroma_layout(), and internal_dec_parse_sof0_components().
| uint8_t ra8_jpeg_dec_ctx_t::comp_id[k_ra8_jpeg_max_comps] |
Component identifiers.
Definition at line 583 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_parse_sof0_components(), and priv_jpeg_sw_parse_sos().
| uint8_t ra8_jpeg_dec_ctx_t::comp_qid[k_ra8_jpeg_max_comps] |
Quant-table selector.
Definition at line 586 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_block_ac(), internal_dec_parse_sof0_components(), and priv_jpeg_sw_block().
| uint8_t ra8_jpeg_dec_ctx_t::comp_v[k_ra8_jpeg_max_comps] |
Vertical sampling.
Definition at line 585 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_check_chroma_layout(), and internal_dec_parse_sof0_components().
| uint32_t ra8_jpeg_dec_ctx_t::cursor |
Parse cursor into src.
Definition at line 574 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_decode_scan(), internal_dec_parse_dht_one(), internal_dec_run(), internal_dec_scan_begin(), internal_js_parse_markers(), priv_jpeg_sw_dispatch(), priv_jpeg_sw_parse_dht(), priv_jpeg_sw_parse_dqt(), priv_jpeg_sw_parse_sof0(), priv_jpeg_sw_parse_sos(), priv_jpeg_sw_skip_segment(), and ra8_jpeg_sw_decode().
| ra8_jpeg_htab_t ra8_jpeg_dec_ctx_t::hac[k_ra8_jpeg_huff_ids] |
AC Huffman tables.
Definition at line 593 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_block_ac(), and internal_dec_parse_dht_one().
| ra8_jpeg_htab_t ra8_jpeg_dec_ctx_t::hdc[k_ra8_jpeg_huff_ids] |
DC Huffman tables.
Definition at line 592 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_parse_dht_one(), and priv_jpeg_sw_block().
| uint16_t ra8_jpeg_dec_ctx_t::height |
Image height from SOF0, pixels.
Definition at line 577 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_decode_scan(), internal_dec_emit_mcu_rgb(), internal_dec_run(), internal_js_bind_geometry(), internal_js_scan(), and priv_jpeg_sw_parse_sof0().
| uint8_t ra8_jpeg_dec_ctx_t::hmax |
Max horizontal sampling factor.
Definition at line 579 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_check_chroma_layout(), internal_dec_decode_scan(), internal_dec_emit_mcu_rgb(), internal_dec_parse_sof0_components(), internal_js_bind_geometry(), internal_js_emit_mcu(), and priv_jpeg_sw_mcu_y().
| uint8_t ra8_jpeg_dec_ctx_t::ncomp |
1 grayscale, 3 YCbCr.
Definition at line 578 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_check_chroma_layout(), internal_dec_decode_mcu(), internal_dec_emit_mcu_rgb(), internal_dec_parse_sof0_components(), internal_js_bind_geometry(), internal_js_decode_mcu(), priv_jpeg_sw_parse_sof0(), and priv_jpeg_sw_parse_sos().
| uint16_t ra8_jpeg_dec_ctx_t::qtab[k_ra8_jpeg_quant_tabs][k_ra8_jpeg_block_size] |
Dequant tables.
Definition at line 591 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_block_ac(), priv_jpeg_sw_block(), and priv_jpeg_sw_parse_dqt().
| const uint8_t* ra8_jpeg_dec_ctx_t::src |
Byte slice the parsers read from.
Definition at line 572 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_parse_dht_one(), internal_dec_parse_sof0_components(), internal_dec_scan_begin(), internal_js_parse_markers(), priv_jpeg_sw_dispatch(), priv_jpeg_sw_parse_dht(), priv_jpeg_sw_parse_dqt(), priv_jpeg_sw_parse_sof0(), priv_jpeg_sw_parse_sos(), priv_jpeg_sw_skip_segment(), and ra8_jpeg_sw_decode().
| uint32_t ra8_jpeg_dec_ctx_t::src_len |
Length of src in bytes.
Definition at line 573 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_run(), internal_dec_scan_begin(), internal_js_parse_markers(), priv_jpeg_sw_dispatch(), priv_jpeg_sw_parse_dht(), priv_jpeg_sw_parse_dqt(), priv_jpeg_sw_parse_sof0(), priv_jpeg_sw_parse_sos(), priv_jpeg_sw_skip_segment(), and ra8_jpeg_sw_decode().
| uint8_t ra8_jpeg_dec_ctx_t::vmax |
Max vertical sampling factor.
Definition at line 580 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_check_chroma_layout(), internal_dec_decode_scan(), internal_dec_emit_mcu_rgb(), internal_dec_parse_sof0_components(), internal_js_bind_geometry(), internal_js_emit_mcu(), and priv_jpeg_sw_mcu_y().
| uint16_t ra8_jpeg_dec_ctx_t::width |
Image width from SOF0, pixels.
Definition at line 576 of file ra8_jpeg_sw_internal.h.
Referenced by internal_dec_decode_scan(), internal_dec_emit_mcu_rgb(), internal_dec_run(), internal_js_bind_geometry(), internal_js_emit_mcu(), internal_js_scan(), and priv_jpeg_sw_parse_sof0().