aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/audio/source.cpp
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-05-29 12:39:52 +0800
committerchai <chaifix@163.com>2018-05-29 12:39:52 +0800
commite024e5a23c4f5c8e8fb02e7b03c8e9265ac6c1ef (patch)
treea19511ccb880db2f7dd99778efc956435474a518 /src/libjin/audio/source.cpp
parent2add73bb54ce9376ffcd44ffd929049d3c430628 (diff)
Image改为工厂
Diffstat (limited to 'src/libjin/audio/source.cpp')
-rw-r--r--src/libjin/audio/source.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/libjin/audio/source.cpp b/src/libjin/audio/source.cpp
index dd87718..ec80a0f 100644
--- a/src/libjin/audio/source.cpp
+++ b/src/libjin/audio/source.cpp
@@ -1,3 +1,4 @@
+#include <cstring>
#include "source.h"
namespace jin
@@ -5,7 +6,16 @@ namespace jin
namespace audio
{
+ SourceType Source::getType(const void* mem, int size)
+ {
+ const char* p = (const char* )mem;
+ if (memcmp(p, "RIFF", 4) == 0 && memcmp(p + 8, "WAVE", 4) == 0)
+ return SourceType::WAV;
+ if (memcmp(p, "OggS", 4) == 0)
+ return SourceType::OGG;
+ return SourceType::INVALID;
+ }
}
} \ No newline at end of file