]> git.nihav.org Git - nihav.git/blame_incremental - nihav-misc/src/codecs/mod.rs
Radius Studio Video decoder
[nihav.git] / nihav-misc / src / codecs / mod.rs
... / ...
CommitLineData
1use nihav_core::codecs::*;
2
3#[cfg(debug_assertions)]
4macro_rules! validate {
5 ($a:expr) => { if !$a { println!("check failed at {}:{}", file!(), line!()); return Err(DecoderError::InvalidData); } };
6}
7#[cfg(not(debug_assertions))]
8macro_rules! validate {
9 ($a:expr) => { if !$a { return Err(DecoderError::InvalidData); } };
10}
11
12#[cfg(feature="decoder_mwv1")]
13mod mwv1;
14
15#[cfg(feature="decoder_pgvv")]
16mod pgvv;
17
18const DECODERS: &[DecoderInfo] = &[
19#[cfg(feature="decoder_mwv1")]
20 DecoderInfo { name: "mwv1", get_decoder: mwv1::get_decoder },
21#[cfg(feature="decoder_pgvv")]
22 DecoderInfo { name: "pgvv", get_decoder: pgvv::get_decoder },
23];
24
25/// Registers all available codecs provided by this crate.
26pub fn misc_register_all_decoders(rd: &mut RegisteredDecoders) {
27 for decoder in DECODERS.iter() {
28 rd.add_decoder(*decoder);
29 }
30}
31