forked from 77media/video-flow
处理文生和图生提示词
This commit is contained in:
parent
2b4208fb41
commit
6d94867eab
@ -3,7 +3,7 @@ import { BASE_URL } from './constants'
|
||||
// 创建 axios 实例
|
||||
const request: AxiosInstance = axios.create({
|
||||
baseURL: BASE_URL, // 设置基础URL
|
||||
timeout: 10000, // 请求超时时间
|
||||
timeout: 300000, // 请求超时时间
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
},
|
||||
|
||||
@ -37,7 +37,7 @@ export type ConvertScenePromptResponse = ApiResponse<ConvertScenePromptData>;
|
||||
export const convertScenePrompt = async (
|
||||
request: ConvertScenePromptRequest
|
||||
): Promise<ConvertScenePromptResponse> => {
|
||||
return post<ConvertScenePromptResponse>('/video_flow/convert-scene-prompt', request);
|
||||
return post<ConvertScenePromptResponse>('/video_flow/convert-scene-prompts', request);
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@ -20,6 +20,7 @@ import { ProjectTypeEnum, ModeEnum, ResolutionEnum } from "@/api/enums";
|
||||
import { createScriptProject, CreateScriptProjectRequest } from "@/api/script_project";
|
||||
import { createScriptEpisode, CreateScriptEpisodeRequest } from "@/api/script_episode";
|
||||
import { getUploadTokenWithDomain, uploadToQiniu } from "@/api/common";
|
||||
import { convertScriptToScene, convertVideoToScene } from "@/api/video_flow";
|
||||
|
||||
const JoyrideNoSSR = dynamic(() => import('react-joyride'), {
|
||||
ssr: false,
|
||||
@ -104,38 +105,67 @@ export function CreateToVideo2() {
|
||||
const handleCreateVideo = async () => {
|
||||
if (videoUrl || inputText) {
|
||||
try {
|
||||
// 确定项目类型
|
||||
const projectType = activeTab === 'script' ? ProjectTypeEnum.SCRIPT_TO_VIDEO : ProjectTypeEnum.VIDEO_TO_VIDEO;
|
||||
let convertResponse;
|
||||
|
||||
// 构建项目数据并调用API
|
||||
const projectData: CreateScriptProjectRequest = {
|
||||
project_type: projectType,
|
||||
mode: selectedMode,
|
||||
resolution: selectedResolution
|
||||
};
|
||||
// 根据选中的选项卡调用相应的API
|
||||
if (activeTab === 'script') {
|
||||
// 剧本模式:调用convertScriptToScene (第43-56行)
|
||||
if (!inputText.trim()) {
|
||||
alert('请输入剧本内容');
|
||||
return;
|
||||
}
|
||||
convertResponse = await convertScriptToScene(inputText);
|
||||
} else {
|
||||
// 视频模式:调用convertVideoToScene (第56-69行)
|
||||
if (!videoUrl) {
|
||||
alert('请先上传视频');
|
||||
return;
|
||||
}
|
||||
convertResponse = await convertVideoToScene(videoUrl);
|
||||
}
|
||||
|
||||
const projectResponse = await createScriptProject(projectData);
|
||||
|
||||
if (projectResponse.code === 0 && projectResponse.data.id) {
|
||||
const projectId = projectResponse.data.id;
|
||||
// 检查转换结果
|
||||
if (convertResponse.code === 0) {
|
||||
console.log('转换成功:', convertResponse.data);
|
||||
console.log('任务ID:', convertResponse.data.task_id);
|
||||
console.log('预估时间:', convertResponse.data.estimated_time, '秒');
|
||||
|
||||
// 创建剧集数据
|
||||
const episodeData: CreateScriptEpisodeRequest = {
|
||||
// 确定项目类型
|
||||
const projectType = activeTab === 'script' ? ProjectTypeEnum.SCRIPT_TO_VIDEO : ProjectTypeEnum.VIDEO_TO_VIDEO;
|
||||
|
||||
// 构建项目数据并调用API
|
||||
const projectData: CreateScriptProjectRequest = {
|
||||
project_type: projectType,
|
||||
mode: selectedMode,
|
||||
resolution: selectedResolution
|
||||
};
|
||||
|
||||
// 调用创建剧集API
|
||||
const episodeResponse = await createScriptEpisode(episodeData);
|
||||
const projectResponse = await createScriptProject(projectData);
|
||||
|
||||
if (episodeResponse.code === 0) {
|
||||
// 成功创建后跳转到work-flow页面
|
||||
router.push('/create/work-flow');
|
||||
if (projectResponse.code === 0 && projectResponse.data.id) {
|
||||
const projectId = projectResponse.data.id;
|
||||
|
||||
// 创建剧集数据
|
||||
const episodeData: CreateScriptEpisodeRequest = {
|
||||
};
|
||||
|
||||
// 调用创建剧集API
|
||||
const episodeResponse = await createScriptEpisode(episodeData);
|
||||
|
||||
if (episodeResponse.code === 0) {
|
||||
// 成功创建后跳转到work-flow页面
|
||||
router.push('/create/work-flow');
|
||||
} else {
|
||||
alert(`创建剧集失败: ${episodeResponse.msg}`);
|
||||
}
|
||||
} else {
|
||||
alert(`创建剧集失败: ${episodeResponse.msg}`);
|
||||
alert(`创建项目失败: ${projectResponse.msg}`);
|
||||
}
|
||||
} else {
|
||||
alert(`创建项目失败: ${projectResponse.msg}`);
|
||||
alert(`转换失败: ${convertResponse.msg}`);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('创建过程出错:', error);
|
||||
alert("创建项目时发生错误,请稍后重试");
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user