Fix Python 3.7 support
* X | Y shorthand is not supported there
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
[metadata]
|
[metadata]
|
||||||
name = edge-tts
|
name = edge-tts
|
||||||
version = 6.0.1
|
version = 6.0.2
|
||||||
author = rany
|
author = rany
|
||||||
author_email = ranygh@riseup.net
|
author_email = ranygh@riseup.net
|
||||||
description = Microsoft Edge's TTS
|
description = Microsoft Edge's TTS
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import json
|
|||||||
import re
|
import re
|
||||||
import time
|
import time
|
||||||
import uuid
|
import uuid
|
||||||
from typing import Any, AsyncGenerator, Dict, Generator, List, Optional
|
from typing import Any, AsyncGenerator, Dict, Generator, List, Optional, Tuple, Union
|
||||||
from xml.sax.saxutils import escape
|
from xml.sax.saxutils import escape
|
||||||
|
|
||||||
import aiohttp
|
import aiohttp
|
||||||
@@ -17,7 +17,7 @@ from edge_tts.exceptions import NoAudioReceived, UnexpectedResponse, UnknownResp
|
|||||||
from .constants import WSS_URL
|
from .constants import WSS_URL
|
||||||
|
|
||||||
|
|
||||||
def get_headers_and_data(data: str | bytes) -> tuple[Dict[str, str], bytes]:
|
def get_headers_and_data(data: Union[str, bytes]) -> Tuple[Dict[str, str], bytes]:
|
||||||
"""
|
"""
|
||||||
Returns the headers and data from the given data.
|
Returns the headers and data from the given data.
|
||||||
|
|
||||||
@@ -43,7 +43,7 @@ def get_headers_and_data(data: str | bytes) -> tuple[Dict[str, str], bytes]:
|
|||||||
return headers, b"\r\n\r\n".join(data.split(b"\r\n\r\n")[1:])
|
return headers, b"\r\n\r\n".join(data.split(b"\r\n\r\n")[1:])
|
||||||
|
|
||||||
|
|
||||||
def remove_incompatible_characters(string: str | bytes) -> str:
|
def remove_incompatible_characters(string: Union[str, bytes]) -> str:
|
||||||
"""
|
"""
|
||||||
The service does not support a couple character ranges.
|
The service does not support a couple character ranges.
|
||||||
Most important being the vertical tab character which is
|
Most important being the vertical tab character which is
|
||||||
@@ -95,7 +95,7 @@ def iter_bytes(my_bytes: bytes) -> Generator[bytes, None, None]:
|
|||||||
yield my_bytes[i : i + 1]
|
yield my_bytes[i : i + 1]
|
||||||
|
|
||||||
|
|
||||||
def split_text_by_byte_length(text: str | bytes, byte_length: int) -> List[bytes]:
|
def split_text_by_byte_length(text: Union[str, bytes], byte_length: int) -> List[bytes]:
|
||||||
"""
|
"""
|
||||||
Splits a string into a list of strings of a given byte length
|
Splits a string into a list of strings of a given byte length
|
||||||
while attempting to keep words together.
|
while attempting to keep words together.
|
||||||
@@ -132,7 +132,9 @@ def split_text_by_byte_length(text: str | bytes, byte_length: int) -> List[bytes
|
|||||||
return words
|
return words
|
||||||
|
|
||||||
|
|
||||||
def mkssml(text: str | bytes, voice: str, pitch: str, rate: str, volume: str) -> str:
|
def mkssml(
|
||||||
|
text: Union[str, bytes], voice: str, pitch: str, rate: str, volume: str
|
||||||
|
) -> str:
|
||||||
"""
|
"""
|
||||||
Creates a SSML string from the given parameters.
|
Creates a SSML string from the given parameters.
|
||||||
|
|
||||||
@@ -401,7 +403,9 @@ class Communicate:
|
|||||||
)
|
)
|
||||||
|
|
||||||
async def save(
|
async def save(
|
||||||
self, audio_fname: str | bytes, metadata_fname: Optional[str | bytes] = None
|
self,
|
||||||
|
audio_fname: Union[str, bytes],
|
||||||
|
metadata_fname: Optional[Union[str, bytes]] = None,
|
||||||
) -> None:
|
) -> None:
|
||||||
"""
|
"""
|
||||||
Save the audio and metadata to the specified files.
|
Save the audio and metadata to the specified files.
|
||||||
|
|||||||
Reference in New Issue
Block a user