]> git.nihav.org Git - nihav.git/blobdiff - src/demuxers/mod.rs
RealAudio demuxer
[nihav.git] / src / demuxers / mod.rs
index c122a03ea2019935d7dfa0798b3294e0e3acda87..42399bfac5fed16cbcfcf2269d6b591f63097689 100644 (file)
@@ -11,6 +11,7 @@ pub enum DemuxerError {
     IOError,
     NotImplemented,
     MemoryError,
+    TryAgain,
 }
 
 type DemuxerResult<T> = Result<T, DemuxerError>;
@@ -200,7 +201,7 @@ pub trait DemuxerCreator {
 }
 
 macro_rules! validate {
-    ($a:expr) => { if !$a { return Err(DemuxerError::InvalidData); } };
+    ($a:expr) => { if !$a { println!("check failed at {}:{}", file!(), line!()); return Err(DemuxerError::InvalidData); } };
 }
 
 #[cfg(feature="demuxer_gdv")]
@@ -218,8 +219,8 @@ const DEMUXERS: &[&'static DemuxerCreator] = &[
     &gdv::GDVDemuxerCreator {},
 #[cfg(feature="demuxer_real")]
     &realmedia::RealMediaDemuxerCreator {},
-//#[cfg(feature="demuxer_real")]
-//    &realmedia::RealAudioDemuxerCreator {},
+#[cfg(feature="demuxer_real")]
+    &realmedia::RealAudioDemuxerCreator {},
 //#[cfg(feature="demuxer_real")]
 //    &realmedia::RealIVRDemuxerCreator {},
 ];
@@ -236,6 +237,6 @@ pub fn find_demuxer(name: &str) -> Option<&DemuxerCreator> {
 pub fn create_demuxer<'a>(dmxcr: &DemuxerCreator, br: &'a mut ByteReader<'a>) -> DemuxerResult<Demuxer<'a>> {
     let mut dmx = dmxcr.new_demuxer(br);
     let mut str = StreamManager::new();
-    dmx.open(&mut str)?;    
+    dmx.open(&mut str)?;
     Ok(Demuxer::new(dmx, str))
 }