mirror of
https://github.com/KOHGYLW/kiftd-source.git
synced 2025-01-09 04:27:56 +08:00
update to v1.2.0 完善了在线解码功能
This commit is contained in:
parent
6b81cf014e
commit
00ce501a6a
9
TODO.txt
9
TODO.txt
@ -1,4 +1,4 @@
|
||||
kiftd项目 计划表-2024-01-11 by 青阳龙野
|
||||
kiftd项目 计划表-2024-01-13 by 青阳龙野
|
||||
|
||||
已完成 v1.0.17
|
||||
--------------
|
||||
@ -204,16 +204,17 @@ test.auth.xxx=ucd
|
||||
计划中 v1.2.0
|
||||
--------------
|
||||
【已完成】将文件体积的单位精确到Byte,以便用户能够更加精准地获取文件体积。
|
||||
【已完成】新增文件夹体积计算功能:当访问者打开文件夹的“详细信息...”模态框时,系统将实时统计该文件夹的内容总体积,之后将结果显示在该界面上供用户查看。
|
||||
【已完成】在账户配置中新增“超级权限”设置:具备该权限的账户将无视权限和分组设定,可执行一切操作并可访问任何文件夹(包括“仅创建者”文件夹)。
|
||||
注:该功能旨在方便系统管理员更为方便快捷的对整个系统进行全权管理。
|
||||
【待实现】新增扩展存储区导出功能:当用户删除某一扩展存储区时,可以选择将该存储区内的文件全部导出至指定位置,便于对其进行归档。
|
||||
【已完成】完善移动“m”权限的安全性:当仅有“m”权限时,用户可执行“复制”操作;若同时具备删除“d”权限,才可以进行“剪切”操作。
|
||||
注:这是为了防止使用者先将某个文件从一个原本不具备删除权限的文件夹内移动的一个具备删除权限的文件夹内再将其删除的恶意操作。
|
||||
【已完成】新增文件夹体积计算功能:当访问者打开文件夹的“详细信息...”模态框时,系统将实时统计该文件夹的内容总体积,之后将结果显示在该界面上供用户查看。
|
||||
【已完成】新增“文件”功能的导入账户设置:在账户配置文件中,可通过“import.account=?”设置项来为“文件”功能中的导入操作指定“创建者”。
|
||||
【已完成】进一步完善了移动文件时的提示信息:当用户不具备创建文件夹权限并移动文件夹时,会显示未授权提示。
|
||||
【已完成】进一步优化了图形界面下的“文件”功能:现在可以通过点击表头对文件列表进行排序了。
|
||||
【已完成】进一步优化了图形界面下的“文件”功能:现在双击文件列表中的文件可以快速预览它了。
|
||||
【已完成】进一步优化了命令模式下的“文件”功能:现在可以通过“ls -l”显示所有项目的详细信息了。
|
||||
【已完成】进一步优化了在线解码功能:当没有找到与操作系统匹配的ffmpeg解码引擎时,在线解码功能将自动禁用。
|
||||
【已完成】修复了几处在执行文件导入导出操作时可能导致死锁的问题。
|
||||
【已完成】新增“文件”功能的导入账户设置:在账户配置文件中,可通过“import.account=?”设置项来为“文件”功能中的导入操作指定“创建者”。
|
||||
【已完成】进一步完善了移动文件时的提示信息:当用户不具备创建文件夹权限并移动文件夹时,会显示未授权提示。
|
||||
【已完成】进一步完善了断点续传功能。
|
||||
|
@ -99,13 +99,9 @@ public class KiftdFFMPEGLocator implements ProcessLocator {
|
||||
// 临时文件中是否已经拷贝好了ffmpeg可执行文件了?
|
||||
ffmpegFile = new File(dirFolder, "ffmpeg-" + arch + "-" + Version.getVersion() + suffix);
|
||||
if (!ffmpegFile.exists()) {
|
||||
// 没有?那将自带的、对应操作系统的ffmpeg文件拷贝到临时目录中,如果没有对应自带的ffmpeg,那么会抛出异常
|
||||
// 如果抛出异常,那么直接结束构造
|
||||
try {
|
||||
copyFile("ffmpeg-" + arch + suffix, ffmpegFile);
|
||||
} catch (NullPointerException e) {
|
||||
// 没有?那将自带的、对应操作系统的ffmpeg文件拷贝到临时目录中,如果没有对应自带的ffmpeg,那么直接结束构造
|
||||
if (!copyFile("ffmpeg-" + arch + suffix, ffmpegFile)) {
|
||||
Printer.instance.print("警告:未能找到适合此操作系统的ffmpeg引擎可执行文件,视频播放的在线解码功能将不可用。");
|
||||
lu.writeException(e);
|
||||
enableFFmpeg = false;
|
||||
return null;
|
||||
}
|
||||
@ -132,9 +128,8 @@ public class KiftdFFMPEGLocator implements ProcessLocator {
|
||||
}
|
||||
|
||||
// 把文件从自带的jar包中拷贝出来,移入指定文件夹
|
||||
private void copyFile(String path, File dest) {
|
||||
private boolean copyFile(String path, File dest) {
|
||||
String resourceName = "nativebin/" + path;
|
||||
try {
|
||||
InputStream is = getClass().getResourceAsStream(resourceName);
|
||||
if (is == null) {
|
||||
resourceName = "ws/schild/jave/nativebin/" + path;
|
||||
@ -146,16 +141,15 @@ public class KiftdFFMPEGLocator implements ProcessLocator {
|
||||
is = classloader.getResourceAsStream(resourceName);
|
||||
}
|
||||
if (is != null) {
|
||||
copy(is, dest.getAbsolutePath());
|
||||
boolean copyResult = copy(is, dest.getAbsolutePath());
|
||||
try {
|
||||
is.close();
|
||||
return copyResult;
|
||||
} catch (IOException ioex) {
|
||||
lu.writeException(ioex);
|
||||
}
|
||||
}
|
||||
} catch (NullPointerException ex) {
|
||||
lu.writeException(ex);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// 以文件的形式把流存入指定文件夹内
|
||||
|
@ -1,5 +1,5 @@
|
||||
#Generated by Maven Integration for Eclipse
|
||||
#Thu Jan 11 21:24:52 CST 2024
|
||||
#Sat Jan 13 17:31:21 CST 2024
|
||||
m2e.projectLocation=/Users/kohgylw/Programs/java_workspace/kiftd
|
||||
m2e.projectName=kiftd
|
||||
groupId=kohgylw
|
||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user