From ffd8d5130892300dcf9bc594b76c43bc8a6bd8c4 Mon Sep 17 00:00:00 2001 From: Kasper Date: Mon, 1 Feb 2021 03:34:39 +0100 Subject: [PATCH] Fix TRANSPORT_SYNC_ERROR at EOF for aac files --- src/lib.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib.rs b/src/lib.rs index 6dc8830..619373c 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -107,7 +107,7 @@ where if self.current_pcm_index == self.current_pcm.len() { let mut pcm = vec![0; 8192]; let result = match self.aac_decoder.decode_frame(&mut pcm) { - Err(DecoderError::NOT_ENOUGH_BITS) => { + Err(DecoderError::NOT_ENOUGH_BITS) | Err(DecoderError::TRANSPORT_SYNC_ERROR) => { match &mut self.reader { // mp4 Reader::Mp4Reader(mp4_reader) => { @@ -146,6 +146,9 @@ where Ok(bytes_read) => bytes_read, Err(_) => return None, }; + if bytes_read == 0 { + return None; + } // aac files already have adts headers self.bytes.extend(new_bytes); } -- 2.51.2