]>
Commit | Line | Data |
---|---|---|
1 | use nihav_core::demuxers::*; | |
2 | ||
3 | ||
4 | #[allow(unused_macros)] | |
5 | #[cfg(debug_assertions)] | |
6 | macro_rules! validate { | |
7 | ($a:expr) => { if !$a { println!("check failed at {}:{}", file!(), line!()); return Err(DemuxerError::InvalidData); } }; | |
8 | } | |
9 | #[cfg(not(debug_assertions))] | |
10 | macro_rules! validate { | |
11 | ($a:expr) => { if !$a { return Err(DemuxerError::InvalidData); } }; | |
12 | } | |
13 | ||
14 | #[cfg(feature="demuxer_dvi")] | |
15 | mod dvi; | |
16 | ||
17 | #[cfg(feature="demuxer_ivf")] | |
18 | mod ivf; | |
19 | ||
20 | const DEMUXERS: &[&dyn DemuxerCreator] = &[ | |
21 | #[cfg(feature="demuxer_dvi")] | |
22 | &dvi::DVIDemuxerCreator {}, | |
23 | #[cfg(feature="demuxer_ivf")] | |
24 | &ivf::IVFDemuxerCreator {}, | |
25 | ]; | |
26 | ||
27 | /// Registers all available demuxers provided by this crate. | |
28 | pub fn indeo_register_all_demuxers(rd: &mut RegisteredDemuxers) { | |
29 | for demuxer in DEMUXERS.iter() { | |
30 | rd.add_demuxer(*demuxer); | |
31 | } | |
32 | } |