X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-commonfmt%2Fsrc%2Fdemuxers%2Fy4m.rs;h=3571ea97aeb4944d47c4f5b58b1cb657906082d9;hb=e6aaad5c5273cd814b5748b7faf3751835a37217;hp=9340421743c5fac3e39d3499d11b065f2a571fb9;hpb=8e14efb001fac3fecb0cb56df8705d23fa2231a8;p=nihav.git diff --git a/nihav-commonfmt/src/demuxers/y4m.rs b/nihav-commonfmt/src/demuxers/y4m.rs index 9340421..3571ea9 100644 --- a/nihav-commonfmt/src/demuxers/y4m.rs +++ b/nihav-commonfmt/src/demuxers/y4m.rs @@ -85,7 +85,7 @@ impl<'a> Y4MDemuxer<'a> { } } fn parse_header(&mut self) -> DemuxerResult { - let mut format = RGB24_FORMAT; + let mut format = YUV420_FORMAT; let mut magic = [0u8; 10]; self.src.read_buf(&mut magic)?; @@ -149,12 +149,10 @@ impl<'a> Y4MDemuxer<'a> { break; } } - validate!(self.width > 0 && self.height > 0 && format.model.is_yuv()); + validate!(self.width > 0 && self.height > 0); self.frame_size = 0; - for chromaton in format.comp_info.iter() { - if let Some(ref chr) = chromaton { - self.frame_size += chr.get_data_size(self.width, self.height); - } + for chr in format.comp_info.iter().flatten() { + self.frame_size += chr.get_data_size(self.width, self.height); } validate!(self.frame_size > 0);