X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-allstuff%2Fsrc%2Flib.rs;h=195d67d3caf422175eb48a82aa4fb7233983af5f;hp=eb8e9a3a007728df2c77ce2f54e4d5465c6e6715;hb=fd7e6906598e7fe87d928e5c7f4116a51a08a3ac;hpb=e64739f87a35f29be0bbbce366876180ba3eb57e diff --git a/nihav-allstuff/src/lib.rs b/nihav-allstuff/src/lib.rs index eb8e9a3..195d67d 100644 --- a/nihav-allstuff/src/lib.rs +++ b/nihav-allstuff/src/lib.rs @@ -1,55 +1,105 @@ +//! Umbrella crate to register decoders and demuxers from all known NihAV crates. extern crate nihav_core; extern crate nihav_commonfmt; extern crate nihav_duck; extern crate nihav_game; extern crate nihav_indeo; +extern crate nihav_itu; +extern crate nihav_llaudio; +extern crate nihav_ms; +extern crate nihav_qt; extern crate nihav_rad; extern crate nihav_realmedia; +extern crate nihav_vivo; use nihav_core::codecs::RegisteredDecoders; +use nihav_core::codecs::RegisteredEncoders; use nihav_core::demuxers::RegisteredDemuxers; +use nihav_core::muxers::RegisteredMuxers; -use nihav_commonfmt::generic_register_all_codecs; +use nihav_commonfmt::generic_register_all_decoders; use nihav_commonfmt::generic_register_all_demuxers; +use nihav_commonfmt::generic_register_all_encoders; +use nihav_commonfmt::generic_register_all_muxers; -use nihav_duck::duck_register_all_codecs; +use nihav_duck::duck_register_all_decoders; +use nihav_duck::duck_register_all_demuxers; +use nihav_duck::duck_register_all_encoders; -use nihav_game::game_register_all_codecs; +use nihav_game::game_register_all_decoders; use nihav_game::game_register_all_demuxers; -use nihav_indeo::indeo_register_all_codecs; +use nihav_indeo::indeo_register_all_decoders; -use nihav_rad::rad_register_all_codecs; +use nihav_itu::itu_register_all_decoders; + +use nihav_llaudio::llaudio_register_all_decoders; +use nihav_llaudio::llaudio_register_all_demuxers; + +use nihav_ms::ms_register_all_decoders; +use nihav_ms::ms_register_all_encoders; + +use nihav_qt::qt_register_all_decoders; + +use nihav_rad::rad_register_all_decoders; use nihav_rad::rad_register_all_demuxers; -use nihav_realmedia::realmedia_register_all_codecs; +use nihav_realmedia::realmedia_register_all_decoders; use nihav_realmedia::realmedia_register_all_demuxers; -pub fn nihav_register_all_codecs(rd: &mut RegisteredDecoders) { - generic_register_all_codecs(rd); - duck_register_all_codecs(rd); - game_register_all_codecs(rd); - indeo_register_all_codecs(rd); - rad_register_all_codecs(rd); - realmedia_register_all_codecs(rd); +use nihav_vivo::vivo_register_all_decoders; +use nihav_vivo::vivo_register_all_demuxers; + +/// Registers all known decoders. +pub fn nihav_register_all_decoders(rd: &mut RegisteredDecoders) { + generic_register_all_decoders(rd); + duck_register_all_decoders(rd); + game_register_all_decoders(rd); + indeo_register_all_decoders(rd); + itu_register_all_decoders(rd); + llaudio_register_all_decoders(rd); + ms_register_all_decoders(rd); + qt_register_all_decoders(rd); + rad_register_all_decoders(rd); + realmedia_register_all_decoders(rd); + vivo_register_all_decoders(rd); } +/// Registers all known demuxers. pub fn nihav_register_all_demuxers(rd: &mut RegisteredDemuxers) { + duck_register_all_demuxers(rd); generic_register_all_demuxers(rd); game_register_all_demuxers(rd); + llaudio_register_all_demuxers(rd); rad_register_all_demuxers(rd); realmedia_register_all_demuxers(rd); + vivo_register_all_demuxers(rd); } +/// Registers all known encoders. +pub fn nihav_register_all_encoders(re: &mut RegisteredEncoders) { + generic_register_all_encoders(re); + duck_register_all_encoders(re); + ms_register_all_encoders(re); +} + +/// Registers all known demuxers. +pub fn nihav_register_all_muxers(rm: &mut RegisteredMuxers) { + generic_register_all_muxers(rm); +} + +#[cfg(test)] +extern crate nihav_registry; + #[cfg(test)] mod test { use super::*; - use nihav_core::register::get_codec_description; + use nihav_registry::register::get_codec_description; #[test] fn test_descriptions() { let mut rd = RegisteredDecoders::new(); - nihav_register_all_codecs(&mut rd); + nihav_register_all_decoders(&mut rd); let mut has_missing = false; for dec in rd.iter() { print!("decoder {} - ", dec.name);