From 82b42ed269330e86e22898f02d2353595a1734f2 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 26 Jan 2020 14:13:07 +0800 Subject: [PATCH] =?UTF-8?q?*=20=E4=BC=98=E5=8C=96=20#25=20=EF=BC=8C?= =?UTF-8?q?=E4=BB=A5FlvChecker=E7=9A=84Main=E6=96=B9=E6=B3=95=E8=BF=90?= =?UTF-8?q?=E8=A1=8C=E6=97=B6=EF=BC=8C=E6=8E=A5=E5=8F=97debug=E5=B8=83?= =?UTF-8?q?=E5=B0=94=E5=BC=80=E5=85=B3=20*=20=E4=BF=AE=E5=A4=8D=E4=B8=80?= =?UTF-8?q?=E4=B8=AAbug=20#22=20=EF=BC=8C=E4=BB=A5FlvChecker=E7=9A=84Main?= =?UTF-8?q?=E6=96=B9=E6=B3=95=E8=BF=90=E8=A1=8C=E6=97=B6=EF=BC=8C=E8=A7=A3?= =?UTF-8?q?=E6=9E=90=E4=BC=A0=E5=85=A5=E7=9A=84=E6=96=87=E4=BB=B6=E4=BF=9D?= =?UTF-8?q?=E5=AD=98=E8=B7=AF=E5=BE=84=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 7 +++-- UPDATE.md | 3 ++ src/main/java/nicelee/bilibili/Main.java | 2 +- .../nicelee/bilibili/live/FlvChecker.java | 30 +++++++++++++------ 4 files changed, 29 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index bc310b8..4cd00e8 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,7 @@ Go go go, Bilibili Pikachu! | ------------- | ------------- | ------------- | | bili | 2019/09/19 | `flv`清晰度可多选,可不需要cookie | | zhanqi | 2019/06/30 | `flv`清晰度可多选,可不需要cookie | -| douyu | 2020/01/12 | `flv`清晰度可多选,但部分高清需要cookie | +| douyu | 2020/01/26 | `flv`清晰度可多选,但部分高清需要cookie | | kuaishou | 2020/01/12 | `flv`清晰度可多选,可能需要cookie(与登录无关,首次进入直播页面有反爬措施,会需要拖拽验证) | | huya | 2019/08/30 | `flv`清晰度可多选,可不需要cookie | | yy | 2019/06/15 | `flv`只支持默认清晰度 | @@ -67,8 +67,9 @@ Go go go, Bilibili Pikachu! + 校正某FLV文件的时间戳 + `java -Dfile.encoding=utf-8 -cp BiliLiveRecorder.jar nicelee.bilibili.live.FlvChecker "源文件路径"` + `java -Dfile.encoding=utf-8 -cp BiliLiveRecorder.jar nicelee.bilibili.live.FlvChecker "源文件路径" true` - + `java -Dfile.encoding=utf-8 -cp BiliLiveRecorder.jar nicelee.bilibili.live.FlvChecker "源文件路径" true "保存的文件夹路径" ` - + 第二个布尔参数的意义是**当遇到某种特定情况时,是否分割文件** + + `java -Dfile.encoding=utf-8 -cp BiliLiveRecorder.jar nicelee.bilibili.live.FlvChecker "源文件路径" true false "保存的文件夹路径"` + + 第二个参数-布尔参数的意义是**当遇到某种特定情况时,是否分割文件** + + 第三个参数-布尔参数的意义是**是否输出debug信息** + 注意:这些操作**没法还原**,所以理论上原始文件最保真。 `不校验时间戳` ≈ `校验文件不分割` > `校验文件分割scripts tag` + 如果仍旧没办法满足需求的话,建议拿着各种版本都去ffmpeg处理一下 diff --git a/UPDATE.md b/UPDATE.md index 7dcb6df..f6f1734 100644 --- a/UPDATE.md +++ b/UPDATE.md @@ -1,4 +1,7 @@ ## 更新 ++ V2.6.2 + * 优化 #25 ,以FlvChecker的Main方法运行时,接受debug布尔开关 + * 修复一个bug #22 ,以FlvChecker的Main方法运行时,解析传入的文件保存路径; + V2.6.1 * 修复一个bug #20 ,该bug导致主播正常下播时无法自动重命名{endTime}参数; * 优化 #22 ,如果FLV自动校准,且传入了自定义参数saveFolderAfterCheck,校准后的文件将保存在参数对应目录中 diff --git a/src/main/java/nicelee/bilibili/Main.java b/src/main/java/nicelee/bilibili/Main.java index 852bb3f..24bdb5e 100644 --- a/src/main/java/nicelee/bilibili/Main.java +++ b/src/main/java/nicelee/bilibili/Main.java @@ -25,7 +25,7 @@ public class Main { - final static String version = "v2.6.1"; + final static String version = "v2.6.2"; static boolean autoCheck; static boolean splitScriptTagsIfCheck; static boolean deleteOnchecked; diff --git a/src/main/java/nicelee/bilibili/live/FlvChecker.java b/src/main/java/nicelee/bilibili/live/FlvChecker.java index 98c3f61..6792328 100644 --- a/src/main/java/nicelee/bilibili/live/FlvChecker.java +++ b/src/main/java/nicelee/bilibili/live/FlvChecker.java @@ -22,16 +22,28 @@ public static void main(String[] args) throws IOException { FlvChecker fChecker = new FlvChecker(); boolean splitScripts = false; - if(args != null && args.length >= 2) { - splitScripts = "true".equals(args[1]); - } - if (args != null && args.length >= 1) { - System.out.println("校对时间戳开始..."); - fChecker.check(args[0], false, splitScripts); + String saveFolder = null; + if(args != null) { + if(args.length >= 4) { + saveFolder = args[3]; + File f = new File(saveFolder); + if(!f.exists()) + f.mkdirs(); + } + if(args.length >= 3 && "false".equals(args[2])) + Logger.debug = false; + + if(args.length >= 2) + splitScripts = "true".equals(args[1]); + + if (args.length >= 1) { + System.out.println("校对时间戳开始..."); + fChecker.check(args[0], false, splitScripts, saveFolder); // fChecker.checkFromEnd(args[0]); - System.out.println("校对时间戳完毕。"); - } else { - System.out.println("请输入正确的文件路径"); + System.out.println("校对时间戳完毕。"); + } else { + System.out.println("请输入正确的文件路径"); + } } }