]> git.nihav.org Git - nihav.git/commitdiff
nihav_codec_support/dmx_test: add a function for simple demuxer testing
authorKostya Shishkov <kostya.shishkov@gmail.com>
Fri, 3 Apr 2026 15:48:48 +0000 (17:48 +0200)
committerKostya Shishkov <kostya.shishkov@gmail.com>
Fri, 3 Apr 2026 15:48:48 +0000 (17:48 +0200)
nihav-codec-support/src/test/dmx_test.rs

index d289f7674cd06e67e3dc3d080d1991dcd8f97cda..550a2fefe96e738a00bc046e991e9cca9d99f275 100644 (file)
@@ -22,6 +22,16 @@ pub enum DemuxerTestMode {
     Test(Vec<DPacket>),
 }
 
+pub fn test_file_demux(name: &str, dmx_cr: &dyn DemuxerCreator, npkts: usize, mode: DemuxerTestMode) {
+    let mut file = std::fs::File::open(name).unwrap();
+    let mut br = FileReader::new_read(&mut file);
+    let mut dmx = dmx_cr.new_demuxer(&mut br);
+    let mut sm = StreamManager::new();
+    let mut si = SeekIndex::new();
+    dmx.open(&mut sm, &mut si).unwrap();
+    test_demuxer(dmx.as_mut(), &mut sm, npkts, mode);
+}
+
 pub fn test_demuxer(dmx: &mut dyn DemuxCore, sm: &mut StreamManager, mut npkts: usize, mode: DemuxerTestMode) {
     if npkts == 0 {
         npkts = usize::MAX;