Files
server-configs/__pycache__/edge_tts.cpython-311.pyc

42 lines
5.3 KiB
Plaintext
Raw Normal View History

2026-02-13 22:24:27 +08:00
<EFBFBD>
s <0B>i<EFBFBD> <00><00><><00>dZddlZddlZddlZddlZddlmZdZdZd d<08>Zd <09>Z d
<EFBFBD>Z
e d krej e
<EFBFBD><00><00><00>dSdS) uG
Edge TTS - 文字转语音
使用 Microsoft Edge 的免费 TTS 服务
<EFBFBD>N)<01>datetimezzh-CN-XiaoxiaoNeuralz/root/.openclaw/media/tts<74>+0%<25>+0Hzc<00><00><>K<00>|pt}|<04>ttjtd<02><03><00>tj<00>tdt tj<00><00><00> <00><00><00><00><00>d<05><03><00>} tj ||||<03><06><00>}|<05> |<04><00><00>d{V<00><03>|S#t$r}td|<06><00><02><00>Yd}~dSd}~wwxYw)u将文字转换为语音NT)<01>exist_ok<6F>tts_z.mp3)<02>rate<74>pitchu❌ TTS 生成失败: )<0F>VOICE<43>os<6F>makedirs<72>
OUTPUT_DIR<EFBFBD>path<74>join<69>intr<00>now<6F> timestamp<6D>edge_tts<74> Communicate<74>save<76> Exception<6F>print)<07>text<78>voicer r
<00> output_file<6C> communicate<74>es <20>%/root/.openclaw/workspace/edge_tts.py<70>text_to_speechrs<><00><00><00><00> <11>N<EFBFBD>U<EFBFBD>E<EFBFBD><12><1A>
<EFBFBD> <0B>J<EFBFBD><14>.<2E>.<2E>.<2E>.<2E><18>g<EFBFBD>l<EFBFBD>l<EFBFBD>:<3A>/[<5B>c<EFBFBD>(<28>,<2C>.<2E>.<2E>:R<>:R<>:T<>:T<>6U<36>6U<36>/[<5B>/[<5B>/[<5B>\<5C>\<5C> <0B><14><1E>*<2A>4<EFBFBD><15>T<EFBFBD><15>O<>O<>O<> <0B><19><1E><1E>{<7B>+<2B>+<2B>+<2B>+<2B>+<2B>+<2B>+<2B>+<2B>+<2B><1A><1A><> <14><14><14><14> <0A>*<2A>q<EFBFBD>*<2A>*<2A>+<2B>+<2B>+<2B><13>t<EFBFBD>t<EFBFBD>t<EFBFBD>t<EFBFBD>t<EFBFBD><74><EFBFBD><EFBFBD><EFBFBD><14><><EFBFBD>s<00>4B8<00>8
C<03>C<03>Cc<00><00><>K<00>tj<00><00><00>d{V<00><03>}tdt|<00><00><00>d<03><03><00>d<04>|D<00><00>}td<05><00>|dd<06>D]$}td|d<00>d |d
<00>d <0B><05><00><00>%d <0C>|D<00><00>}td <0A><00>|dd<06>D]$}td|d<00>d |d
<00>d <0B><05><00><00>%dS)u列出所有可用的语音Nu
可用语音 (u 个):
c<00>H<00>g|]}|d<00>d<01><00><00>|<01><02> S)<02>Lang<6E>zh<7A><01>
startswith<EFBFBD><02>.0<EFBFBD>vs r<00>
<listcomp>zlist_voices.<locals>.<listcomp>(<00>/<00><00>A<>A<>A<>q<EFBFBD>a<EFBFBD><06>i<EFBFBD>&:<3A>&:<3A>4<EFBFBD>&@<40>&@<40>A<><11>A<>A<>A<>u🇨🇳 中文语音:<3A>
z - <20>Namez (r"<00>)c<00>H<00>g|]}|d<00>d<01><00><00>|<01><02> S)r"<00>enr$r&s rr)zlist_voices.<locals>.<listcomp>.r*r+u
🇺🇸 英文语音:)r<00>
get_voicesr<00>len)<04>voices<65> zh_voicesr(<00> en_voicess r<00> list_voicesr6!s"<00><00><00><00><1B>&<26>(<28>(<28> (<28> (<28> (<28> (<28> (<28> (<28>F<EFBFBD> <09>
2<EFBFBD>S<EFBFBD><16>[<5B>[<5B>
2<EFBFBD>
2<EFBFBD>
2<EFBFBD>3<>3<>3<>B<01>A<>F<EFBFBD>A<>A<>A<>I<EFBFBD> <09>
"<22>#<23>#<23>#<23> <16>s<EFBFBD><02>s<EFBFBD>^<5E>1<>1<><01> <0A>/<2F>a<EFBFBD><06>i<EFBFBD>/<2F>/<2F>1<EFBFBD>V<EFBFBD>9<EFBFBD>/<2F>/<2F>/<2F>0<>0<>0<>0<>B<01>A<>F<EFBFBD>A<>A<>A<>I<EFBFBD> <09>
$<24>%<25>%<25>%<25> <16>s<EFBFBD><02>s<EFBFBD>^<5E>1<>1<><01> <0A>/<2F>a<EFBFBD><06>i<EFBFBD>/<2F>/<2F>1<EFBFBD>V<EFBFBD>9<EFBFBD>/<2F>/<2F>/<2F>0<>0<>0<>0<>1<>1r+c<00><00><>K<00>tjdd<00>}|s<>td<02><00>td<03><00>td<04><00>td<05><00>td<06><00>td<07><00>td<08><00>td <09><00>td
<EFBFBD><00>dS|d }td d dd<0E>}d}|t |<00><00>kr<>||<00>dd<10><00>}|dzt |<00><00>kr ||dznd}|dks|dkr||d<nX|dks|dkr||d<nF|dks|dkr||d<n4|dks|dkr||d<n"|dks|dkrt <00><00><00>d{V<00><03>dS|dz }|t |<00><00>k<00><>t||d|d|d|d<00><0E><00><00>d{V<00><03>}|rtd|<06><00><02><00>dSdS)N<>u用法:u# python edge_tts.py "文本内容"uF python edge_tts.py "文本" --voice zh-CN-XiaoxiaoNeural --rate +10%z" python edge_tts.py --list-voicesu
选项:u --voice, -v 语音名称u$ --rate, -r 语速 (+/-百分比)u --pitch, -p 音调 (+/-Hz)u! --output, -o 输出文件路径rrr)rr r
rz--<2D>rr(r <00>rr
<00>p<>output<75>orz list-voices<65>L<>u✅ 生成成功: )<08>sys<79>argvrr r2<00>replacer6r)<07>argsr<00>options<6E>i<>key<65>valuer<s r<00>mainrH3sg<00><00><00><00> <0E>8<EFBFBD>A<EFBFBD>B<EFBFBD>B<EFBFBD><<3C>D<EFBFBD> <0F>
<0F> <0A>i<EFBFBD><18><18><18> <0A>5<>6<>6<>6<> <0A>X<>Y<>Y<>Y<> <0A>2<>3<>3<>3<> <0A>k<EFBFBD><1A><1A><1A> <0A>+<2B>,<2C>,<2C>,<2C> <0A>4<>5<>5<>5<> <0A>-<2D>.<2E>.<2E>.<2E> <0A>1<>2<>2<>2<><0E><06> <10><01>7<EFBFBD>D<EFBFBD><16><15><17><1B> <06><06>G<EFBFBD>
<EFBFBD>A<EFBFBD>
<0B>c<EFBFBD>$<24>i<EFBFBD>i<EFBFBD>-<2D>-<2D><12>1<EFBFBD>g<EFBFBD>o<EFBFBD>o<EFBFBD>d<EFBFBD>B<EFBFBD>'<27>'<27><03> <20>1<EFBFBD>u<EFBFBD>s<EFBFBD>4<EFBFBD>y<EFBFBD>y<EFBFBD>0<>0<><04>Q<EFBFBD><11>U<EFBFBD> <0B> <0B>b<EFBFBD><05> <0E>'<27>><3E>><3E>S<EFBFBD>C<EFBFBD>Z<EFBFBD>Z<EFBFBD>$<24>G<EFBFBD>G<EFBFBD> <1C> <1C> <10>F<EFBFBD>]<5D>]<5D>c<EFBFBD>S<EFBFBD>j<EFBFBD>j<EFBFBD>#<23>G<EFBFBD>F<EFBFBD>O<EFBFBD>O<EFBFBD> <10>G<EFBFBD>^<5E>^<5E>s<EFBFBD>c<EFBFBD>z<EFBFBD>z<EFBFBD>$<24>G<EFBFBD>G<EFBFBD> <1C> <1C> <10>H<EFBFBD>_<EFBFBD>_<EFBFBD><03>s<EFBFBD>
<EFBFBD>
<EFBFBD>%*<2A>G<EFBFBD>M<EFBFBD> "<22> "<22> <10>M<EFBFBD> !<21> !<21>S<EFBFBD>C<EFBFBD>Z<EFBFBD>Z<EFBFBD><1D>-<2D>-<2D> <1F> <1F> <1F> <1F> <1F> <1F> <1F> <12>F<EFBFBD> <09>Q<EFBFBD><06><01>! <0C>c<EFBFBD>$<24>i<EFBFBD>i<EFBFBD>-<2D>-<2D>&"<22> <0C><15>g<EFBFBD><1E> <14>V<EFBFBD>_<EFBFBD><15>g<EFBFBD><1E><1B>M<EFBFBD>*<2A> <06><06><06><06><06><06><06><06><06>F<EFBFBD><0E>-<2D> <0A>+<2B>6<EFBFBD>+<2B>+<2B>,<2C>,<2C>,<2C>,<2C>,<2C>-<2D>-r+<00>__main__)NrrN) <0A>__doc__<5F>asynciorr r@rr rrr6rH<00>__name__<5F>run<75>r+r<00><module>rOs<><00><01><04><04>
<0F><0E><0E><0E><0F><0F><0F><0F> <09> <09> <09> <09>
<EFBFBD>
<EFBFBD>
<EFBFBD>
<EFBFBD><1D><1D><1D><1D><1D><1D> <1F><05> (<28>
<EFBFBD><14><14><14><14> 1<>1<>1<>$5-<2D>5-<2D>5-<2D>n <0C>z<EFBFBD><19><19><0F>G<EFBFBD>K<EFBFBD><04><04><06><06><17><17><17><17><17><1A>r+