diff options
| author | a1e7cb88 <[email protected]> | 2021-10-18 01:05:57 +0800 |
|---|---|---|
| committer | a1e7cb88 <[email protected]> | 2021-10-18 01:05:57 +0800 |
| commit | 1dbc72c60e4932e5b88ea608c668eea035ac7980 (patch) | |
| tree | ca8eb66270ee5ffbbd75d730152f4b6b4fddc29c /cexports/exports.go | |
| parent | f696fba48f3a05c08af71b9e2dceb72bb7c9c024 (diff) | |
update mod
Diffstat (limited to 'cexports/exports.go')
| -rw-r--r-- | cexports/exports.go | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/cexports/exports.go b/cexports/exports.go deleted file mode 100644 index 93d8321..0000000 --- a/cexports/exports.go +++ /dev/null @@ -1,87 +0,0 @@ -package main - -import ( - "C" - "encoding/json" - "github.com/KurenaiRyu/MkvAutoSubset/mkvlib" -) - -var _instance = mkvlib.GetInstance() - -//export CheckInstance -func CheckInstance() bool { - return _instance != nil -} - -//export GetMKVInfo -func GetMKVInfo(file *C.char) *C.char { - if !CheckInstance() { - return cs("") - } - obj := _instance.GetMKVInfo(gs(file)) - data, _ := json.Marshal(obj) - return cs(string(data)) -} - -//export DumpMKV -func DumpMKV(file, output *C.char, subset bool) bool { - if !CheckInstance() { - return false - } - return _instance.DumpMKV(gs(file), gs(output), subset) -} - -type checkSubset_R struct { - Subseted bool `json:"subseted"` - Error bool `json:"error"` -} - -//export CheckSubset -func CheckSubset(file *C.char) *C.char { - if !CheckInstance() { - return cs("") - } - a, b := _instance.CheckSubset(gs(file)) - data, _ := json.Marshal(checkSubset_R{a, b}) - return cs(string(data)) -} - -//export CreateMKV -func CreateMKV(file, tracks, attachments, output, slang, stitle *C.char, clean bool) bool { - if !CheckInstance() { - return false - } - a := make([]string, 0) - b := make([]string, 0) - err := json.Unmarshal([]byte(gs(tracks)), &a) - if err == nil { - _tracks := a - err = json.Unmarshal([]byte(gs(attachments)), &b) - if err == nil { - _attachments := b - return _instance.CreateMKV(gs(file), _tracks, _attachments, gs(output), gs(slang), gs(stitle), clean) - } - } - return false -} - -//export ASSFontSubset -func ASSFontSubset(files, fonts, output *C.char, dirSafe bool) bool { - if !CheckInstance() { - return false - } - obj := make([]string, 0) - if json.Unmarshal([]byte(gs(files)), &obj) == nil { - _files := obj - return _instance.ASSFontSubset(_files, gs(fonts), gs(output), dirSafe) - } - return false -} - -func cs(gs string) *C.char { - return C.CString(gs) -} - -func gs(cs *C.char) string { - return C.GoString(cs) -} |
