Search.setIndex({"docnames": ["examples", "index"], "filenames": ["examples.rst", "index.rst"], "titles": ["Example: Blocking Mode Audio I/O", "PyAudio Documentation"], "terms": {"pyaudio": 0, "plai": [0, 1], "wave": [0, 1], "file": [0, 1], "import": [0, 1], "sy": [0, 1], "chunk": [0, 1], "1024": [0, 1], "len": [0, 1], "argv": [0, 1], "2": [0, 1], "print": [0, 1], "f": [0, 1], "usag": [0, 1], "0": [0, 1], "filenam": [0, 1], "wav": [0, 1], "exit": [0, 1], "1": [0, 1], "open": [0, 1], "rb": [0, 1], "wf": [0, 1], "instanti": [0, 1], "initi": [0, 1], "portaudio": [0, 1], "system": [0, 1], "resourc": [0, 1], "p": [0, 1], "stream": 0, "format": [0, 1], "get_format_from_width": [0, 1], "getsampwidth": [0, 1], "channel": [0, 1], "getnchannel": [0, 1], "rate": [0, 1], "getframer": [0, 1], "output": [0, 1], "true": [0, 1], "sampl": [0, 1], "from": [0, 1], "3": [0, 1], "while": [0, 1], "data": [0, 1], "readfram": [0, 1], "requir": [0, 1], "python": [0, 1], "8": [0, 1], "write": [0, 1], "close": [0, 1], "4": [0, 1], "releas": [0, 1], "5": [0, 1], "termin": [0, 1], "To": [0, 1], "us": [0, 1], "first": [0, 1], "which": [0, 1], "acquir": [0, 1], "record": [0, 1], "desir": [0, 1], "devic": [0, 1], "paramet": [0, 1], "thi": [0, 1], "set": [0, 1], "up": [0, 1], "read": [0, 1], "note": [0, 1], "each": [0, 1], "until": [0, 1], "all": [0, 1], "frame": [0, 1], "have": [0, 1], "been": [0, 1], "an": [0, 1], "altern": [0, 1], "approach": [0, 1], "describ": [0, 1], "below": [0, 1], "invok": [0, 1], "user": [0, 1], "defin": [0, 1], "function": [0, 1], "process": [0, 1], "gener": [0, 1], "final": [0, 1], "session": [0, 1], "version": [0, 1], "time": [0, 1], "playback": [0, 1], "def": [0, 1], "in_data": [0, 1], "frame_count": [0, 1], "time_info": [0, 1], "statu": [0, 1], "If": [0, 1], "less": [0, 1], "than": [0, 1], "request": [0, 1], "automat": [0, 1], "assum": [0, 1], "finish": [0, 1], "stop": [0, 1], "return": [0, 1], "pacontinu": [0, 1], "stream_callback": [0, 1], "wait": [0, 1], "is_act": [0, 1], "sleep": [0, 1], "6": [0, 1], "In": [0, 1], "call": [0, 1], "whenev": [0, 1], "need": [0, 1], "new": [0, 1], "when": [0, 1], "becom": [0, 1], "avail": [0, 1], "separ": [0, 1], "thread": [0, 1], "The": [0, 1], "must": [0, 1], "follow": [0, 1], "signatur": [0, 1], "input_data": [0, 1], "status_flag": [0, 1], "It": [0, 1], "tupl": [0, 1], "contain": [0, 1], "flag": [0, 1], "signifi": [0, 1], "whether": [0, 1], "ar": [0, 1], "more": [0, 1], "expect": [0, 1], "For": [0, 1], "input": [0, 1], "onli": [0, 1], "portion": [0, 1], "valu": [0, 1], "ignor": [0, 1], "start": [0, 1], "onc": [0, 1], "repeatedli": [0, 1], "pacomplet": [0, 1], "paabort": [0, 1], "either": [0, 1], "fewer": [0, 1], "argument": [0, 1], "after": [0, 1], "those": [0, 1], "keep": [0, 1], "activ": [0, 1], "main": [0, 1], "remain": [0, 1], "aliv": [0, 1], "e": [0, 1], "g": [0, 1], "abov": [0, 1], "entir": [0, 1], "wavefil": [0, 1], "eventu": [0, 1], "loop": [0, 1], "end": [0, 1], "provid": 1, "bind": 1, "cross": 1, "librari": 1, "With": 1, "you": 1, "can": 1, "easili": 1, "varieti": 1, "convers": 1, "conveni": 1, "get_sample_s": 1, "get_portaudio_vers": 1, "get_portaudio_version_text": 1, "pafloat32": 1, "paint32": 1, "paint24": 1, "paint16": 1, "paint8": 1, "pauint8": 1, "pacustomformat": 1, "host": 1, "api": 1, "paindevelop": 1, "padirectsound": 1, "pamm": 1, "paasio": 1, "pasoundmanag": 1, "pacoreaudio": 1, "paoss": 1, "paalsa": 1, "paal": 1, "pabeo": 1, "pawdmk": 1, "pajack": 1, "pawasapi": 1, "panodevic": 1, "error": 1, "code": 1, "panoerror": 1, "panotiniti": 1, "paunanticipatedhosterror": 1, "painvalidchannelcount": 1, "painvalidsampler": 1, "painvaliddevic": 1, "painvalidflag": 1, "pasampleformatnotsupport": 1, "pabadiodevicecombin": 1, "painsufficientmemori": 1, "pabuffertoobig": 1, "pabuffertoosmal": 1, "panullcallback": 1, "pabadstreamptr": 1, "patimedout": 1, "painternalerror": 1, "padeviceunavail": 1, "paincompatiblehostapispecificstreaminfo": 1, "pastreamisstop": 1, "pastreamisnotstop": 1, "painputoverflow": 1, "paoutputunderflow": 1, "pahostapinotfound": 1, "painvalidhostapi": 1, "pacannotreadfromacallbackstream": 1, "pacannotwritetoacallbackstream": 1, "pacannotreadfromanoutputonlystream": 1, "pacannotwritetoaninputonlystream": 1, "paincompatiblestreamhostapi": 1, "portautio": 1, "painputunderflow": 1, "paoutputoverflow": 1, "paprimingoutput": 1, "width": 1, "unsign": 1, "constant": 1, "specifi": 1, "byte": 1, "sign": 1, "rais": 1, "valueerror": 1, "invalid": 1, "type": 1, "A": 1, "int": 1, "text": 1, "string": 1, "size": 1, "integ": 1, "9": 1, "advanc": 1, "linux": 1, "sound": 1, "architectur": 1, "steinberg": 1, "ocur": 1, "10": 1, "beo": 1, "wa": 1, "last": 1, "There": 1, "come": 1, "coreaudio": 1, "osx": 1, "65536": 1, "custom": 1, "directsound": 1, "window": 1, "32": 1, "bit": 1, "float": 1, "still": 1, "develop": 1, "buffer": 1, "overflow": 1, "underflow": 1, "16": 1, "24": 1, "12": 1, "jack": 1, "connect": 1, "kit": 1, "multimedia": 1, "extens": 1, "Not": 1, "actual": 1, "7": 1, "just": 1, "prime": 1, "yet": 1, "soundmanag": 1, "13": 1, "vista": 1, "stack": 1, "11": 1, "driver": 1, "model": 1, "interfac": 1, "method": 1, "queri": 1, "inspect": 1, "manag": 1, "get_host_api_count": 1, "get_default_host_api_info": 1, "get_host_api_info_by_typ": 1, "get_host_api_info_by_index": 1, "get_device_info_by_host_api_device_index": 1, "get_device_count": 1, "is_format_support": 1, "get_default_input_device_info": 1, "get_default_output_device_info": 1, "get_device_info_by_index": 1, "__init__": 1, "__weakref__": 1, "list": 1, "weak": 1, "refer": 1, "object": 1, "instead": 1, "instanc": 1, "doe": 1, "exist": 1, "dictionari": 1, "default": 1, "kei": 1, "mirror": 1, "field": 1, "": 1, "pahostapiinfo": 1, "structur": 1, "ioerror": 1, "dict": 1, "padeviceinfo": 1, "No": 1, "number": 1, "host_api_index": 1, "host_api_device_index": 1, "given": 1, "n": 1, "th": 1, "index": 1, "device_index": 1, "host_api_typ": 1, "input_devic": 1, "none": 1, "input_channel": 1, "input_format": 1, "output_devic": 1, "output_channel": 1, "output_format": 1, "check": 1, "configur": 1, "support": 1, "otherwis": 1, "hz": 1, "half": 1, "duplex": 1, "modul": 1, "bool": 1, "arg": 1, "kwarg": 1, "see": 1, "constructor": 1, "attent": 1, "Be": 1, "sure": 1, "everi": 1, "pa_manag": 1, "fals": 1, "input_device_index": 1, "output_device_index": 1, "frames_per_buff": 1, "input_host_api_specific_stream_info": 1, "output_host_api_specific_stream_info": 1, "wrapper": 1, "info": 1, "get_input_lat": 1, "get_output_lat": 1, "get_tim": 1, "get_cpu_load": 1, "start_stream": 1, "stop_stream": 1, "is_stop": 1, "get_read_avail": 1, "get_write_avail": 1, "do": 1, "directli": 1, "both": 1, "unspecifi": 1, "per": 1, "run": 1, "immedi": 1, "reason": 1, "inform": 1, "non": 1, "oper": 1, "conform": 1, "els": 1, "pacallbackflag": 1, "input_buffer_adc_tim": 1, "current_tim": 1, "output_buffer_dac_tim": 1, "mean": 1, "one": 1, "out_data": 1, "arrai": 1, "whose": 1, "length": 1, "should": 1, "least": 1, "except": 1, "occur": 1, "traceback": 1, "standard": 1, "aid": 1, "debug": 1, "queue": 1, "thrown": 1, "some": 1, "point": 1, "addit": 1, "http": 1, "com": 1, "doc": 1, "v19": 1, "doxydoc": 1, "portaudio_8h": 1, "html": 1, "a8a60fb2a5ec9cbade3f54a9c978e2710": 1, "neither": 1, "nor": 1, "cpu": 1, "load": 1, "alwai": 1, "latenc": 1, "without": 1, "written": 1, "num_fram": 1, "exception_on_overflow": 1, "silent": 1, "unsuccess": 1, "exception_on_underflow": 1, "comput": 1, "improv": 1, "perform": 1, "especi": 1, "slower": 1, "search": 1, "page": 1}, "objects": {"": [[1, 0, 0, "-", "pyaudio"]], "pyaudio": [[1, 1, 1, "", "PyAudio"], [1, 4, 1, "", "get_format_from_width"], [1, 4, 1, "", "get_portaudio_version"], [1, 4, 1, "", "get_portaudio_version_text"], [1, 4, 1, "", "get_sample_size"], [1, 5, 1, "", "paAL"], [1, 5, 1, "", "paALSA"], [1, 5, 1, "", "paASIO"], [1, 5, 1, "", "paAbort"], [1, 5, 1, "", "paBeOS"], [1, 5, 1, "", "paComplete"], [1, 5, 1, "", "paContinue"], [1, 5, 1, "", "paCoreAudio"], [1, 5, 1, "", "paCustomFormat"], [1, 5, 1, "", "paDirectSound"], [1, 5, 1, "", "paFloat32"], [1, 5, 1, "", "paInDevelopment"], [1, 5, 1, "", "paInputOverflow"], [1, 5, 1, "", "paInputUnderflow"], [1, 5, 1, "", "paInt16"], [1, 5, 1, "", "paInt24"], [1, 5, 1, "", "paInt32"], [1, 5, 1, "", "paInt8"], [1, 5, 1, "", "paJACK"], [1, 5, 1, "", "paMME"], [1, 5, 1, "", "paNoDevice"], [1, 5, 1, "", "paOSS"], [1, 5, 1, "", "paOutputOverflow"], [1, 5, 1, "", "paOutputUnderflow"], [1, 5, 1, "", "paPrimingOutput"], [1, 5, 1, "", "paSoundManager"], [1, 5, 1, "", "paUInt8"], [1, 5, 1, "", "paWASAPI"], [1, 5, 1, "", "paWDMKS"]], "pyaudio.PyAudio": [[1, 1, 1, "", "Stream"], [1, 2, 1, "", "__init__"], [1, 3, 1, "", "__weakref__"], [1, 2, 1, "", "close"], [1, 2, 1, "", "get_default_host_api_info"], [1, 2, 1, "", "get_default_input_device_info"], [1, 2, 1, "", "get_default_output_device_info"], [1, 2, 1, "", "get_device_count"], [1, 2, 1, "", "get_device_info_by_host_api_device_index"], [1, 2, 1, "", "get_device_info_by_index"], [1, 2, 1, "", "get_format_from_width"], [1, 2, 1, "", "get_host_api_count"], [1, 2, 1, "", "get_host_api_info_by_index"], [1, 2, 1, "", "get_host_api_info_by_type"], [1, 2, 1, "", "get_sample_size"], [1, 2, 1, "", "is_format_supported"], [1, 2, 1, "", "open"], [1, 2, 1, "", "terminate"]], "pyaudio.PyAudio.Stream": [[1, 2, 1, "", "__init__"], [1, 3, 1, "", "__weakref__"], [1, 2, 1, "", "close"], [1, 2, 1, "", "get_cpu_load"], [1, 2, 1, "", "get_input_latency"], [1, 2, 1, "", "get_output_latency"], [1, 2, 1, "", "get_read_available"], [1, 2, 1, "", "get_time"], [1, 2, 1, "", "get_write_available"], [1, 2, 1, "", "is_active"], [1, 2, 1, "", "is_stopped"], [1, 2, 1, "", "read"], [1, 2, 1, "", "start_stream"], [1, 2, 1, "", "stop_stream"], [1, 2, 1, "", "write"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:attribute", "4": "py:function", "5": "py:data"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "function", "Python function"], "5": ["py", "data", "Python data"]}, "titleterms": {"exampl": [0, 1], "block": [0, 1], "mode": [0, 1], "audio": [0, 1], "i": [0, 1], "o": [0, 1], "callback": [0, 1], "pyaudio": 1, "document": 1, "content": 1, "introduct": 1, "overview": 1, "detail": 1, "class": 1, "stream": 1, "platform": 1, "specif": 1, "indic": 1, "tabl": 1}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 57}, "alltitles": {"Example: Blocking Mode Audio I/O": [[0, "example-blocking-mode-audio-i-o"], [1, "example-blocking-mode-audio-i-o"]], "Example: Callback Mode Audio I/O": [[0, "example-callback-mode-audio-i-o"], [1, "example-callback-mode-audio-i-o"]], "PyAudio Documentation": [[1, "pyaudio-documentation"]], "Contents": [[1, "contents"]], "Introduction": [[1, "module-pyaudio"]], "Overview": [[1, "overview"]], "Details": [[1, "details"]], "Class PyAudio": [[1, "class-pyaudio"]], "Class PyAudio.Stream": [[1, "class-pyaudio-stream"]], "Platform Specific": [[1, "platform-specific"]], "Indices and tables": [[1, "indices-and-tables"]]}, "indexentries": {"pyaudio (class in pyaudio)": [[1, "pyaudio.PyAudio"]], "stream (class in pyaudio.pyaudio)": [[1, "pyaudio.PyAudio.Stream"]], "__init__() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.__init__"]], "__init__() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.__init__"]], "__weakref__ (pyaudio.pyaudio attribute)": [[1, "pyaudio.PyAudio.__weakref__"]], "__weakref__ (pyaudio.pyaudio.stream attribute)": [[1, "pyaudio.PyAudio.Stream.__weakref__"]], "close() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.close"]], "close() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.close"]], "get_cpu_load() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.get_cpu_load"]], "get_default_host_api_info() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_default_host_api_info"]], "get_default_input_device_info() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_default_input_device_info"]], "get_default_output_device_info() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_default_output_device_info"]], "get_device_count() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_device_count"]], "get_device_info_by_host_api_device_index() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_device_info_by_host_api_device_index"]], "get_device_info_by_index() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_device_info_by_index"]], "get_format_from_width() (in module pyaudio)": [[1, "pyaudio.get_format_from_width"]], "get_format_from_width() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_format_from_width"]], "get_host_api_count() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_host_api_count"]], "get_host_api_info_by_index() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_host_api_info_by_index"]], "get_host_api_info_by_type() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_host_api_info_by_type"]], "get_input_latency() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.get_input_latency"]], "get_output_latency() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.get_output_latency"]], "get_portaudio_version() (in module pyaudio)": [[1, "pyaudio.get_portaudio_version"]], "get_portaudio_version_text() (in module pyaudio)": [[1, "pyaudio.get_portaudio_version_text"]], "get_read_available() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.get_read_available"]], "get_sample_size() (in module pyaudio)": [[1, "pyaudio.get_sample_size"]], "get_sample_size() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.get_sample_size"]], "get_time() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.get_time"]], "get_write_available() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.get_write_available"]], "is_active() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.is_active"]], "is_format_supported() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.is_format_supported"]], "is_stopped() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.is_stopped"]], "module": [[1, "module-pyaudio"]], "open() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.open"]], "paal (in module pyaudio)": [[1, "pyaudio.paAL"]], "paalsa (in module pyaudio)": [[1, "pyaudio.paALSA"]], "paasio (in module pyaudio)": [[1, "pyaudio.paASIO"]], "paabort (in module pyaudio)": [[1, "pyaudio.paAbort"]], "pabeos (in module pyaudio)": [[1, "pyaudio.paBeOS"]], "pacomplete (in module pyaudio)": [[1, "pyaudio.paComplete"]], "pacontinue (in module pyaudio)": [[1, "pyaudio.paContinue"]], "pacoreaudio (in module pyaudio)": [[1, "pyaudio.paCoreAudio"]], "pacustomformat (in module pyaudio)": [[1, "pyaudio.paCustomFormat"]], "padirectsound (in module pyaudio)": [[1, "pyaudio.paDirectSound"]], "pafloat32 (in module pyaudio)": [[1, "pyaudio.paFloat32"]], "paindevelopment (in module pyaudio)": [[1, "pyaudio.paInDevelopment"]], "painputoverflow (in module pyaudio)": [[1, "pyaudio.paInputOverflow"]], "painputunderflow (in module pyaudio)": [[1, "pyaudio.paInputUnderflow"]], "paint16 (in module pyaudio)": [[1, "pyaudio.paInt16"]], "paint24 (in module pyaudio)": [[1, "pyaudio.paInt24"]], "paint32 (in module pyaudio)": [[1, "pyaudio.paInt32"]], "paint8 (in module pyaudio)": [[1, "pyaudio.paInt8"]], "pajack (in module pyaudio)": [[1, "pyaudio.paJACK"]], "pamme (in module pyaudio)": [[1, "pyaudio.paMME"]], "panodevice (in module pyaudio)": [[1, "pyaudio.paNoDevice"]], "paoss (in module pyaudio)": [[1, "pyaudio.paOSS"]], "paoutputoverflow (in module pyaudio)": [[1, "pyaudio.paOutputOverflow"]], "paoutputunderflow (in module pyaudio)": [[1, "pyaudio.paOutputUnderflow"]], "paprimingoutput (in module pyaudio)": [[1, "pyaudio.paPrimingOutput"]], "pasoundmanager (in module pyaudio)": [[1, "pyaudio.paSoundManager"]], "pauint8 (in module pyaudio)": [[1, "pyaudio.paUInt8"]], "pawasapi (in module pyaudio)": [[1, "pyaudio.paWASAPI"]], "pawdmks (in module pyaudio)": [[1, "pyaudio.paWDMKS"]], "pyaudio": [[1, "module-pyaudio"]], "read() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.read"]], "start_stream() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.start_stream"]], "stop_stream() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.stop_stream"]], "terminate() (pyaudio.pyaudio method)": [[1, "pyaudio.PyAudio.terminate"]], "write() (pyaudio.pyaudio.stream method)": [[1, "pyaudio.PyAudio.Stream.write"]]}})