Author: ayoung
Date: Mon Mar 29 09:21:05 2010
New Revision: 8672
URL: http://svn.slimdevices.com/jive?rev=8672&view=rev
Log:
Fixed bug 15840: Squeezeplay-based players may sometimes fail with MP4 files
(AAC-HE, AAC-HD or ALAC)
Allow mp4_open() to return 2 meaning not yet done parseing header.
Modified:
7.5/trunk/squeezeplay/src/squeezeplay/src/audio/decode/decode_alac.c
7.5/trunk/squeezeplay/src/squeezeplay/src/audio/mp4.c
Modified: 7.5/trunk/squeezeplay/src/squeezeplay/src/audio/decode/decode_alac.c
URL:
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/src/audio/decode/decode_alac.c?rev=8672&r1=8671&r2=8672&view=diff
==============================================================================
--- 7.5/trunk/squeezeplay/src/squeezeplay/src/audio/decode/decode_alac.c
(original)
+++ 7.5/trunk/squeezeplay/src/squeezeplay/src/audio/decode/decode_alac.c Mon
Mar 29 09:21:05 2010
@@ -55,7 +55,10 @@
}
if (!self->init) {
- if (!mp4_open(&self->mp4)) {
+ size_t status = mp4_open(&self->mp4);
+ if (status == 2) {
+ return TRUE; /* need to wait for some more
data */
+ } else if (status != 1) {
current_decoder_state |= DECODE_STATE_ERROR |
DECODE_STATE_NOT_SUPPORTED;
return FALSE;
}
Modified: 7.5/trunk/squeezeplay/src/squeezeplay/src/audio/mp4.c
URL:
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/src/audio/mp4.c?rev=8672&r1=8671&r2=8672&view=diff
==============================================================================
--- 7.5/trunk/squeezeplay/src/squeezeplay/src/audio/mp4.c (original)
+++ 7.5/trunk/squeezeplay/src/squeezeplay/src/audio/mp4.c Mon Mar 29 09:21:05
2010
@@ -692,8 +692,13 @@
r = mp4_fill_buffer(mp4, &streaming);
if (r < 0) {
- LOG_ERROR(log_audio_codec, "premature end of stream");
- return 0;
+ if (streaming) {
+ LOG_DEBUG(log_audio_codec, "waiting for more
stream");
+ return 2;
+ } else {
+ LOG_ERROR(log_audio_codec, "premature end of
stream");
+ return 0;
+ }
}
/* parse box */
_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/jive-checkins