Compare commits
2 Commits
82ec437b5d
...
cb7d0dd23e
| Author | SHA1 | Date | |
|---|---|---|---|
| cb7d0dd23e | |||
| 683087d15e |
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "laitool",
|
||||
"version": "3.4.2",
|
||||
"version": "3.4.3",
|
||||
"description": "An AI tool for image processing, video processing, and other functions.",
|
||||
"main": "./out/main/index.js",
|
||||
"author": "laitool.cn",
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,24 +1,10 @@
|
||||
export const SoftwareData = {
|
||||
"version": "V3.4.2",
|
||||
"date": "2025-08-08",
|
||||
"version": "V3.4.3",
|
||||
"date": "2025-08-16",
|
||||
"notes": [
|
||||
"1. 新增图/文转视频菜单界面,专注实现图/文转视频(目前只集成了 MJ VIDEO)",
|
||||
" • 全新的界面排列,小说列表和批次任务更加分明",
|
||||
" • 添加转视频进度,在主界面即可看到转视频的比例",
|
||||
" • 单独的界面去处理图转视频,避免表格数据过多繁琐",
|
||||
" • 新增分页显示,界面加载更快,也可切换不分页",
|
||||
" • 单独操作面板,参数修改处理更加清晰,支持多种模式显示",
|
||||
" • 批量设置转视频配置,可以批量修改分类",
|
||||
" • 友好的选择视频界面",
|
||||
"2. 重写软件导出剪映,修复若干草稿导出问题",
|
||||
" • 修复导出剪映文案和图片对齐问题,解决时长越长越明显的对不上问题",
|
||||
" • 修复导出草稿关键帧部分问题",
|
||||
" • 导出的文案通过分镜自动导入,不再需要手动选择SRT",
|
||||
"3. 美化生成草稿界面弹窗,优化部分逻辑",
|
||||
" • 删除选择SRT文件,SRT根据聚合推文中导入的SRT自动生成草稿",
|
||||
" • 只需选择配音文件即可,配音文件和导入的SRT请自行对应",
|
||||
" • 背景音乐不在内部设置,自行选择文件夹或者是MP3、WAV文件",
|
||||
" • 背景音乐选择文件夹则读取文件夹,随机获取一个",
|
||||
" • 背景音乐选择指定的音乐文件则使用选择的"
|
||||
"1. 导出剪映草稿,字幕自动换行",
|
||||
"2. 修复一键导出草稿保存数据",
|
||||
"3. 修复 一拆四 无效",
|
||||
"4. 适配 按主题下的导出草稿界面"
|
||||
]
|
||||
}
|
||||
|
||||
@ -138,7 +138,7 @@ export class BookTask {
|
||||
}
|
||||
}
|
||||
|
||||
if(!isEmpty(bookTask.videoCategory)){
|
||||
if (!isEmpty(bookTask.videoCategory)) {
|
||||
videoCategory = bookTask.videoCategory;
|
||||
}
|
||||
|
||||
@ -163,7 +163,7 @@ export class BookTask {
|
||||
prefixPrompt: addNewBookTask.prefixPrompt ??= undefined,
|
||||
suffixPrompt: addNewBookTask.suffixPrompt ?? undefined,
|
||||
imageCategory: imageCategory,
|
||||
videoCategory : videoCategory,
|
||||
videoCategory: videoCategory,
|
||||
subImageFolder: [],
|
||||
draftSrtStyle: undefined,
|
||||
backgroundMusic: bookTask.backgroundMusic ??= undefined,
|
||||
@ -417,6 +417,7 @@ export class BookTask {
|
||||
suffixPrompt: sourceBookTask.suffixPrompt,
|
||||
version: sourceBookTask.version,
|
||||
imageCategory: sourceBookTask.imageCategory,
|
||||
videoCategory: sourceBookTask.videoCategory ?? ImageToVideoModels.MJ_VIDEO,
|
||||
openVideoGenerate: sourceBookTask.openVideoGenerate == null ? false : sourceBookTask.openVideoGenerate,
|
||||
} as Book.SelectBookTask
|
||||
|
||||
|
||||
@ -15,10 +15,10 @@ import { define } from "../../../define/define";
|
||||
import { ValidateJson } from "../../../define/Tools/validate";
|
||||
import BookSetting from "@/main/setting/bookSetting";
|
||||
import util from 'util';
|
||||
import { spawn, exec } from 'child_process';
|
||||
import { SendMessageToRenderer } from "../globalService";
|
||||
import { TaskModal } from "@/model/task";
|
||||
import compressing from "compressing";
|
||||
import { spawn, exec } from 'child_process';
|
||||
const execAsync = util.promisify(exec);
|
||||
|
||||
export class BookVideo {
|
||||
|
||||
@ -311,7 +311,6 @@ async function UseBookVideoDataToBookTask() {
|
||||
* 保存数据
|
||||
*/
|
||||
async function SaveVideoData() {
|
||||
console.log('SaveVideoData', bookTask.value)
|
||||
if (props.type == 'book') {
|
||||
let res = await window.db.UpdateBookData(bookTask.value.id, {
|
||||
srtPath: bookTask.value.srtPath,
|
||||
@ -326,6 +325,23 @@ async function SaveVideoData() {
|
||||
} else {
|
||||
message.success('保存小说数据成功')
|
||||
}
|
||||
|
||||
for (let i = 0; i < props.selectBookTask.length; i++) {
|
||||
const element = props.selectBookTask[i]
|
||||
let res = await window.db.UpdateBookTaskData(element, {
|
||||
srtPath: bookTask.value.srtPath,
|
||||
audioPath: bookTask.value.audioPath,
|
||||
backgroundMusic: bookTask.value.backgroundMusic,
|
||||
friendlyReminder: bookTask.value.friendlyReminder,
|
||||
draftSrtStyle: bookTask.value.draftSrtStyle,
|
||||
draftDepend: bookTask.value.draftDepend
|
||||
})
|
||||
if (res.code == 0) {
|
||||
message.error(res.message)
|
||||
} else {
|
||||
message.success('保存小说批次数据成功')
|
||||
}
|
||||
}
|
||||
} else if (props.type == 'bookTask') {
|
||||
let res = await window.db.UpdateBookTaskData(bookTask.value.id, {
|
||||
srtPath: bookTask.value.srtPath,
|
||||
@ -437,7 +453,6 @@ const rules = ref({
|
||||
border-radius: 16px;
|
||||
border: none;
|
||||
backdrop-filter: blur(10px);
|
||||
background: rgba(255, 255, 255, 0.95);
|
||||
animation: fadeInUp 0.6s ease-out;
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user