X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=src%2Fcodecs%2Fh263%2Fdecoder.rs;fp=src%2Fcodecs%2Fh263%2Fdecoder.rs;h=15e18fc7ce491e26927863d76612861669706c78;hb=42a593529b69f5b4cac9e2e7fd8b4863c57e3caf;hp=db200e71769f06042501e4e4622c42b3a0a9daa4;hpb=fc26b944d9d4b341aa007efd5e0920328b66dd9a;p=nihav.git diff --git a/src/codecs/h263/decoder.rs b/src/codecs/h263/decoder.rs index db200e7..15e18fc 100644 --- a/src/codecs/h263/decoder.rs +++ b/src/codecs/h263/decoder.rs @@ -129,6 +129,7 @@ pub struct H263BaseDecoder { has_b: bool, b_data: Vec, pred_coeffs: Vec, + is_gob: bool, } #[inline] @@ -147,7 +148,7 @@ fn clip_ac(ac: i16) -> i16 { #[allow(dead_code)] impl H263BaseDecoder { - pub fn new() -> Self { + pub fn new(is_gob: bool) -> Self { H263BaseDecoder{ w: 0, h: 0, mb_w: 0, mb_h: 0, num_mb: 0, ftype: Type::Special, @@ -155,6 +156,7 @@ impl H263BaseDecoder { last_ts: 0, has_b: false, b_data: Vec::new(), pred_coeffs: Vec::new(), + is_gob: is_gob, } } @@ -191,7 +193,7 @@ impl H263BaseDecoder { let mut bufinfo = bufret.unwrap(); let mut buf = bufinfo.get_vbuf().unwrap(); - let mut slice = if bd.is_gob() { + let mut slice = if self.is_gob { SliceInfo::get_default_slice(&pinfo) } else { bd.decode_slice_header(&pinfo)?