mirror of
https://github.com/mpv-player/mpv
synced 2024-12-27 01:22:30 +00:00
74c11f0c84
Slightly simpler, and removes the need to pre-read all subtitle packets. This still does the subtitle charset conversion on the packet level (instead converting when parsing the file), so in theory this still could provide a way to change the charset at runtime. But maybe even this should be removed, as FFmpeg is somewhat likely to get its own charset detection and conversion mechanism in the future. (Would have to keep the subtitle file in memory to allow changing the charset on the fly, I guess.)
23 lines
715 B
C
23 lines
715 B
C
#ifndef MP_CHARSET_CONV_H
|
|
#define MP_CHARSET_CONV_H
|
|
|
|
#include <stdbool.h>
|
|
#include "misc/bstr.h"
|
|
|
|
struct mp_log;
|
|
|
|
enum {
|
|
MP_ICONV_VERBOSE = 1, // print errors instead of failing silently
|
|
MP_ICONV_ALLOW_CUTOFF = 2, // allow partial input data
|
|
MP_STRICT_UTF8 = 4, // don't fall back to UTF-8-BROKEN when guessing
|
|
};
|
|
|
|
bool mp_charset_is_utf8(const char *user_cp);
|
|
bool mp_charset_is_utf16(const char *user_cp);
|
|
bool mp_charset_requires_guess(const char *user_cp);
|
|
const char *mp_charset_guess(void *talloc_ctx, struct mp_log *log, bstr buf,
|
|
const char *user_cp, int flags);
|
|
bstr mp_iconv_to_utf8(struct mp_log *log, bstr buf, const char *cp, int flags);
|
|
|
|
#endif
|