From f63570ace5219a4e0543f04a7c0dd9ae1bd885d7 Mon Sep 17 00:00:00 2001 From: Michael Giacomelli Date: Sat, 14 Aug 2010 01:09:46 +0000 Subject: Add uppercase M4A file type to the mp4 parser. Technically Apple says to use lowercase, but various programs tolerate this, so we can too. Fixes FS#11536. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27805 a1c6a512-1295-4272-9138-f99709370657 --- apps/codecs/libm4a/demux.c | 1 + apps/metadata/mp4.c | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/codecs/libm4a/demux.c b/apps/codecs/libm4a/demux.c index bde2238409..9390f0a2bf 100644 --- a/apps/codecs/libm4a/demux.c +++ b/apps/codecs/libm4a/demux.c @@ -61,6 +61,7 @@ static void read_chunk_ftyp(qtmovie_t *qtmovie, size_t chunk_len) type = stream_read_uint32(qtmovie->stream); size_remaining-=4; if ((type != MAKEFOURCC('M','4','A',' ')) && + (type != MAKEFOURCC('m','4','a',' ')) && (type != MAKEFOURCC('M','4','B',' ')) && (type != MAKEFOURCC('m','p','4','2')) && (type != MAKEFOURCC('3','g','p','6')) && diff --git a/apps/metadata/mp4.c b/apps/metadata/mp4.c index cd6eda428f..b3ff348fc5 100644 --- a/apps/metadata/mp4.c +++ b/apps/metadata/mp4.c @@ -53,7 +53,8 @@ #define MP4_ilst FOURCC('i', 'l', 's', 't') #define MP4_isom FOURCC('i', 's', 'o', 'm') #define MP4_M4A FOURCC('M', '4', 'A', ' ') -#define MP4_M4B FOURCC('M', '4', 'B', ' ') +#define MP4_m4a FOURCC('m', '4', 'a', ' ') /*technically its "M4A "*/ +#define MP4_M4B FOURCC('M', '4', 'B', ' ') /*but files exist with lower case*/ #define MP4_mdat FOURCC('m', 'd', 'a', 't') #define MP4_mdia FOURCC('m', 'd', 'i', 'a') #define MP4_mdir FOURCC('m', 'd', 'i', 'r') @@ -569,7 +570,7 @@ static bool read_mp4_container(int fd, struct mp3entry* id3, size -= 4; if ((id != MP4_M4A) && (id != MP4_M4B) && (id != MP4_mp42) - && (id != MP4_qt) && (id != MP4_3gp6) + && (id != MP4_qt) && (id != MP4_3gp6) && (id != MP4_m4a) && (id != MP4_isom)) { DEBUGF("Unknown MP4 file type: '%c%c%c%c'\n", -- cgit v1.2.3