X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-itu%2Fsrc%2Fcodecs%2Fh264%2Fsets.rs;fp=nihav-itu%2Fsrc%2Fcodecs%2Fh264%2Fsets.rs;h=2d879bdd7b87bc1a682e294a168939a6a3dbdae7;hp=61cf0a8994a84f147dc0be06d8aa0498444cae54;hb=93839abd64a4c725e0194a790ffd743dd8c19916;hpb=56a17e69f584e41c2bfd2cb808b812be6b8796e5 diff --git a/nihav-itu/src/codecs/h264/sets.rs b/nihav-itu/src/codecs/h264/sets.rs index 61cf0a8..2d879bd 100644 --- a/nihav-itu/src/codecs/h264/sets.rs +++ b/nihav-itu/src/codecs/h264/sets.rs @@ -1,3 +1,5 @@ +use std::sync::Arc; + use nihav_core::codecs::{DecoderResult, DecoderError}; use nihav_core::io::bitreader::*; @@ -303,7 +305,7 @@ pub struct PicParameterSet { pub second_chroma_qp_index_offset: i8, } -pub fn parse_pps(src: &[u8], sps_arr: &[SeqParameterSet], full_size: usize) -> DecoderResult { +pub fn parse_pps(src: &[u8], sps_arr: &[Arc], full_size: usize) -> DecoderResult> { let mut br = BitReader::new(src, BitReaderMode::BE); let mut pps: PicParameterSet = unsafe { std::mem::zeroed() }; @@ -417,5 +419,5 @@ println!("slice mode!"); pps.second_chroma_qp_index_offset = pps.chroma_qp_index_offset; } - Ok(pps) + Ok(Arc::new(pps)) }