diff options
Diffstat (limited to 'src/utils/utils.c')
-rw-r--r-- | src/utils/utils.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/utils/utils.c b/src/utils/utils.c index ea0b424..ae60eee 100644 --- a/src/utils/utils.c +++ b/src/utils/utils.c @@ -140,6 +140,25 @@ int substitute_str(const char *subject, const char *pattern, return 0; } +const char *mimeType2ext(const char *mimeType) { + static char mimeType_l[CHAR_MAX]; + strcpy(mimeType_l, mimeType); + const char *exts[2]; + size_t extsCount = 0; + + char *token = strtok(mimeType_l, "/"); + while (token != NULL && extsCount < 2) { + exts[extsCount++] = token; + token = strtok(NULL, "/"); + } + + if (extsCount == 2) { + return exts[1]; + } + + return "mp4"; // Cannot parse, use default +} + int repchr(char *str, char t, char r) { int c = 0; for (size_t i = 0; str[i] != '\0'; i++) { |