Format: application/octet-stream
1 import sys
2 from typing import IO, Any, BinaryIO, NamedTuple, NoReturn, Optional, Text, Tuple, Union
3
4 _File = Union[Text, IO[bytes]]
5
6 class Error(Exception): ...
7
8 WAVE_FORMAT_PCM: int
9
10 if sys.version_info < (3, 0):
11 _wave_params = Tuple[int, int, int, int, str, str]
12 else:
13 class _wave_params(NamedTuple):
14 nchannels: int
15 sampwidth: int
16 framerate: int
17 nframes: int
18 comptype: str
19 compname: str
20
21 class Wave_read:
22 def __init__(self, f: _File) -> None: ...
23 if sys.version_info >= (3, 0):
24 def __enter__(self) -> Wave_read: ...
25 def __exit__(self, *args: Any) -> None: ...
26 def getfp(self) -> Optional[BinaryIO]: ...
27 def rewind(self) -> None: ...
28 def close(self) -> None: ...
29 def tell(self) -> int: ...
30 def getnchannels(self) -> int: ...
31 def getnframes(self) -> int: ...
32 def getsampwidth(self) -> int: ...
33 def getframerate(self) -> int: ...
34 def getcomptype(self) -> str: ...
35 def getcompname(self) -> str: ...
36 def getparams(self) -> _wave_params: ...
37 def getmarkers(self) -> None: ...
38 def getmark(self, id: Any) -> NoReturn: ...
39 def setpos(self, pos: int) -> None: ...
40 def readframes(self, nframes: int) -> bytes: ...
41
42 class Wave_write:
43 def __init__(self, f: _File) -> None: ...
44 if sys.version_info >= (3, 0):
45 def __enter__(self) -> Wave_write: ...
46 def __exit__(self, *args: Any) -> None: ...
47 def setnchannels(self, nchannels: int) -> None: ...
48 def getnchannels(self) -> int: ...
49 def setsampwidth(self, sampwidth: int) -> None: ...
50 def getsampwidth(self) -> int: ...
51 def setframerate(self, framerate: float) -> None: ...
52 def getframerate(self) -> int: ...
53 def setnframes(self, nframes: int) -> None: ...
54 def getnframes(self) -> int: ...
55 def setcomptype(self, comptype: str, compname: str) -> None: ...
56 def getcomptype(self) -> str: ...
57 def getcompname(self) -> str: ...
58 def setparams(self, params: _wave_params) -> None: ...
59 def getparams(self) -> _wave_params: ...
60 def setmark(self, id: Any, pos: Any, name: Any) -> NoReturn: ...
61 def getmark(self, id: Any) -> NoReturn: ...
62 def getmarkers(self) -> None: ...
63 def tell(self) -> int: ...
64 # should be any bytes-like object after 3.4, but we don't have a type for that
65 def writeframesraw(self, data: bytes) -> None: ...
66 def writeframes(self, data: bytes) -> None: ...
67 def close(self) -> None: ...
68
69 # Returns a Wave_read if mode is rb and Wave_write if mode is wb
70 def open(f: _File, mode: Optional[str] = ...) -> Any: ...
71
72 if sys.version_info < (3, 9):
73 openfp = open
74