diff options
| author | ac79b0c6 <[email protected]> | 2022-05-20 18:16:59 +0800 |
|---|---|---|
| committer | ac79b0c6 <[email protected]> | 2022-05-20 18:16:59 +0800 |
| commit | 25a09d120098574711a3f007f35df44771da387c (patch) | |
| tree | 791886854bc08bcd2e54ed2a74b5a490a3816955 | |
| parent | c8c65c409de5995a2e774fc35ac82a5bfb21e137 (diff) | |
update mkvlib:add overwrite switch
| -rw-r--r-- | mkvlib/c/README.md | 5 | ||||
| -rw-r--r-- | mkvlib/c/exports.go | 8 | ||||
| -rw-r--r-- | mkvlib/c/sdk.cs | 8 | ||||
| -rw-r--r-- | mkvlib/c/sdk.py | 5 | ||||
| -rw-r--r-- | mkvlib/mkv.go | 9 | ||||
| -rw-r--r-- | mkvlib/shared.go | 2 |
6 files changed, 34 insertions, 3 deletions
diff --git a/mkvlib/c/README.md b/mkvlib/c/README.md index 7ac28dd..35b4ef0 100644 --- a/mkvlib/c/README.md +++ b/mkvlib/c/README.md @@ -205,4 +205,9 @@ void NRename(bool n); //子集化时不重命名字体 //n: 是否不重命名 + ``` +- ```c + void Overwrite(bool o); + //输出时是否覆盖已存在的文件 + //o: 是否覆盖 ```
\ No newline at end of file diff --git a/mkvlib/c/exports.go b/mkvlib/c/exports.go index f1537e3..86a0ceb 100644 --- a/mkvlib/c/exports.go +++ b/mkvlib/c/exports.go @@ -215,6 +215,14 @@ func GetFontInfo(p *C.char) *C.char { return cs(string(data)) } +//export Overwrite +func Overwrite(o bool) { + if !checkInstance() { + return + } + getter.GetProcessorInstance().Overwrite(o) +} + //export Version func Version() *C.char { return cs(mkvlib.Version()) diff --git a/mkvlib/c/sdk.cs b/mkvlib/c/sdk.cs index 379396b..8ece63e 100644 --- a/mkvlib/c/sdk.cs +++ b/mkvlib/c/sdk.cs @@ -61,6 +61,9 @@ public static class mkvlib [DllImport("mkvlib.so", EntryPoint = "NRename")] static extern void _NRename(bool n); + [DllImport("mkvlib.so", EntryPoint = "Overwrite")] + static extern void _Overwrite(bool o); + [DllImport("mkvlib.so", EntryPoint = "Check")] static extern void _Check(bool check, bool strict); @@ -178,6 +181,11 @@ public static class mkvlib _NRename(n); } + public static void Overwrite(bool o) + { + _Overwrite(o); + } + public static void Check(bool check, bool strict) { _Check(check, strict); diff --git a/mkvlib/c/sdk.py b/mkvlib/c/sdk.py index 73de70d..60bb523 100644 --- a/mkvlib/c/sdk.py +++ b/mkvlib/c/sdk.py @@ -131,6 +131,11 @@ def nrename(n): call(n) +def overwrite(o): + call = lib.Overwrite + call(o) + + def check(c, s): call = lib.Check call(c, s) diff --git a/mkvlib/mkv.go b/mkvlib/mkv.go index 46da74b..d85e8d9 100644 --- a/mkvlib/mkv.go +++ b/mkvlib/mkv.go @@ -48,6 +48,7 @@ type mkvProcessor struct { nrename bool check bool strict bool + overwrite bool } func (self *mkvProcessor) GetMKVInfo(file string) *mkvInfo { @@ -256,7 +257,7 @@ func (self *mkvProcessor) CreateMKVs(vDir, sDir, fDir, tDir, oDir, slang, stitle } else { fn += ".mkv" } - if _a, _ := isExists(fn); _a { + if _a, _ := isExists(fn); _a && !self.overwrite { printLog(lcb, `@Warning@ Existing file: "%s",skip.`, fn) _ok++ printLog(lcb, "Create (%d/%d) done.", _ok, l) @@ -315,7 +316,7 @@ func (self *mkvProcessor) MakeMKVs(dir, data, output, slang, stitle string, lcb } else { fn += ".mkv" } - if _a, _ := isExists(fn); _a { + if _a, _ := isExists(fn); _a && !self.overwrite { printLog(lcb, `@Warning@ Existing file: "%s",skip.`, fn) _ok++ printLog(lcb, "Make (%d/%d) done.", _ok, l) @@ -445,6 +446,10 @@ func (self *mkvProcessor) NRename(nrename bool) { self.nrename = nrename } +func (self *mkvProcessor) Overwrite(o bool) { + self.overwrite = o +} + func (self *mkvProcessor) CreateBlankOrBurnVideo(t int64, s, enc, ass, fontdir, output string) bool { if !self.ffmpeg { return false diff --git a/mkvlib/shared.go b/mkvlib/shared.go index 50a4566..372ae5f 100644 --- a/mkvlib/shared.go +++ b/mkvlib/shared.go @@ -11,7 +11,7 @@ import ( ) const libName = "mkvlib" -const libVer = "v2.1.1" +const libVer = "v2.1.2" const LibFName = libName + " " + libVer |
