struct DecState {Show 21 fields
yuv: DecodedYuv,
blk_w: usize,
nnz_luma: Vec<u8>,
mode_luma: Vec<i8>,
decoded: Vec<bool>,
cblk_w: usize,
nnz_chroma: [Vec<u8>; 2],
mb_w: usize,
mb_qp: Vec<i32>,
mv: [Vec<[i16; 2]>; 2],
is_inter: Vec<bool>,
blk_h: usize,
refi: [Vec<i8>; 2],
refp: [Vec<i32>; 2],
num_ref: [u32; 2],
mb_slice: Vec<u32>,
cur_slice: u32,
mb_db: Vec<MbDeblock>,
mb_t8: Vec<bool>,
wp: WpMode,
cur_poc: i32,
}Expand description
デコーダ状態。YUV 平面に加え、4x4 ブロック単位の近傍情報グリッドを持つ。
Fields§
§yuv: DecodedYuv§blk_w: usize§nnz_luma: Vec<u8>§mode_luma: Vec<i8>§decoded: Vec<bool>§cblk_w: usize§nnz_chroma: [Vec<u8>; 2]§mb_w: usize§mb_qp: Vec<i32>§mv: [Vec<[i16; 2]>; 2]§is_inter: Vec<bool>§blk_h: usize§refi: [Vec<i8>; 2]§refp: [Vec<i32>; 2]§num_ref: [u32; 2]§mb_slice: Vec<u32>§cur_slice: u32§mb_db: Vec<MbDeblock>§mb_t8: Vec<bool>§wp: WpMode§cur_poc: i32Implementations§
Source§impl DecState
impl DecState
fn li(&self, bx4: usize, by4: usize) -> usize
Sourcefn has_coeffs(&self, li: usize) -> bool
fn has_coeffs(&self, li: usize) -> bool
4x4 ブロック li を含む変換ブロックに 0 でない係数があるか(デブロックの bS = 2)。
8x8 変換の MB では 8x8 単位で見る(8.7.2.1)。
Sourcefn avail_px(&self, x: isize, y: isize) -> bool
fn avail_px(&self, x: isize, y: isize) -> bool
輝度画素 (x, y) を含む MB が画面内にあり、復号中のスライスに属するか(6.4 の可用性)。 【2026-10-17】複数スライス対応。従来は画面内かどうかだけで判定しており、前のスライスの MB まで予測(イントラ・MV・nC)に使っていた。
Sourcefn pred_i4x4_mode(&self, bx4: usize, by4: usize) -> i32
fn pred_i4x4_mode(&self, bx4: usize, by4: usize) -> i32
Intra4x4 予測モードの予測値(左/上ブロックのモードの min)。
Auto Trait Implementations§
impl Freeze for DecState
impl RefUnwindSafe for DecState
impl Send for DecState
impl Sync for DecState
impl Unpin for DecState
impl UnsafeUnpin for DecState
impl UnwindSafe for DecState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more