summaryrefslogtreecommitdiff
path: root/apps/metadata/mpc.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/metadata/mpc.c')
-rw-r--r--apps/metadata/mpc.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/apps/metadata/mpc.c b/apps/metadata/mpc.c
index e20ac3e8a2..3f8907a934 100644
--- a/apps/metadata/mpc.c
+++ b/apps/metadata/mpc.c
@@ -66,9 +66,7 @@ bool get_musepack_metadata(int fd, struct mp3entry *id3)
66 66
67 header[0] = letoh32(header[0]); 67 header[0] = letoh32(header[0]);
68 streamversion = (header[0] >> 24) & 15; 68 streamversion = (header[0] >> 24) & 15;
69 if (streamversion >= 8) { 69 if (streamversion == 7) {
70 return false; /* SV8 or higher don't exist yet, so no support */
71 } else if (streamversion == 7) {
72 unsigned int gapless = (header[5] >> 31) & 0x0001; 70 unsigned int gapless = (header[5] >> 31) & 0x0001;
73 unsigned int last_frame_samples = (header[5] >> 20) & 0x07ff; 71 unsigned int last_frame_samples = (header[5] >> 20) & 0x07ff;
74 unsigned int bufused = 0; 72 unsigned int bufused = 0;
@@ -82,7 +80,11 @@ bool get_musepack_metadata(int fd, struct mp3entry *id3)
82 80
83 bufused = set_replaygain(id3, false, header[3], bufused); 81 bufused = set_replaygain(id3, false, header[3], bufused);
84 bufused = set_replaygain(id3, true, header[4], bufused); 82 bufused = set_replaygain(id3, true, header[4], bufused);
83 } else {
84 return false; /* only SV7 is allowed within a "MP+" signature */
85 } 85 }
86 } else if (!memcmp(header, "MPCK", 4)) { /* Compare to sig "MPCK" */
87 return false; /* SV8 is not supported yet */
86 } else { 88 } else {
87 return false; /* SV4-6 is not supported anymore */ 89 return false; /* SV4-6 is not supported anymore */
88 } 90 }