|
--- a/src/decoder/ffmpeg_decoder_plugin.c
|
|
+++ b/src/decoder/ffmpeg_decoder_plugin.c
|
|
@@ -387,6 +387,13 @@ ffmpeg_probe(struct decoder *decoder, st
|
|
|
|
unsigned char *buffer = g_malloc(BUFFER_SIZE);
|
|
size_t nbytes = decoder_read(decoder, is, buffer, BUFFER_SIZE);
|
|
+
|
|
+ if ((nbytes > 0) && (nbytes < 1024))
|
|
+ {
|
|
+ // Gobble some more data if header is small
|
|
+ nbytes += decoder_read(decoder, is, buffer + nbytes, BUFFER_SIZE - nbytes);
|
|
+ }
|
|
+
|
|
if (nbytes <= PADDING ||
|
|
!input_stream_lock_seek(is, 0, SEEK_SET, NULL)) {
|
|
g_free(buffer);
|
|
@@ -683,6 +690,7 @@ static const char *const ffmpeg_mime_typ
|
|
"audio/qcelp",
|
|
"audio/vorbis",
|
|
"audio/vorbis+ogg",
|
|
+ "audio/wav",
|
|
"audio/x-8svx",
|
|
"audio/x-16sv",
|
|
"audio/x-aac",
|