I used to rely on edge-tts for voiceovers, and it worked flawlessly. Unfortunately, since late last year, it started throwing frequent 403 errors. Initially, it was limited to China, and using a foreign IP offered a temporary fix, but now the error occurs globally. It seems that even a tech giant like Microsoft can't handle the excessive "free riding."
If you still want to use edge-tts, proceed with caution and use it sparingly, especially avoid frequent operations on the same IP. Otherwise, the Microsoft server will directly return a 403 error. For clarity, the software will display a "rate limit error." Here are two solutions:
- Try deploying the interface to Cloudflare to leverage its dynamic nature, which can reduce the occurrence of 403 errors. Refer to this document for specific instructions: https://pvt9.com/edgettscf
- Alternatively, continue using it locally but with a dynamic proxy, meaning changing the IP for each request. See this article for specific instructions: https://pvt9.com/edgetts-proxy
Using Local Voiceover Models
Besides edge-tts, you can also use some open-source local voiceover models such as GPT-SoVITS, ChatTTS-ui, Fish-TTS, F5-TTS, CosyVoice, Clone-voice, KokoroTTS, and more. These are free and can be used by deploying them on your own computer. However, this requires some extra time for configuration and demands certain computer hardware and technical skills.
If you want to give it a try, refer to this tutorial: https://pvt9.com/gptsovits. More instructions are also available in the left sidebar of the page.
Using Online Voiceover API Alternatives
If your hardware isn't good enough or you don't want to bother with local deployment, you can choose online voiceover APIs like OpenAI TTS, Azure TTS, ByteDance Volcano Engine TTS, etc.
However, using OpenAI TTS or Azure TTS directly in China requires a VPN, the free quota is very limited, and paid subscriptions require a foreign phone number and credit card, which is quite troublesome. It's recommended to use a domestically accessible OpenAI TTS relay service or Azure TTS relay service for much more convenience.
If you are using the official OpenAI TTS, simply open Menu--TTS Settings--OpenAI TTS API in the software and fill in your SK in the SK text box, without any additional settings. But don't forget, you need a VPN to use it in China.
The following steps explain how to use third-party relayed OpenAI TTS voiceovers, Azure TTS voiceovers, and ByteDance voice synthesis.
Using 302.AI or other third-party OpenAI TTS Relay APIs
Registration and login address (get $1 credit): https://share.302.ai/pyvideo
The steps are very simple:
- In the software's Menu--TTS Settings--OpenAI TTS API, fill in the API URL as
https://api.302.ai/v1
. If you are using another company's relay API, fill in the address they provide, usually ending with/v1
. - In the SK text box, fill in the API Key you created on 302.AI. If it is another third-party service, fill in the Key they provided.
Test it out. If the voiceover audio plays automatically, it means the settings are successful. Then, select OpenAI TTS in the voiceover channel on the software's main interface to use it. Supported voices include:
alloy, ash, coral, echo, fable, onyx, nova, sage, shimmer
.
Using Azure TTS relayed by 302.AI
Registration and login address (get $1 credit): https://share.302.ai/pyvideo
OpenAI TTS only has 9 voices, and the Chinese pronunciation is a bit slurred. If you don't think it's good enough, try Azure TTS. This is a Microsoft product with more voices and better results than edge-tts. However, using it directly in China requires a foreign credit card. If it's inconvenient, you can use the relay API provided by 302.AI.
Operation method:
- Create a Key on 302.AI.
- Open the software's Menu--Translation Settings--302.AI and fill in the Key. Note that this time, you fill it in the "302.AI" option under the "Translation Settings" menu.
After filling it in, you can use all the voiceover roles of Azure TTS. Moreover, 302.AI also relays ByteDance voice synthesis, so ByteDance's voices can also be used directly.
Using ByteDance Voice Synthesis Independently
There is already a detailed tutorial for ByteDance voice synthesis, you can check it out: https://pvt9.com/volcenginetts.
However, please note that only the general male voice and general female voice are available by default. If you want other voices, you need to purchase them separately from the ByteDance official website on a monthly basis. It's not cost-effective if you only use it occasionally. It is recommended to directly use the 302.AI mentioned above, which can directly use various ByteDance voices for more convenience.