图龙网络科技

问答社区

原创作者: 图龙网络科技 发布时间: 2023-09-23 229.8K 人阅读

探索 Whisper-TikTok,这是一款创新的人工智能驱动工具强大功能

太极混元 发布于 1个月前 分类:语言模型

探索 Whisper-TikTok,这是一款创新的人工智能驱动工具,它利用Edge TTSOpenAI-WhisperFFMPEG的强大功能来制作引人入胜的 TikTok 视频。利用 OpenAI 的 Whisper 模型的功能,Whisper-TikTok 可以轻松地从提供的音频文件中生成准确的转录,为通过使用FFMPEG创建令人着迷的 TikTok 视频奠定了基础。此外,该程序无缝集成了Microsoft Edge 云文本转语音 (TTS) API,为视频提供充满活力的配音。选择 Microsoft Edge Cloud TTS API 的配音是一个深思熟虑的选择,因为它提供了显着的自然而真实的听觉体验,使其与众多 TikTok 视频中普遍存在的单调和人工画外音区分开来。

Streamlit 网络应用程序:

使用 Whisper-TikTok 非常简单:只需修改video.json即可。 JSON 文件包含以下字段:

  • series: 系列名称。
  • part:视频的部分编号。
  • text:视频中要朗读的文字。
  • outro:视频中要说出的结尾文本。
  • tags:用于视频的标签。

总结一下程序的功能:

该程序配备了包含系列名称视频零件号视频文本片尾文本等详细信息的结构化 JSON 数据集,可以编排包含所提供文本和片尾的视频的合成。随后,生成的视频将存储在指定的output文件夹中。

网络应用程序(在线)

感谢 Streamlit 托管了一个 Web 应用程序,该应用程序在 HuggingFace 中公开可用,只需单击链接即可直接进入该 Web 应用程序。

https://huggingface.co/spaces/MatteoFasulo/Whisper-TikTok-Demo

本地安装

Whisper-TikTok 在配备Python 版本 3.8、3.9 和 3.11的 Windows 10、Windows 11 和 Ubuntu 23.04 系统上经过了严格的测试。

如果您想在本地运行 Whisper-TikTok,可以使用以下命令克隆存储库:

git clone https://github.com/MatteoFasulo/Whisper-TikTok.git

不过,还有一个适用于 Whisper-TikTok 的 Docker 镜像,可用于在容器化环境中运行该程序。

依赖关系

要简化必要依赖项的安装,请在终端中执行以下命令:

pip install -U -r requirements.txt

它还需要在您的系统上安装命令行工具FFMPEG ,大多数包管理器都可以提供该工具:

# on Ubuntu or Debian
sudo apt update && sudo apt install ffmpeg
# on Arch Linux
sudo pacman -S ffmpeg
# on MacOS using Homebrew (<https://brew.sh/>)
brew install ffmpeg
# on Windows using Chocolatey (<https://chocolatey.org/>)
choco install ffmpeg
# on Windows using Scoop (<https://scoop.sh/>)
scoop install ffmpeg

请注意,为了获得最佳性能,建议在使用 OpenAI Whisper 模型进行语音识别时配备 GPU。然而,该程序在没有 GPU 的情况下也可以运行,但运行速度会更慢。这种性能差异是因为 GPU 可以有效处理 fp16 计算,而 CPU 使用速度较慢的 fp32 或 fp64(取决于您的机器)。

Web-UI(本地)

要在本地运行 Web-UI,请在终端中执行以下命令:

streamlit run app.py --server.port=8501 --server.address=0.0.0.0

命令行

要从命令行运行该程序,请在终端中执行以下命令:

python main.py

CLI 选项

Whisper-TikTok 支持以下命令行选项:

python main.py [OPTIONS]
Options:
  --model TEXT              Model to use [tiny|base|small|medium|large] (Default: small)
  --non_english             Use general model, not the English one specifically. (Flag)
  --url TEXT                YouTube URL to download as background video. (Default: <https://www.youtube.com/watch?v=intRX7BRA90>)
  --tts TEXT                Voice to use for TTS (Default: en-US-ChristopherNeural)
  --list-voices             Use `edge-tts --list-voices` to list all voices.
--random_voice              Random voice for TTS (Flag)
  --gender TEXT             Gender of the random TTS voice [Male|Female].
  --language TEXT           Language of the random TTS voice(e.g., en-US)
  --sub_format TEXT         Subtitle format to use [u|i|b] (Default: b) | b (Bold), u (Underline), i (Italic)
  --sub_position INT        Subtitle position to use [1-9] (Default: 5)
  --font TEXT               Font to use for subtitles (Default: Lexend Bold)
  --font_color TEXT         Font color to use for subtitles in HEX format (Default: #FFF000).
  --font_size INT           Font size to use for subtitles (Default: 21)
  --max_characters INT      Maximum number of characters per line (Default: 38)
  --max_words INT           Maximum number of words per segment (Default: 2)
  --upload_tiktok           Upload the video to TikTok (Flag)
  -v, --verbose             Verbose (Flag)

如果您使用 --random_voice 选项,请同时指定 --gender 和 --language 参数。如果您想使用非英语语音,您还需要指定 --non_english 参数,否则程序将使用英语模型。 Whisper模型会自动检测音频文件的语言并使用相应的模型。

使用示例

  • 使用特定的 TTS 模型和语音生成 TikTok 视频:
python main.py --model medium --tts en-US-EricNeural
  • 不使用英文模型生成 TikTok 视频:
python main.py --non_english --tts de-DE-KillianNeural
  • 使用自定义 YouTube 视频作为背景视频:
python main.py --url https://www.youtube.com/watch?v=dQw4w9WgXcQ --tts en-US-JennyNeural
  • 修改字幕字体颜色:
python main.py --sub_format b --font_color #FFF000 --tts en-US-JennyNeural
  • 生成带有随机 TTS 语音的 TikTok 视频:
python main.py --random_voice --gender Male --language en-US
  • 列出所有可用的声音:
edge-tts --list-voices

其他资源:

reddit2json是一个 Python 脚本,可将 Reddit 帖子 URL 转换为 JSON 文件,从而简化创建 video.json 文件的过程。该工具不仅可以转换 Reddit 链接,还提供使用 DeepL 翻译 Reddit 帖子内容以及通过自定义 OpenAI GPT 调用修改内容等功能。

reddit2json:直接将 Reddit 链接转换为 JSON

reddit2json 旨在处理 Reddit 帖子 URL 列表,将它们转换为可直接用于视频创建的 JSON 格式。该工具通过提供更快、更有效的方式来生成 video.json 文件,从而增强了视频创建过程。

这是 reddit2json 的详细自述文件,其中包括安装说明、设置 .env 文件、示例调用等。

0个回复

  • 龙族们都在等待回复

提供中小企业建站高端正版精品系统

正品模板 购买协议