request->post(); $result = HumanLogic::videoTask($data); if ($result) { return $this->data(HumanLogic::getReturnData()); } return $this->fail(HumanLogic::getError()); } /** * @desc 视频重试 * @return \think\response\Json * @date 2024/9/28 17:47 * @author dagouzi */ public function videoRetry() { $id = $this->request->post('video_id/d'); $result = HumanLogic::videoRetry($id); if ($result) { return $this->data(HumanLogic::getReturnData()); } return $this->fail(HumanLogic::getError()); } /** * @desc 视频列表 * @return \think\response\Json * @date 2024/9/30 19:14 * @author dagouzi */ public function videoLists() { $data = $this->request->get(); $result = HumanLogic::videoLists($data); return $this->data($result); } /** * @desc 创建形象 * @return \think\response\Json * @date 2024/9/28 17:47 * @author dagouzi */ public function createAnchor() { $data = $this->request->post(); $result = HumanLogic::createAnchor($data); if ($result) { return $this->data(HumanLogic::getReturnData()); } return $this->fail(HumanLogic::getError()); } /** * @desc 形象重试 * @return \think\response\Json * @date 2024/9/28 17:47 * @author dagouzi */ public function anchorRetry() { $id = $this->request->post('anchor_id/d'); $result = HumanLogic::anchorRetry($id); if ($result) { return $this->data(HumanLogic::getReturnData()); } return $this->fail(HumanLogic::getError()); } /** * @desc 形象列表 * @return Json * @throws DataNotFoundException * @throws DbException * @throws ModelNotFoundException * @date 2024/9/28 18:10 * @author dagouzi */ public function anchorLists() { $data = $this->request->get(); $result = HumanLogic::anchorLists($data); return $this->data($result); } /** * @desc 删除形象 * @return \think\response\Json * @date 2024/9/28 18:32 * @author dagouzi */ public function anchorDelete() { $params = $this->request->post(); return HumanLogic::anchorDelete($params) ? $this->success() : $this->fail(HumanLogic::getError()); } /** * @desc 语音克隆 * @return \think\response\Json * @date 2024/9/28 18:33 * @author dagouzi */ public function createVoice() { $data = $this->request->post(); $result = HumanLogic::createVoice($data); if ($result) { return $this->data(HumanLogic::getReturnData()); } return $this->fail(HumanLogic::getError()); } /** * @desc 音色重试 * @return \think\response\Json * @date 2024/9/28 17:47 * @author dagouzi */ public function voiceRetry() { $id = $this->request->post('voice_id/d'); $result = HumanLogic::voiceRetry($id); if ($result) { return $this->data(HumanLogic::getReturnData()); } return $this->fail(HumanLogic::getError()); } /** * @desc 音色列表 * @return Json * @throws DataNotFoundException * @throws DbException * @throws ModelNotFoundException * @date 2024/9/28 18:41 * @author dagouzi */ public function voiceLists() { $data = $this->request->get(); $data['type'] = 1; $result = HumanLogic::voiceLists($data); return $this->data($result); } public function builtInVoiceLists() { $data = $this->request->get(); $data['type'] = 0; $result = HumanLogic::voiceLists($data); return $this->data($result); } /** * @desc 删除音色 * @return \think\response\Json * @date 2024/9/28 18:41 * @author dagouzi */ public function voiceDelete() { $params = $this->request->post(); return HumanLogic::voiceDelete($params) ? $this->success() : $this->fail(HumanLogic::getError()); } /** * @desc 创建音频 * @return \think\response\Json * @date 2024/9/28 18:33 * @author dagouzi */ public function createAudio() { $data = $this->request->post(); $result = HumanLogic::createAudio($data); if ($result) { return $this->data(HumanLogic::getReturnData()); } return $this->fail(HumanLogic::getError()); } /** * @desc 音频重试 * @return \think\response\Json * @date 2024/9/28 17:47 * @author dagouzi */ public function audioRetry() { $id = $this->request->post('audio_id/d'); $result = HumanLogic::audioRetry($id); if ($result) { return $this->data(HumanLogic::getReturnData()); } return $this->fail(HumanLogic::getError()); } /** * @desc 音频列表 * @return Json * @throws DataNotFoundException * @throws DbException * @throws ModelNotFoundException * @date 2024/9/28 18:41 * @author dagouzi */ public function audioLists() { $data = $this->request->get(); $result = HumanLogic::audioLists($data); return $this->data($result); } /** * @desc 删除音频 * @return \think\response\Json * @date 2024/9/28 18:41 * @author dagouzi */ public function audioDelete() { $params = $this->request->post(); return HumanLogic::audioDelete($params) ? $this->success() : $this->fail(HumanLogic::getError()); } /** * @desc 删除视频 * @return \think\response\Json * @date 2024/9/28 18:41 * @author dagouzi */ public function videoDelete() { $params = $this->request->post(); return HumanLogic::videoDelete($params) ? $this->success() : $this->fail(HumanLogic::getError()); } /** * 异步接收数字人回掉回调 */ public function notify(): Json { try { $type = $this->request->param('human_type'); $modelVersion = $this->request->param('model_version'); $data = $this->request->all(); Log::channel('human')->write('接收数字人参数'.json_encode($data)); if (isset($data['data'])) { $data = $this->request->param('data'); } switch ($type) { case 'avatar': HumanLogic::updateAnchor($data, $modelVersion); break; case 'voice': HumanLogic::updateVoice($data, $modelVersion); break; case 'audio': HumanLogic::updateAudio($data, $modelVersion); break; case 'video': HumanLogic::updateVideo($data, $modelVersion); break; default: } return $this->success('ok'); } catch (\Exception $e) { Log::channel('human')->write('数字人参数'.json_encode($data).'数字人回调失败'.$e->getMessage()); return $this->success('fail'); } } /** * 文案 * @return Json * @author L * @data 2024/6/12 14:04 */ public function copywriting() { $params = $this->request->post(); return HumanLogic::copywriting($params) ? $this->data(HumanLogic::getReturnData()) : $this->fail(HumanLogic::getError()); } }