Hướng dẫn sd rec python - sd rec python

Mô -đun Python này cung cấp các ràng buộc cho thư viện Portaudio và một vài chức năng tiện lợi để chơi và ghi lại các mảng numpy chứa tín hiệu âm thanh.

Tài liệu: http: //python-sounddevice.readthedocs.io/source CODE CÔNG TY VÀ TRANG WEBER phát hành: http: //github.com/spatialaudio/python-sounddevice/python chỉ mục: http: //pypi.python.org /SoundDevice/Giấy phép: MIT - Xem tệp
sd.default.samplerate = fs
3 để biết chi tiết.

Yêu cầu công

Python: Tất nhiên, bạn sẽ cần Python. Bất kỳ phiên bản nào trong đó CFFI (xem bên dưới) được hỗ trợ sẽ hoạt động. Nếu bạn không cài đặt Python, bạn nên nhận một trong các bản phân phối đã bao gồm CFFI và Numpy (và nhiều điều hữu ích khác), ví dụ: Anaconda hoặc Winpython.pip/setuptools:

Những điều đó là cần thiết cho việc cài đặt mô -đun Python và các phụ thuộc của nó. Hầu hết các hệ thống sẽ đã cài đặt chúng đã được cài đặt, nhưng nếu không, bạn nên cài đặt nó với trình quản lý gói của mình hoặc bạn có thể tải xuống và cài đặt PIP và setuptools như được mô tả trên trang Cài đặt PIP. Nếu bạn tình cờ có PIP nhưng không setuptools, hãy sử dụng lệnh này:

python3 -m pip install setuptools --user

CFFI:

Giao diện chức năng nước ngoài C cho Python được sử dụng để truy cập C-API của thư viện Portaudio từ bên trong Python. Nó hỗ trợ Cpython 2.6, 2.7, 3.x; và được phân phối với pypy. Nếu nó chưa được cài đặt, bạn nên cài đặt nó với trình quản lý gói của mình (gói có thể được gọi là

sd.default.samplerate = fs
4 hoặc tương tự) hoặc bạn có thể nhận được nó với:

python3 -m pip install cffi --user

Thư viện Portaudio: Thư viện Portaudio phải được cài đặt trên hệ thống của bạn (và CFFI phải có thể tìm thấy nó). Một lần nữa, bạn nên sử dụng trình quản lý gói của mình để cài đặt nó (gói có thể được gọi là
sd.default.samplerate = fs
5 hoặc tương tự). Nếu bạn thích, tất nhiên bạn cũng có thể tải xuống các nguồn và tự biên dịch thư viện. Nếu bạn đang sử dụng Mac OS X hoặc Windows, thư viện sẽ được cài đặt tự động với PIP (xem Cài đặt trên mạng bên dưới) .numpy (Tùy chọn): Chỉ cần Numpy nếu bạn muốn phát lại và ghi lại các mảng Numpy. Các lớp
sd.default.samplerate = fs
6,
sd.default.samplerate = fs
7 và
sd.default.samplerate = fs
8 Sử dụng các đối tượng đệm Python đơn giản và don don cần numpy. Nếu bạn cần Numpy, bạn nên cài đặt nó với Trình quản lý gói của mình hoặc sử dụng phân phối Python đã bao gồm Numpy (xem ở trên). Cài đặt Numpy với PIP yêu cầu một trình biên dịch và một số thư viện bổ sung và do đó không được khuyến nghị cho người mới bắt đầu.

Cài đặt¶

Khi bạn đã cài đặt các phụ thuộc đã đề cập ở trên, bạn có thể sử dụng PIP để tải xuống và cài đặt bản phát hành mới nhất với một lệnh duy nhất:

python3 -m pip install sounddevice --user

Nếu bạn muốn cài đặt CNTT toàn hệ thống cho tất cả người dùng (giả sử bạn có các quyền cần thiết), bạn chỉ có thể bỏ tùy chọn

sd.default.samplerate = fs
9.

Để không cài đặt, sử dụng:

python3 -m pip uninstall sounddevice

Nếu bạn đang sử dụng Windows, bạn có thể cài đặt một trong các gói được cung cấp tại http://www.lfd.uci.edu/~gohlke/pythonlibs/#sounddevice. Thư viện Portaudio cũng được bao gồm trong gói và bạn có thể nhận được phần còn lại của các phụ thuộc trên cùng một trang.

Cách sử dụng¶

Đầu tiên, nhập mô -đun:

Phát lại

Giả sử bạn có một mảng Numpy có tên

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
0 giữ dữ liệu âm thanh với tần số lấy mẫu là
duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
1 (trong hầu hết các trường hợp, đây sẽ là 44100 hoặc 48000 khung mỗi giây), bạn có thể phát lại với
duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
2:

Hàm này trả về ngay lập tức nhưng tiếp tục chơi tín hiệu âm thanh trong nền. Bạn có thể ngừng phát lại với

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
3:

Nếu bạn biết rằng bạn sẽ sử dụng cùng một tần số lấy mẫu trong một thời gian, bạn có thể đặt nó làm mặc định bằng cách sử dụng

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
4:

sd.default.samplerate = fs

Sau đó, bạn có thể bỏ đối số lấy mẫu:

Ghi âm¶

Để ghi lại dữ liệu âm thanh từ thiết bị âm thanh của bạn vào một mảng numpy, hãy sử dụng

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
5:

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)

Một lần nữa, để sử dụng lặp lại, bạn có thể đặt mặc định bằng

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
6:

sd.default.samplerate = fs
sd.default.channels = 2

Sau đó, bạn có thể bỏ các đối số bổ sung:

myrecording = sd.rec(duration * fs)

Hàm này cũng trả về ngay lập tức nhưng tiếp tục ghi trong nền. Trong thời gian chờ đợi, bạn có thể chạy các lệnh khác. Nếu bạn muốn kiểm tra xem bản ghi đã kết thúc, bạn nên sử dụng

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
7:

Nếu bản ghi đã kết thúc, điều này sẽ trả lại ngay lập tức; Nếu không, nó chờ đợi và trả lại ngay khi bản ghi kết thúc.

Ngoài ra, bạn có thể đã sử dụng đối số chặn ngay từ đầu:

myrecording = sd.rec(duration * fs, blocking=True)

Theo mặc định, mảng được ghi lại có kiểu dữ liệu

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
8 (xem
duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
9), nhưng điều này có thể được thay đổi với đối số DTYPE:

myrecording = sd.rec(duration * fs, dtype='float64')

Phát lại và ghi âm đồng thời

Để phát lại một mảng và ghi lại cùng một lúc, hãy sử dụng

sd.default.samplerate = fs
sd.default.channels = 2
0:

python3 -m pip install cffi --user
0

Số lượng kênh đầu ra được lấy từ

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
0, nhưng số lượng kênh đầu vào vẫn phải được chỉ định.

Một lần nữa, các giá trị mặc định có thể được sử dụng:

python3 -m pip install cffi --user
1

Trong trường hợp này, số lượng kênh đầu ra vẫn được lấy từ

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
0 (có thể có hoặc không có 2 kênh), nhưng số lượng kênh đầu vào được lấy từ
sd.default.samplerate = fs
sd.default.channels = 2
3.

Lựa chọn thiết bị

Trong nhiều trường hợp, (các) thiết bị đầu vào/đầu ra mặc định sẽ là một (các) thiết bị bạn muốn, nhưng tất nhiên có thể chọn một thiết bị khác. Sử dụng

sd.default.samplerate = fs
sd.default.channels = 2
4 để có được danh sách các thiết bị được hỗ trợ. Danh sách tương tự có thể được lấy từ một thiết bị đầu cuối bằng cách nhập lệnh

Bạn có thể sử dụng ID thiết bị tương ứng để chọn một thiết bị mong muốn bằng cách gán cho

sd.default.samplerate = fs
sd.default.channels = 2
5 hoặc bằng cách chuyển nó làm đối số thiết bị cho
duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
2,
sd.default.samplerate = fs
sd.default.channels = 2
7, v.v.

Thay vì ID thiết bị số, bạn cũng có thể sử dụng danh sách phân tách không gian của các chuỗi con không nhạy cảm của tên thiết bị (và tên API máy chủ, nếu cần). Xem

sd.default.samplerate = fs
sd.default.channels = 2
5 để biết chi tiết.

python3 -m pip install cffi --user
2

Các luồng gọi lại

Callback Dây dây với

sd.default.samplerate = fs
sd.default.channels = 2
9:

python3 -m pip install cffi --user
3

Điều tương tự với

sd.default.samplerate = fs
6:

python3 -m pip install cffi --user
4

Ghi chú

Chúng tôi đang sử dụng các mẫu 24 bit ở đây mà không có lý do cụ thể (chỉ vì chúng tôi có thể).

Đóng góp¶

Nếu bạn tìm thấy lỗi, lỗi, thiếu sót hoặc những thứ khác cần cải thiện, vui lòng tạo sự cố hoặc yêu cầu kéo tại http://github.com/spatialaudio/python-sounddevice/. Đóng góp luôn được chào đón!

Thay vì cài đặt PIP bản phát hành mới nhất từ ​​PYPI, bạn nên nhận phiên bản phát triển mới nhất từ ​​GitHub:

python3 -m pip install cffi --user
5

Bằng cách này, cài đặt của bạn luôn luôn cập nhật, ngay cả khi bạn rút các thay đổi mới từ kho lưu trữ GitHub.

Nếu bạn thích, bạn cũng có thể thay thế lệnh cuối cùng bằng:

python3 -m pip install cffi --user
6

... Trường hợp

myrecording = sd.rec(duration * fs)
1 là viết tắt của
myrecording = sd.rec(duration * fs)
2.

Nếu bạn đã sử dụng tùy chọn

myrecording = sd.rec(duration * fs)
3 khi nhân bản, các thư viện động cho MacOS và Windows đã có sẵn. Nếu không, bạn có thể nhận được mô hình con với:

python3 -m pip install cffi --user
7

Nếu bạn thay đổi tài liệu, bạn có thể tạo lại cục bộ các trang HTML bằng Sphinx. Bạn có thể cài đặt nó và một vài gói cần thiết khác với:

python3 -m pip install cffi --user
8

Để tạo các trang HTML, hãy sử dụng:

python3 -m pip install cffi --user
9

Các tệp được tạo sẽ có sẵn trong thư mục

myrecording = sd.rec(duration * fs)
4.

Tài liệu API

Chơi và thu âm âm thanh với Python.

http://python-sounddevice.readthedocs.io/

A(data, samplerate=None, mapping=None, blocking=False, loop=False, **kwargs)[source]

Phát lại một mảng numpy chứa dữ liệu âm thanh.

Parameters:
  • Dữ liệu (Array_like) - Dữ liệu âm thanh sẽ được phát lại. Các cột của một mảng hai chiều được hiểu là các kênh, các mảng một chiều được coi là dữ liệu đơn sắc. Các loại dữ liệu Float64, Float32, Int32, Int16, Int8 và Uint8 có thể được sử dụng. Dữ liệu float64 chỉ đơn giản được chuyển đổi thành float32 trước khi chuyển nó cho portaudio, bởi vì nó không được hỗ trợ tự nhiên. (array_like) – Audio data to be played back. The columns of a two-dimensional array are interpreted as channels, one-dimensional arrays are treated as mono data. The data types float64, float32, int32, int16, int8 and uint8 can be used. float64 data is simply converted to float32 before passing it to PortAudio, because it’s not supported natively.
  • Ánh xạ (Array_like, Tùy chọn) - Danh sách số kênh (bắt đầu với 1) trong đó các cột dữ liệu sẽ được phát lại. Phải có cùng độ dài với số lượng kênh trong dữ liệu (trừ khi dữ liệu là mono, trong trường hợp đó tín hiệu được phát lại trên tất cả các kênh đầu ra đã cho). Mỗi số kênh chỉ có thể xuất hiện một lần trong ánh xạ. (array_like, optional) – List of channel numbers (starting with 1) where the columns of data shall be played back on. Must have the same length as number of channels in data (except if data is mono, in which case the signal is played back on all given output channels). Each channel number may only appear once in mapping.
  • chặn (bool, tùy chọn) - nếu
    myrecording = sd.rec(duration * fs)
    
    7 (mặc định), trả về ngay lập tức (nhưng phát lại vẫn tiếp tục trong nền), nếu
    myrecording = sd.rec(duration * fs)
    
    8, hãy đợi cho đến khi phát lại kết thúc. Một lời cầu khẩn không chặn có thể được dừng lại với
    myrecording = sd.rec(duration * fs)
    
    9 hoặc biến thành một chặn chặn với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    0.
    (bool, optional) – If
    myrecording = sd.rec(duration * fs)
    
    7 (the default), return immediately (but playback continues in the background), if
    myrecording = sd.rec(duration * fs)
    
    8, wait until playback is finished. A non-blocking invocation can be stopped with
    myrecording = sd.rec(duration * fs)
    
    9 or turned into a blocking one with
    myrecording = sd.rec(duration * fs, blocking=True)
    
    0.
  • Loop (Bool, Tùy chọn) - Phát dữ liệu trong một vòng lặp. (bool, optional) – Play data in a loop.
Các tham số khác:
& nbsp;

Lấy mẫu, ** kwargs - tất cả các tham số của

myrecording = sd.rec(duration * fs, blocking=True)
1 - ngoại trừ các kênh, DTYPE, Callback và Forest_Callback - có thể được sử dụng. – All parameters of
myrecording = sd.rec(duration * fs, blocking=True)
1 – except channels, dtype, callback and finished_callback – can be used.

________ 75 ________ 83 (khung = none, sampleRate = none, kênh = không(frames=None, samplerate=None, channels=None, dtype=None, out=None, mapping=None, blocking=False, **kwargs)[source]

Ghi lại dữ liệu âm thanh vào một mảng numpy.

Parameters:
  • khung (int, đôi khi tùy chọn) - số lượng khung để ghi. Không cần thiết nếu ra ngoài được đưa ra. (int, sometimes optional) – Number of frames to record. Not needed if out is given.
  • Kênh (int, tùy chọn) - Số lượng kênh để ghi. Không cần thiết nếu ánh xạ hoặc ra ngoài được đưa ra. Giá trị mặc định có thể được thay đổi với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    4.
    (int, optional) – Number of channels to record. Not needed if mapping or out is given. The default value can be changed with
    myrecording = sd.rec(duration * fs, blocking=True)
    
    4.
  • DTYPE (str hoặc numpy.dtype, tùy chọn) - loại dữ liệu của bản ghi. Không cần thiết nếu ra ngoài được đưa ra. Các loại dữ liệu float64, float32, int32, int16, int8 và uint8 có thể được sử dụng. Đối với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    5, dữ liệu âm thanh được ghi lại ở định dạng float32 và được chuyển đổi sau đó, bởi vì nó không được hỗ trợ bởi portaudio. Giá trị mặc định có thể được thay đổi với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6.
    (str or numpy.dtype, optional) – Data type of the recording. Not needed if out is given. The data types float64, float32, int32, int16, int8 and uint8 can be used. For
    myrecording = sd.rec(duration * fs, blocking=True)
    
    5, audio data is recorded in float32 format and converted afterwards, because it’s not natively supported by PortAudio. The default value can be changed with
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6.
  • Ánh xạ (Array_like, Tùy chọn) - Danh sách số kênh (bắt đầu bằng 1) để ghi. Nếu ánh xạ được đưa ra, các kênh bị bỏ qua âm thầm. (array_like, optional) – List of channel numbers (starting with 1) to record. If mapping is given, channels is silently ignored.
  • chặn (bool, tùy chọn) - nếu
    myrecording = sd.rec(duration * fs)
    
    7 (mặc định), trả về ngay lập tức (nhưng ghi lại tiếp tục ở chế độ nền), nếu
    myrecording = sd.rec(duration * fs)
    
    8, hãy đợi cho đến khi ghi kết thúc. Một lời cầu khẩn không chặn có thể được dừng lại với
    myrecording = sd.rec(duration * fs)
    
    9 hoặc biến thành một chặn chặn với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    0.
    (bool, optional) – If
    myrecording = sd.rec(duration * fs)
    
    7 (the default), return immediately (but recording continues in the background), if
    myrecording = sd.rec(duration * fs)
    
    8, wait until recording is finished. A non-blocking invocation can be stopped with
    myrecording = sd.rec(duration * fs)
    
    9 or turned into a blocking one with
    myrecording = sd.rec(duration * fs, blocking=True)
    
    0.
Returns:

numpy.ndarray hoặc loại (ra) - dữ liệu được ghi lại.

Ghi chú

Theo mặc định (

myrecording = sd.rec(duration * fs, dtype='float64')
1), một mảng dữ liệu được trả về vẫn đang được ghi vào khi ghi! Dữ liệu được trả về chỉ hợp lệ khi ghi lại đã dừng. Sử dụng
myrecording = sd.rec(duration * fs, blocking=True)
0 để đảm bảo bản ghi kết thúc.

Các tham số khác:
& nbsp;
  • Out (numpy.ndarray hoặc lớp con, tùy chọn) - Nếu được chỉ định, dữ liệu được ghi lại được ghi vào mảng đã cho thay vì tạo một mảng mới. Trong trường hợp này, các khung đối số, kênh và DTYPE bị bỏ qua âm thầm! Nếu ánh xạ được đưa ra, độ dài của nó phải khớp với số lượng kênh trong out. (numpy.ndarray or subclass, optional) – If out is specified, the recorded data is written into the given array instead of creating a new array. In this case, the arguments frames, channels and dtype are silently ignored! If mapping is given, its length must match the number of channels in out.
  • Lấy mẫu, ** kwargs - tất cả các tham số của
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    3 - ngoại trừ Callback và Forest_callback - có thể được sử dụng.
    – All parameters of
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    3 – except callback and finished_callback – can be used.
A(data, samplerate=None, channels=None, dtype=None, out=None, input_mapping=None, output_mapping=None, blocking=False, **kwargs)[source]

Phát lại đồng thời và ghi lại các mảng numpy.

Parameters:
  • Dữ liệu (Array_like) - Dữ liệu âm thanh sẽ được phát lại. Xem
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    6.
    (array_like) – Audio data to be played back. See
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    6.
  • Các kênh (int, đôi khi tùy chọn) - Số lượng kênh đầu vào, xem
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    7. Số lượng kênh đầu ra được lấy từ Data.Shape.
    (int, sometimes optional) – Number of input channels, see
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    7. The number of output channels is obtained from data.shape.
  • DTYPE (str hoặc numpy.dtype, tùy chọn) - Kiểu dữ liệu đầu vào, xem
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    7. Nếu DTYPE không được chỉ định, nó được lấy từ data.dtype (nghĩa là
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6 bị ​​bỏ qua). Kiểu dữ liệu đầu ra được lấy từ Data.dtype dù sao.
    (str or numpy.dtype, optional) – Input data type, see
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    7. If dtype is not specified, it is taken from data.dtype (i.e.
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6 is ignored). The output data type is obtained from data.dtype anyway.
  • input_mapping, output_mapping (Array_like, Tùy chọn) - Xem ánh xạ tham số của
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    7 và
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    6, tương ứng.
    (array_like, optional) – See the parameter mapping of
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    7 and
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    6, respectively.
  • Chặn (Bool, Tùy chọn) - Nếu
    myrecording = sd.rec(duration * fs)
    
    7 (mặc định), trả về ngay lập tức (nhưng tiếp tục phát lại/ghi trong nền), nếu
    myrecording = sd.rec(duration * fs)
    
    8, hãy đợi cho đến khi phát lại/ghi kết thúc. Một lời cầu khẩn không chặn có thể được dừng lại với
    myrecording = sd.rec(duration * fs)
    
    9 hoặc biến thành một chặn chặn với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    0.
    (bool, optional) – If
    myrecording = sd.rec(duration * fs)
    
    7 (the default), return immediately (but continue playback/recording in the background), if
    myrecording = sd.rec(duration * fs)
    
    8, wait until playback/recording is finished. A non-blocking invocation can be stopped with
    myrecording = sd.rec(duration * fs)
    
    9 or turned into a blocking one with
    myrecording = sd.rec(duration * fs, blocking=True)
    
    0.
Returns:

numpy.ndarray hoặc loại (ra) - dữ liệu được ghi lại. Xem

myrecording = sd.rec(duration * fs, dtype='float64')
7.

Các tham số khác:
& nbsp;
  • Out (numpy.ndarray hoặc lớp con, tùy chọn) - Nếu được chỉ định, dữ liệu được ghi lại được ghi vào mảng đã cho thay vì tạo một mảng mới. Trong trường hợp này, các khung đối số, kênh và DTYPE bị bỏ qua âm thầm! Nếu ánh xạ được đưa ra, độ dài của nó phải khớp với số lượng kênh trong out. (numpy.ndarray or subclass, optional) – See
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    7.
  • Lấy mẫu, ** kwargs - tất cả các tham số của
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    3 - ngoại trừ Callback và Forest_callback - có thể được sử dụng.
    – All parameters of
    python3 -m pip install cffi --user
    
    08 – except channels, dtype, callback and finished_callback – can be used.
A()[source]

Phát lại đồng thời và ghi lại các mảng numpy.

Dữ liệu (Array_like) - Dữ liệu âm thanh sẽ được phát lại. Xem

myrecording = sd.rec(duration * fs, dtype='float64')
6.

Returns:Các kênh (int, đôi khi tùy chọn) - Số lượng kênh đầu vào, xem
myrecording = sd.rec(duration * fs, dtype='float64')
7. Số lượng kênh đầu ra được lấy từ Data.Shape.
DTYPE (str hoặc numpy.dtype, tùy chọn) - Kiểu dữ liệu đầu vào, xem
myrecording = sd.rec(duration * fs, dtype='float64')
7. Nếu DTYPE không được chỉ định, nó được lấy từ data.dtype (nghĩa là
myrecording = sd.rec(duration * fs, blocking=True)
6 bị ​​bỏ qua). Kiểu dữ liệu đầu ra được lấy từ Data.dtype dù sao.(ignore_errors=True)[source]

input_mapping, output_mapping (Array_like, Tùy chọn) - Xem ánh xạ tham số của

myrecording = sd.rec(duration * fs, dtype='float64')
7 và
myrecording = sd.rec(duration * fs, dtype='float64')
6, tương ứng.

Chặn (Bool, Tùy chọn) - Nếu

myrecording = sd.rec(duration * fs)
7 (mặc định), trả về ngay lập tức (nhưng tiếp tục phát lại/ghi trong nền), nếu
myrecording = sd.rec(duration * fs)
8, hãy đợi cho đến khi phát lại/ghi kết thúc. Một lời cầu khẩn không chặn có thể được dừng lại với
myrecording = sd.rec(duration * fs)
9 hoặc biến thành một chặn chặn với
myrecording = sd.rec(duration * fs, blocking=True)
0.

numpy.ndarray hoặc loại (ra) - dữ liệu được ghi lại. Xem
myrecording = sd.rec(duration * fs, dtype='float64')
7.()[source]

ra (numpy.ndarray hoặc lớp con, tùy chọn) - xem

myrecording = sd.rec(duration * fs, dtype='float64')
7.

Returns:Lấy mẫu, ** KWARGS - Tất cả các tham số của
python3 -m pip install cffi --user
08 - ngoại trừ các kênh, DTYPE, Callback và Forewallback - có thể được sử dụng.
________ 75 ________ 110 () [Nguồn] ¶()[source]

Đợi ________ 96/________ 97/________ 113 được hoàn thành.

Phát lại/ghi âm có thể được dừng lại với

python3 -m pip install cffi --user
14.

Returns:CallbackFlags hoặc không có-nếu ít nhất một bộ đệm quá mức/underrun đã xảy ra trong lần phát/ghi âm cuối cùng, một đối tượng
python3 -m pip install cffi --user
15 được trả về.
________ 75 ________ 117 (bỏ qua_errors = true) [Nguồn] ¶(device=None, kind=None)[source]

Ngừng phát lại/ghi âm.

Điều này chỉ dừng

myrecording = sd.rec(duration * fs, dtype='float64')
6,
myrecording = sd.rec(duration * fs, dtype='float64')
7 và
python3 -m pip install cffi --user
13, nhưng không có ảnh hưởng đến các luồng được tạo bằng
python3 -m pip install cffi --user
08,
myrecording = sd.rec(duration * fs, dtype='float64')
3,
myrecording = sd.rec(duration * fs, blocking=True)
1,
python3 -m pip install cffi --user
24,
python3 -m pip install cffi --user
25,
python3 -m pip install cffi --user
26.

________ 75 ________ 128 () [Nguồn] ¶

Parameters:
  • Nhận thông tin về quá mức/dòng chảy trong ________ 96/________ 97/________ 113. (int or str, optional) – Numeric device ID or device name substring(s). If specified, information about only the given device is returned in a single dictionary.
  • CallbackFlags - Một đối tượng
    python3 -m pip install cffi --user
    
    15 chứa thông tin về việc gọi cuối cùng của
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    6,
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    7 hoặc
    python3 -m pip install cffi --user
    
    13.
    ({‘input’, ‘output’}, optional) – If device is not specified and kind is
    python3 -m pip install cffi --user
    
    50 or
    python3 -m pip install cffi --user
    
    51, a single dictionary is returned with information about the default input or output device, respectively.
Returns:

________ 75 ________ 137 () [Nguồn] ¶

python3 -m pip install cffi --user
53

Nhận một tham chiếu đến luồng hiện tại.

python3 -m pip install cffi --user
54

Điều này chỉ áp dụng cho các luồng được tạo bởi các cuộc gọi đến

myrecording = sd.rec(duration * fs, dtype='float64')
6,
myrecording = sd.rec(duration * fs, dtype='float64')
7 hoặc
python3 -m pip install cffi --user
13.

Luồng - một
myrecording = sd.rec(duration * fs, blocking=True)
1,
myrecording = sd.rec(duration * fs, dtype='float64')
3 hoặc
python3 -m pip install cffi --user
08 liên quan đến việc gọi cuối cùng của
myrecording = sd.rec(duration * fs, dtype='float64')
6,
myrecording = sd.rec(duration * fs, dtype='float64')
7 hoặc
python3 -m pip install cffi --user
13, tương ứng.

________ 75 ________ 148 (thiết bị = none, kint = none) [nguồn] ¶

Trả về thông tin về các thiết bị có sẵn.

Thông tin và khả năng của các thiết bị Portaudio. Các thiết bị có thể hỗ trợ đầu vào, đầu ra hoặc cả đầu vào và đầu ra.

Để tìm (các) thiết bị đầu vào/đầu ra mặc định, hãy sử dụng
python3 -m pip install cffi --user
49.

thiết bị (int hoặc str, tùy chọn) - ID thiết bị số hoặc (các) tên con thiết bị. Nếu được chỉ định, thông tin chỉ về thiết bị đã cho được trả về trong một từ điển.

python3 -m pip install cffi --user
71

Tần số lấy mẫu mặc định của thiết bị. Điều này được sử dụng nếu

python3 -m pip install cffi --user
72 không được đặt.

Ghi chú

Danh sách các thiết bị cũng có thể được hiển thị trong một thiết bị đầu cuối:

Ví dụ

python3 -m pip install cffi --user
52 được trả lại có thể được lập chỉ mục và lặp lại như bất kỳ loại trình tự nào (mang lại từ điển đã đề cập ở trên), nhưng nó cũng có một biểu diễn chuỗi đặc biệt được hiển thị khi được sử dụng trong phiên Python tương tác.

Mỗi thiết bị có sẵn được liệt kê trên một dòng cùng với ID thiết bị tương ứng, có thể được gán cho

python3 -m pip install cffi --user
49 hoặc được sử dụng làm đối số thiết bị trong
myrecording = sd.rec(duration * fs, dtype='float64')
6,
python3 -m pip install cffi --user
08, v.v.

Ký tự đầu tiên của một dòng là

python3 -m pip install cffi --user
77 cho thiết bị đầu vào mặc định,
python3 -m pip install cffi --user
78 cho thiết bị đầu ra mặc định và
python3 -m pip install cffi --user
79 cho thiết bị đầu vào/đầu ra mặc định. Sau ID thiết bị và tên thiết bị, tên API máy chủ tương ứng được hiển thị. Ở cuối mỗi dòng, số lượng kênh đầu vào và đầu ra tối đa được hiển thị.

Trên máy tính GNU/Linux, nó có thể trông giống như thế này:

python3 -m pip install sounddevice --user
0

Lưu ý rằng ALSA cung cấp quyền truy cập vào một số thiết bị thực tế của người Viking và một số thiết bị ảo. Cái sau đôi khi có số lượng đầu vào và đầu ra (ảo) cao một cách lố bịch.

Trên macOS, bạn có thể nhận được một cái gì đó tương tự như thế này:

python3 -m pip install sounddevice --user
1

________ 75 ________ 181 (index = none) [nguồn](index=None)[source]

Trả về thông tin về API máy chủ có sẵn.

Parameters:Index (int, tùy chọn) - Nếu được chỉ định, thông tin chỉ về chỉ mục API máy chủ đã cho được trả về trong một từ điển. (int, optional) – If specified, information about only the given host API index is returned in a single dictionary.
Returns:Dict hoặc Tuple of Dict - Một từ điển có thông tin về chỉ mục API máy chủ đã cho hoặc - nếu không có chỉ mục nào được chỉ định - một bộ chứa một từ điển cho mỗi API máy chủ có sẵn. Các từ điển có các khóa sau: ________ 153 Tên của API máy chủ API .________ 183A DANH SÁCH ID thiết bị thuộc API máy chủ. Sử dụng
python3 -m pip install cffi --user
84 để lấy thông tin về thiết bị .________ 185,
python3 -m pip install cffi --user
86 ID thiết bị của thiết bị đầu vào/đầu ra mặc định của API máy chủ. Nếu không có thiết bị đầu vào/đầu ra mặc định tồn tại cho API máy chủ đã cho, thì đây là -1.

Ghi chú

(Các) thiết bị mặc định tổng thể - có thể được ghi đè bằng cách gán cho

python3 -m pip install cffi --user
49 - ưu tiên (các) lần so với
python3 -m pip install cffi --user
88 và thông tin trong các từ điển đã đề cập.

________ 75 ________ 190 (thiết bị = không, kênh = không(device=None, channels=None, dtype=None, extra_settings=None, samplerate=None)[source]

Kiểm tra nếu cài đặt thiết bị đầu vào được hỗ trợ.

Tất cả các tham số là tùy chọn, cài đặt

python3 -m pip install cffi --user
91 được sử dụng cho bất kỳ tham số không xác định nào. Nếu các cài đặt được hỗ trợ, chức năng không làm gì cả; Nếu không, một ngoại lệ được nâng lên.

Parameters:
  • thiết bị (int hoặc str, tùy chọn) - ID thiết bị hoặc con tên thiết bị, xem
    python3 -m pip install cffi --user
    
    49.
    (int or str, optional) – Device ID or device name substring(s), see
    python3 -m pip install cffi --user
    
    49.
  • Các kênh (int, tùy chọn) - Số lượng kênh đầu vào, xem
    myrecording = sd.rec(duration * fs, blocking=True)
    
    4.
    (int, optional) – Number of input channels, see
    myrecording = sd.rec(duration * fs, blocking=True)
    
    4.
  • DTYPE (str hoặc numpy.dtype, tùy chọn) - Kiểu dữ liệu cho các mẫu đầu vào, xem
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6.
    (str or numpy.dtype, optional) – Data type for input samples, see
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6.
  • Extra_Sinstall (Cài đặt đối tượng, tùy chọn)-Điều này có thể được sử dụng cho các cài đặt đầu vào dành riêng cho máy chủ-API. Xem
    python3 -m pip install cffi --user
    
    95.
    (settings object, optional) – This can be used for host-API-specific input settings. See
    python3 -m pip install cffi --user
    
    95.
  • Lấy mẫu (phao, tùy chọn) - Tần số lấy mẫu, xem
    python3 -m pip install cffi --user
    
    72.
    (float, optional) – Sampling frequency, see
    python3 -m pip install cffi --user
    
    72.
A(device=None, channels=None, dtype=None, extra_settings=None, samplerate=None)[source]

Kiểm tra nếu cài đặt thiết bị đầu ra được hỗ trợ.

Giống như

python3 -m pip install cffi --user
99, chỉ dành cho cài đặt thiết bị đầu ra.

________ 75 ________ 201 (MSEC) [Nguồn] ¶(msec)[source]

Đặt người gọi ngủ ít nhất MSEC mili giây.

Chức năng có thể ngủ lâu hơn được yêu cầu, vì vậy don don dựa vào điều này cho thời gian âm nhạc chính xác.

________ 75 ________ 203 () [Nguồn] ¶()[source]

Nhận thông tin phiên bản cho Thư viện Portaudio.

Trả về số phát hành và mô tả văn bản của bản dựng Portaudio hiện tại, ví dụ:

python3 -m pip install sounddevice --user
2

Lớp ________ 75 ________ 205 [Nguồn] ¶[source]

Nhận/đặt mặc định cho mô -đun SoundDevice.

Các thuộc tính

python3 -m pip install sounddevice --user
06,
python3 -m pip install sounddevice --user
07,
python3 -m pip install sounddevice --user
08,
python3 -m pip install sounddevice --user
09 và
python3 -m pip install sounddevice --user
10 Chấp nhận các giá trị đơn lẻ chỉ định thuộc tính đã cho cho cả đầu vào và đầu ra. Tuy nhiên, nếu thuộc tính khác nhau giữa đầu vào và đầu ra, các cặp giá trị có thể được sử dụng, trong đó giá trị thứ nhất chỉ định đầu vào và giá trị thứ hai chỉ định đầu ra. Tất cả các thuộc tính khác luôn là các giá trị đơn.

Ví dụ

python3 -m pip install sounddevice --user
3

Các giá trị khác nhau cho đầu vào và đầu ra:

python3 -m pip install sounddevice --user
4

Một giá trị duy nhất đặt cả đầu vào và đầu ra cùng một lúc:

python3 -m pip install sounddevice --user
5

Một thuộc tính có thể được đặt thành mặc định của nhà máy trên mạng bằng cách gán

python3 -m pip install sounddevice --user
11:

python3 -m pip install sounddevice --user
6

Sử dụng

python3 -m pip install sounddevice --user
12 để đặt lại tất cả các thuộc tính:

python3 -m pip install sounddevice --user
13 = (không có, không có) ¶

Chỉ mục hoặc chuỗi truy vấn của thiết bị đầu vào/đầu ra mặc định.

Nếu không được ghi đè, điều này được truy vấn từ Portaudio.

Nếu một chuỗi được đưa ra, thiết bị được chọn chứa tất cả các bộ phận được phân tách theo không gian theo đúng thứ tự. Mỗi chuỗi thiết bị chứa tên của API máy chủ tương ứng cuối cùng. Việc so sánh chuỗi là không nhạy cảm trường hợp.

python3 -m pip install sounddevice --user
14 = (không có, không có) ¶

Số lượng kênh đầu vào/đầu ra.

Số lượng kênh tối đa cho một thiết bị nhất định có thể được tìm thấy với

python3 -m pip install cffi --user
84.

python3 -m pip install sounddevice --user
16 = ('float32', 'float32') ¶

Kiểu dữ liệu được sử dụng cho các mẫu đầu vào/đầu ra.

Các loại

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
8,
python3 -m pip install sounddevice --user
18,
python3 -m pip install sounddevice --user
19,
python3 -m pip install sounddevice --user
20 và
python3 -m pip install sounddevice --user
21 có thể được sử dụng cho tất cả các luồng và chức năng. Ngoài ra,
myrecording = sd.rec(duration * fs, dtype='float64')
6,
myrecording = sd.rec(duration * fs, dtype='float64')
7 và
python3 -m pip install cffi --user
13 Hỗ trợ
python3 -m pip install sounddevice --user
25 (để thuận tiện, dữ liệu chỉ được chuyển đổi từ/sang
duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
8) và
python3 -m pip install cffi --user
25,
python3 -m pip install cffi --user
26 và
python3 -m pip install cffi --user
24 hỗ trợ
python3 -m pip install sounddevice --user
30 (đóng gói 24 bit, không được hỗ trợ!)

Nếu Numpy có sẵn, các đối tượng

python3 -m pip install sounddevice --user
31 tương ứng cũng có thể được sử dụng.

Các biểu diễn điểm nổi

duration = 10.5  # seconds
myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
8 và
python3 -m pip install sounddevice --user
25 sử dụng +1.0 và -1.0 như các giá trị tối đa và tối thiểu, tương ứng.
python3 -m pip install sounddevice --user
21 là một định dạng 8 bit không dấu trong đó 128 được coi là mặt đất.

python3 -m pip install sounddevice --user
35 = ('cao', 'cao') ¶

Đề xuất độ trễ đầu vào/đầu ra tính bằng giây.

Các giá trị đặc biệt

python3 -m pip install cffi --user
64 và
python3 -m pip install cffi --user
70 có thể được sử dụng để chọn độ trễ thấp/cao mặc định của thiết bị đã chọn.
python3 -m pip install cffi --user
70 thường mạnh mẽ hơn (nghĩa là bộ đệm dưới/tràn ít có khả năng), nhưng độ trễ có thể quá lớn đối với các ứng dụng tương tác.

Cài đặt đầu vào/đầu ra cụ thể của máy chủ.

python3 -m pip install sounddevice --user
39 = không có

Tần số lấy mẫu trong Hertz (= khung mỗi giây).

python3 -m pip install sounddevice --user
40 = 0¶

Xem đối số khối của

python3 -m pip install cffi --user
08.

python3 -m pip install sounddevice --user
42 = Sai¶

Vô hiệu hóa cắt.

Được đặt thành

myrecording = sd.rec(duration * fs)
8 để vô hiệu hóa việc cắt mặc định của các mẫu ra khỏi phạm vi.

python3 -m pip install sounddevice --user
44 = Sai¶

Vô hiệu hóa hoà sắc.

Đặt thành

myrecording = sd.rec(duration * fs)
8 thành vô hiệu hóa màu sắc mặc định.

python3 -m pip install sounddevice --user
46 = Sai¶

Đặt hành vi cho tràn đầu vào của các luồng song công đầy đủ.

Được đặt thành

myrecording = sd.rec(duration * fs)
8 để yêu cầu rằng khi có thể một luồng song công đầy đủ sẽ không loại bỏ các mẫu đầu vào đã tràn mà không gọi gọi lại luồng. Cờ này chỉ có giá trị đối với các luồng gọi lại toàn diện (nghĩa là chỉ
python3 -m pip install cffi --user
08 và
python3 -m pip install cffi --user
24 và chỉ khi gọi lại được chỉ định; điều này bao gồm
python3 -m pip install cffi --user
13) và chỉ khi được sử dụng kết hợp với
python3 -m pip install sounddevice --user
51 (mặc định). Sử dụng cờ này không chính xác dẫn đến một lỗi đang được nâng lên. Xem thêm http://www.portaudio.com/docs/proposals/001-underflowoverflowhandling.html.

python3 -m pip install sounddevice --user
52 = Sai¶

Làm thế nào để lấp đầy bộ đệm đầu ra ban đầu.

Được đặt thành

myrecording = sd.rec(duration * fs)
8 để gọi gọi lại luồng để điền vào bộ đệm đầu ra ban đầu, thay vì hành vi mặc định của việc mồi các bộ đệm với số không (im lặng). Cờ này không có tác dụng cho chỉ đầu vào (
myrecording = sd.rec(duration * fs, dtype='float64')
3 và
python3 -m pip install cffi --user
25) và chặn các luồng đọc/ghi (nghĩa là nếu gọi lại được chỉ định). Xem thêm http://www.portaudio.com/docs/proposals/020-allowcallbacktoprimestream.html.

________ 256¶

Chỉ mục của API máy chủ mặc định (chỉ đọc).

________ 257 () [Nguồn] ¶()[source]

Đặt lại tất cả các thuộc tính cho nhà sản xuất của họ mặc định.

Lớp ________ 75 ________ 259 (SampleRate = none, blockSize = none, device = none, scores = none, dtype = none, latency = none , Prime_output_buffers_using_stream_callback = none) [Nguồn] ¶(samplerate=None, blocksize=None, device=None, channels=None, dtype=None, latency=None, extra_settings=None, callback=None, finished_callback=None, clip_off=None, dither_off=None, never_drop_input=None, prime_output_buffers_using_stream_callback=None)[source]

Mở một luồng cho đầu vào và đầu ra đồng thời.

Để mở một luồng chỉ đầu vào hoặc chỉ sử dụng luồng chỉ đầu ra

myrecording = sd.rec(duration * fs, dtype='float64')
3 hoặc
myrecording = sd.rec(duration * fs, blocking=True)
1, tương ứng. Nếu bạn muốn xử lý dữ liệu âm thanh dưới dạng các đối tượng bộ đệm đơn giản thay vì các mảng numpy, hãy sử dụng
python3 -m pip install cffi --user
24,
python3 -m pip install cffi --user
25 hoặc
python3 -m pip install cffi --user
26.

Một luồng duy nhất có thể cung cấp nhiều kênh đầu vào âm thanh phát trực tuyến thời gian thực và đầu ra cho ứng dụng máy khách. Một luồng cung cấp quyền truy cập vào phần cứng âm thanh được đại diện bởi một hoặc nhiều thiết bị. Tùy thuộc vào API máy chủ cơ bản, có thể mở nhiều luồng bằng cùng một thiết bị, tuy nhiên hành vi này được thực hiện được xác định. Các ứng dụng di động nên cho rằng một thiết bị có thể được sử dụng đồng thời nhiều nhất một luồng.

Thiết bị đối số, kênh, DTYPE và độ trễ có thể là các giá trị đơn (sẽ được sử dụng cho cả tham số đầu vào và đầu ra) hoặc các cặp giá trị (trong đó giá trị đầu tiên là giá trị cho đầu vào và mã thứ hai cho đầu ra).

Tất cả các đối số là tùy chọn, các giá trị cho các tham số không xác định được lấy từ đối tượng

python3 -m pip install cffi --user
91. Nếu một trong các giá trị của cặp tham số là
python3 -m pip install sounddevice --user
11, giá trị tương ứng từ
python3 -m pip install cffi --user
91 sẽ được sử dụng thay thế.

Luồng được tạo không hoạt động (xem

python3 -m pip install sounddevice --user
68,
python3 -m pip install sounddevice --user
69). Nó có thể được bắt đầu với
python3 -m pip install sounddevice --user
70.

Mỗi đối tượng luồng cũng là một trình quản lý ngữ cảnh, tức là nó có thể được sử dụng trong một câu lệnh để tự động gọi

python3 -m pip install sounddevice --user
70 khi bắt đầu câu lệnh và
myrecording = sd.rec(duration * fs)
9 và
python3 -m pip install sounddevice --user
73 khi thoát.context manager, i.e. it can be used in a with statement to automatically call
python3 -m pip install sounddevice --user
70 in the beginning of the statement and
myrecording = sd.rec(duration * fs)
9 and
python3 -m pip install sounddevice --user
73 on exit.

Parameters:
  • Lấy mẫu (float, tùy chọn) - tần số lấy mẫu mong muốn (cho cả đầu vào và đầu ra). Giá trị mặc định có thể được thay đổi với

    python3 -m pip install cffi --user
    
    72. (float, optional) – The desired sampling frequency (for both input and output). The default value can be changed with
    python3 -m pip install cffi --user
    
    72.

  • BlockSize (int, tùy chọn) - Số lượng khung được truyền đến hàm gọi lại luồng hoặc độ chi tiết khối ưa thích cho luồng đọc/ghi chặn. Giá trị đặc biệt

    python3 -m pip install sounddevice --user
    
    51 (mặc định) có thể được sử dụng để yêu cầu gọi lại luồng sẽ nhận được số lượng khung tối ưu (và có thể thay đổi) dựa trên các yêu cầu của máy chủ và cài đặt độ trễ được yêu cầu. Giá trị mặc định có thể được thay đổi với
    python3 -m pip install sounddevice --user
    
    76.
    (int, optional) – The number of frames passed to the stream callback function, or the preferred block granularity for a blocking read/write stream. The special value
    python3 -m pip install sounddevice --user
    
    51 (which is the default) may be used to request that the stream callback will receive an optimal (and possibly varying) number of frames based on host requirements and the requested latency settings. The default value can be changed with
    python3 -m pip install sounddevice --user
    
    76.

    Ghi chú

    Với một số API máy chủ, việc sử dụng khối khác không cho luồng gọi lại có thể giới thiệu một lớp đệm bổ sung có thể giới thiệu độ trễ bổ sung. Portaudio đảm bảo rằng độ trễ bổ sung sẽ được giữ ở mức tối thiểu lý thuyết, tuy nhiên, người ta khuyến nghị nên sử dụng giá trị khối khác không chỉ khi thuật toán của bạn yêu cầu một số khung cố định trên mỗi lần gọi lại.

  • thiết bị (int hoặc str hoặc cặp của chúng, tùy chọn) - Chỉ mục thiết bị hoặc (các) chuỗi truy vấn chỉ định (các) thiết bị sẽ được sử dụng. (Các) giá trị mặc định có thể được thay đổi với

    python3 -m pip install cffi --user
    
    49. (int or str or pair thereof, optional) – Device index(es) or query string(s) specifying the device(s) to be used. The default value(s) can be changed with
    python3 -m pip install cffi --user
    
    49.

  • Các kênh (int hoặc cặp int, tùy chọn) - Số lượng kênh âm thanh được gửi đến gọi lại luồng hoặc được truy cập bởi

    python3 -m pip install sounddevice --user
    
    78 hoặc
    python3 -m pip install sounddevice --user
    
    79. Nó có thể nằm trong khoảng từ 1 đến giá trị của
    python3 -m pip install cffi --user
    
    56 hoặc
    python3 -m pip install cffi --user
    
    57 trong dict được trả về bởi
    python3 -m pip install cffi --user
    
    84. Theo mặc định, số lượng kênh tối đa có thể cho thiết bị đã chọn được sử dụng (có thể không phải là thứ bạn muốn; xem
    python3 -m pip install cffi --user
    
    84). (Các) giá trị mặc định có thể được thay đổi với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    4.
    (int or pair of int, optional) – The number of channels of sound to be delivered to the stream callback or accessed by
    python3 -m pip install sounddevice --user
    
    78 or
    python3 -m pip install sounddevice --user
    
    79. It can range from 1 to the value of
    python3 -m pip install cffi --user
    
    56 or
    python3 -m pip install cffi --user
    
    57 in the dict returned by
    python3 -m pip install cffi --user
    
    84. By default, the maximum possible number of channels for the selected device is used (which may not be what you want; see
    python3 -m pip install cffi --user
    
    84). The default value(s) can be changed with
    myrecording = sd.rec(duration * fs, blocking=True)
    
    4.

  • DTYPE (str hoặc numpy.dtype hoặc cặp của chúng, tùy chọn) - định dạng mẫu của

    python3 -m pip install sounddevice --user
    
    85 được cung cấp cho cuộc gọi lại luồng,
    python3 -m pip install sounddevice --user
    
    78 hoặc
    python3 -m pip install sounddevice --user
    
    79. Nó có thể là bất kỳ FLOAT32, INT32, INT16, INT8, UINT8. Xem
    python3 -m pip install sounddevice --user
    
    31. Kiểu dữ liệu Float64 không được hỗ trợ, điều này chỉ được hỗ trợ để thuận tiện trong ________ 96/________ 97/________ 113. Định dạng 24 bit được đóng gói
    python3 -m pip install sounddevice --user
    
    30 chỉ được hỗ trợ trong các lớp luồng Raw Raw, xem
    python3 -m pip install cffi --user
    
    24. (Các) giá trị mặc định có thể được thay đổi với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6.
    (str or numpy.dtype or pair thereof, optional) – The sample format of the
    python3 -m pip install sounddevice --user
    
    85 provided to the stream callback,
    python3 -m pip install sounddevice --user
    
    78 or
    python3 -m pip install sounddevice --user
    
    79. It may be any of float32, int32, int16, int8, uint8. See
    python3 -m pip install sounddevice --user
    
    31. The float64 data type is not supported, this is only supported for convenience in
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    6/
    myrecording = sd.rec(duration * fs, dtype='float64')
    
    7/
    python3 -m pip install cffi --user
    
    13. The packed 24 bit format
    python3 -m pip install sounddevice --user
    
    30 is only supported in the “raw” stream classes, see
    python3 -m pip install cffi --user
    
    24. The default value(s) can be changed with
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6.

  • độ trễ (float hoặc {‘thấp,’ cao} hoặc cặp của chúng, tùy chọn) - độ trễ mong muốn tính bằng giây. Các giá trị đặc biệt

    python3 -m pip install cffi --user
    
    64 và
    python3 -m pip install cffi --user
    
    70 (sau là mặc định) chọn độ trễ thấp và cao mặc định, tương ứng (xem
    python3 -m pip install cffi --user
    
    84). (Các) giá trị mặc định có thể được thay đổi với
    python3 -m pip install cffi --user
    
    61. Trong trường hợp thực tế, việc triển khai sẽ cấu hình độ trễ của chúng dựa trên tham số này, nếu không họ có thể chọn độ trễ khả thi gần nhất thay thế. Trừ khi độ trễ được đề xuất lớn hơn giới hạn trên tuyệt đối cho thiết bị, việc triển khai sẽ làm tròn độ trễ theo giá trị thực tế tiếp theo - tức là để cung cấp độ trễ bằng hoặc cao hơn bất cứ khi nào có thể. Các giá trị độ trễ thực tế cho một luồng mở có thể được truy xuất bằng thuộc tính
    python3 -m pip install sounddevice --user
    
    09.
    (float or {‘low’, ‘high’} or pair thereof, optional) – The desired latency in seconds. The special values
    python3 -m pip install cffi --user
    
    64 and
    python3 -m pip install cffi --user
    
    70 (latter being the default) select the default low and high latency, respectively (see
    python3 -m pip install cffi --user
    
    84). The default value(s) can be changed with
    python3 -m pip install cffi --user
    
    61. Where practical, implementations should configure their latency based on this parameter, otherwise they may choose the closest viable latency instead. Unless the suggested latency is greater than the absolute upper limit for the device, implementations should round the latency up to the next practical value – i.e. to provide an equal or higher latency wherever possible. Actual latency values for an open stream may be retrieved using the
    python3 -m pip install sounddevice --user
    
    09 attribute.

  • Extra_Sinstall (Cài đặt đối tượng hoặc cặp của chúng, tùy chọn)-Điều này có thể được sử dụng cho cài đặt đầu vào/đầu ra cụ thể của máy chủ-API. Xem

    python3 -m pip install cffi --user
    
    95. (settings object or pair thereof, optional) – This can be used for host-API-specific input/output settings. See
    python3 -m pip install cffi --user
    
    95.

  • Callback (Callable, Tùy chọn)-Hàm do người dùng cung cấp để tiêu thụ, xử lý hoặc tạo dữ liệu âm thanh để đáp ứng các yêu cầu từ luồng

    python3 -m pip install sounddevice --user
    
    68. Khi một luồng đang chạy, Portaudio gọi cuộc gọi lại luồng định kỳ. Hàm gọi lại chịu trách nhiệm xử lý và điền vào bộ đệm đầu vào và đầu ra tương ứng. (callable, optional) – User-supplied function to consume, process or generate audio data in response to requests from an
    python3 -m pip install sounddevice --user
    
    68 stream. When a stream is running, PortAudio calls the stream callback periodically. The callback function is responsible for processing and filling input and output buffers, respectively.

    Nếu không có cuộc gọi lại được đưa ra, luồng sẽ được mở trong chế độ đọc/ghi. Trong chế độ chặn, máy khách có thể nhận dữ liệu mẫu bằng cách sử dụng

    python3 -m pip install sounddevice --user
    
    78 và ghi dữ liệu mẫu bằng cách sử dụng
    python3 -m pip install sounddevice --user
    
    79, số lượng khung có thể được đọc hoặc viết mà không chặn được trả về bởi
    python3 -m pip uninstall sounddevice
    
    04 và
    python3 -m pip uninstall sounddevice
    
    05, tương ứng.

    Cuộc gọi lại phải có chữ ký này:

    python3 -m pip install sounddevice --user
    
    7

    Đối số thứ nhất và thứ hai là bộ đệm đầu vào và đầu ra, tương ứng, khi

    python3 -m pip install sounddevice --user
    
    85 hai chiều với một cột trên mỗi kênh (tức là với hình dạng
    python3 -m pip uninstall sounddevice
    
    07) và với kiểu dữ liệu được chỉ định bởi
    python3 -m pip install sounddevice --user
    
    08. Bộ đệm đầu ra chứa dữ liệu không chính thức và cuộc gọi lại được cho là sẽ điền vào nó bằng dữ liệu âm thanh phù hợp. Nếu không có dữ liệu, bộ đệm phải được lấp đầy bằng các số không (ví dụ: bằng cách sử dụng
    python3 -m pip uninstall sounddevice
    
    09).

    Ghi chú

    Với một số API máy chủ, việc sử dụng khối khác không cho luồng gọi lại có thể giới thiệu một lớp đệm bổ sung có thể giới thiệu độ trễ bổ sung. Portaudio đảm bảo rằng độ trễ bổ sung sẽ được giữ ở mức tối thiểu lý thuyết, tuy nhiên, người ta khuyến nghị nên sử dụng giá trị khối khác không chỉ khi thuật toán của bạn yêu cầu một số khung cố định trên mỗi lần gọi lại.

    python3 -m pip install sounddevice --user
    
    8

    thiết bị (int hoặc str hoặc cặp của chúng, tùy chọn) - Chỉ mục thiết bị hoặc (các) chuỗi truy vấn chỉ định (các) thiết bị sẽ được sử dụng. (Các) giá trị mặc định có thể được thay đổi với

    python3 -m pip install cffi --user
    
    49.

    python3 -m pip install sounddevice --user
    
    9

    Các kênh (int hoặc cặp int, tùy chọn) - Số lượng kênh âm thanh được gửi đến gọi lại luồng hoặc được truy cập bởi

    python3 -m pip install sounddevice --user
    
    78 hoặc
    python3 -m pip install sounddevice --user
    
    79. Nó có thể nằm trong khoảng từ 1 đến giá trị của
    python3 -m pip install cffi --user
    
    56 hoặc
    python3 -m pip install cffi --user
    
    57 trong dict được trả về bởi
    python3 -m pip install cffi --user
    
    84. Theo mặc định, số lượng kênh tối đa có thể cho thiết bị đã chọn được sử dụng (có thể không phải là thứ bạn muốn; xem
    python3 -m pip install cffi --user
    
    84). (Các) giá trị mặc định có thể được thay đổi với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    4.

    python3 -m pip uninstall sounddevice
    
    0

    DTYPE (str hoặc numpy.dtype hoặc cặp của chúng, tùy chọn) - định dạng mẫu của

    python3 -m pip install sounddevice --user
    
    85 được cung cấp cho cuộc gọi lại luồng,
    python3 -m pip install sounddevice --user
    
    78 hoặc
    python3 -m pip install sounddevice --user
    
    79. Nó có thể là bất kỳ FLOAT32, INT32, INT16, INT8, UINT8. Xem
    python3 -m pip install sounddevice --user
    
    31. Kiểu dữ liệu Float64 không được hỗ trợ, điều này chỉ được hỗ trợ để thuận tiện trong ________ 96/________ 97/________ 113. Định dạng 24 bit được đóng gói
    python3 -m pip install sounddevice --user
    
    30 chỉ được hỗ trợ trong các lớp luồng Raw Raw, xem
    python3 -m pip install cffi --user
    
    24. (Các) giá trị mặc định có thể được thay đổi với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6.

    độ trễ (float hoặc {‘thấp,’ cao} hoặc cặp của chúng, tùy chọn) - độ trễ mong muốn tính bằng giây. Các giá trị đặc biệt

    python3 -m pip install cffi --user
    
    64 và
    python3 -m pip install cffi --user
    
    70 (sau là mặc định) chọn độ trễ thấp và cao mặc định, tương ứng (xem
    python3 -m pip install cffi --user
    
    84). (Các) giá trị mặc định có thể được thay đổi với
    python3 -m pip install cffi --user
    
    61. Trong trường hợp thực tế, việc triển khai sẽ cấu hình độ trễ của chúng dựa trên tham số này, nếu không họ có thể chọn độ trễ khả thi gần nhất thay thế. Trừ khi độ trễ được đề xuất lớn hơn giới hạn trên tuyệt đối cho thiết bị, việc triển khai sẽ làm tròn độ trễ theo giá trị thực tế tiếp theo - tức là để cung cấp độ trễ bằng hoặc cao hơn bất cứ khi nào có thể. Các giá trị độ trễ thực tế cho một luồng mở có thể được truy xuất bằng thuộc tính
    python3 -m pip install sounddevice --user
    
    09.

    Đối số Forth cung cấp cấu trúc CFFI với dấu thời gian cho thấy thời gian chụp ADC của mẫu đầu tiên trong bộ đệm đầu vào (

    python3 -m pip uninstall sounddevice
    
    10), thời gian đầu ra DAC của mẫu đầu tiên trong bộ đệm đầu ra (
    python3 -m pip uninstall sounddevice
    
    11) và thời gian gọi lại (
    python3 -m pip uninstall sounddevice
    
    12 ). Các giá trị thời gian này được biểu thị bằng giây và được đồng bộ hóa với cơ sở thời gian được
    python3 -m pip uninstall sounddevice
    
    13 sử dụng cho luồng liên quan.

    Đối số thứ năm là một ví dụ

    python3 -m pip install cffi --user
    
    15 cho biết liệu bộ đệm đầu vào và/hoặc đầu ra đã được chèn hoặc sẽ được giảm để vượt qua các điều kiện dòng chảy hoặc tràn.

    Nếu một ngoại lệ được nâng lên trong cuộc gọi lại, nó sẽ không được gọi lại. Nếu

    python3 -m pip uninstall sounddevice
    
    15 được nâng lên, luồng sẽ kết thúc càng sớm càng tốt. Nếu
    python3 -m pip uninstall sounddevice
    
    16 được nâng lên, luồng sẽ tiếp tục cho đến khi tất cả các bộ đệm được tạo bởi cuộc gọi lại đã được phát. Điều này có thể hữu ích trong các ứng dụng như trình phát Soundfile trong đó cần có thời lượng đầu ra cụ thể. Nếu một ngoại lệ khác được nâng lên, dấu vết của nó được in thành
    python3 -m pip uninstall sounddevice
    
    17. Các trường hợp ngoại lệ không được truyền đến chủ đề chính, tức là chương trình Python chính tiếp tục chạy như thể không có gì xảy ra.

    Ghi chú

    Cuộc gọi lại phải luôn lấp đầy toàn bộ bộ đệm đầu ra, bất kể hoặc ngoại lệ nào được nâng lên.

    Nếu không có ngoại lệ nào được nâng lên trong cuộc gọi lại, nó sẽ tự động tiếp tục được gọi cho đến

    myrecording = sd.rec(duration * fs)
    
    9,
    python3 -m pip uninstall sounddevice
    
    19 hoặc
    python3 -m pip install sounddevice --user
    
    73 được sử dụng để dừng luồng.

    Cuộc gọi lại luồng Portaudio chạy ở mức độ ưu tiên rất cao hoặc thời gian thực. Nó được yêu cầu nhất định đáp ứng thời hạn thời gian của nó. Không phân bổ bộ nhớ, truy cập hệ thống tệp, gọi các chức năng thư viện hoặc gọi các chức năng khác từ gọi lại luồng có thể chặn hoặc mất một lượng thời gian không thể đoán trước để hoàn thành. Ngoại trừ

    python3 -m pip uninstall sounddevice
    
    21, không được phép gọi các hàm API Portaudio từ bên trong gọi lại luồng.

    Để một luồng duy trì hoạt động không bị trục trặc, cuộc gọi lại phải tiêu thụ và trả về dữ liệu âm thanh nhanh hơn so với được ghi và/hoặc phát. Portaudio dự đoán rằng mỗi lần gọi gọi lại có thể thực hiện trong một thời gian tiếp cận với thời lượng của các khung âm thanh khung ở tần số lấy mẫu luồng. Thật hợp lý khi hy vọng có thể sử dụng 70% hoặc nhiều hơn thời gian CPU có sẵn trong cuộc gọi lại Portaudio. Tuy nhiên, do sự thích nghi kích thước bộ đệm và các yếu tố khác, không phải tất cả các API của máy chủ đều có thể đảm bảo độ ổn định âm thanh dưới tải CPU nặng với kích thước bộ đệm gọi lại cố định tùy ý. Khi việc sử dụng CPU gọi lại cao được yêu cầu, hành vi mạnh mẽ nhất có thể đạt được bằng cách sử dụng

    python3 -m pip install sounddevice --user
    
    51.

  • Forew_callback (Callable, Tùy chọn)-Hàm do người dùng cung cấp sẽ được gọi khi luồng không hoạt động (nghĩa là một khi cuộc gọi đến

    myrecording = sd.rec(duration * fs)
    
    9 sẽ không chặn). (callable, optional) – User-supplied function which will be called when the stream becomes inactive (i.e. once a call to
    myrecording = sd.rec(duration * fs)
    
    9 will not block).

    Một luồng sẽ không hoạt động sau khi gọi lại luồng làm tăng một ngoại lệ hoặc khi

    myrecording = sd.rec(duration * fs)
    
    9 hoặc
    python3 -m pip uninstall sounddevice
    
    19 được gọi. Đối với một luồng cung cấp đầu ra âm thanh, nếu gọi lại luồng tăng
    python3 -m pip uninstall sounddevice
    
    16 hoặc
    myrecording = sd.rec(duration * fs)
    
    9 được gọi, cuộc gọi lại hoàn thành luồng sẽ không được gọi cho đến khi tất cả dữ liệu mẫu được tạo đã được phát. Cuộc gọi lại phải có chữ ký này:

    python3 -m pip uninstall sounddevice
    
    1

  • clip_off (bool, tùy chọn) - xem

    python3 -m pip uninstall sounddevice
    
    28. (bool, optional) – See
    python3 -m pip uninstall sounddevice
    
    28.

  • Dither_off (Bool, Tùy chọn) - Xem

    python3 -m pip uninstall sounddevice
    
    29. (bool, optional) – See
    python3 -m pip uninstall sounddevice
    
    29.

  • never_drop_input (bool, tùy chọn) - xem

    python3 -m pip uninstall sounddevice
    
    30. (bool, optional) – See
    python3 -m pip uninstall sounddevice
    
    30.

  • Prime_output_buffers_using_stream_callback (bool, tùy chọn) - xem

    python3 -m pip uninstall sounddevice
    
    31. (bool, optional) – See
    python3 -m pip uninstall sounddevice
    
    31.

________ 332 ()()

Chấm dứt xử lý âm thanh ngay lập tức.

Điều này không chờ đợi cho bộ đệm đang chờ xử lý để hoàn thành.

________ 333¶

myrecording = sd.rec(duration * fs)
8 Khi luồng hoạt động,
myrecording = sd.rec(duration * fs)
7 khác.

Một luồng đang hoạt động sau một cuộc gọi thành công đến

python3 -m pip install sounddevice --user
70, cho đến khi nó không hoạt động do kết quả của cuộc gọi đến
myrecording = sd.rec(duration * fs)
9 hoặc
python3 -m pip uninstall sounddevice
19, hoặc là kết quả của một ngoại lệ được nêu trong cuộc gọi lại luồng. Trong trường hợp sau, luồng được xem xét không hoạt động sau khi bộ đệm cuối cùng chơi xong.

________ 240¶

Số lượng khung mỗi khối.

Giá trị đặc biệt 0 có nghĩa là khối khối có thể thay đổi giữa các khối. Xem đối số khối của

python3 -m pip install cffi --user
08.

________ 214¶

Số lượng kênh đầu vào/đầu ra.

________ 342 (bỏ qua_errors = true) ¶(ignore_errors=True)

Đóng luồng.

Nếu luồng âm thanh hoạt động, bất kỳ bộ đệm đang chờ xử lý nào cũng bị loại bỏ như thể

python3 -m pip uninstall sounddevice
19 đã được gọi.

________ 344¶

Thông tin sử dụng CPU cho luồng.

Tải trọng CPU CPU là một phần nhỏ của tổng thời gian CPU được tiêu thụ bởi các thói quen xử lý âm thanh của Stream Stream, bao gồm, nhưng không giới hạn ở cuộc gọi lại luồng do khách hàng cung cấp. Hàm này không hoạt động với việc chặn luồng đọc/ghi.

Điều này có thể được sử dụng trong chức năng gọi lại luồng hoặc trong ứng dụng. Nó cung cấp giá trị điểm nổi, thường là từ 0,0 đến 1,0, trong đó 1.0 chỉ ra rằng cuộc gọi lại luồng đang tiêu thụ số lượng chu kỳ CPU tối đa có thể để duy trì hoạt động thời gian thực. Giá trị 0,5 sẽ ngụ ý rằng Portaudio và gọi lại luồng tiêu thụ khoảng 50% thời gian CPU có sẵn. Giá trị có thể vượt quá 1.0. Giá trị 0,0 sẽ luôn được trả về cho luồng đọc/ghi chặn hoặc nếu xảy ra lỗi.

________ 213¶

ID của thiết bị đầu vào/đầu ra.

________ 216¶

Kiểu dữ liệu của các mẫu âm thanh.

________ 235¶

Độ trễ đầu vào/đầu ra của luồng tính bằng giây.

Giá trị này cung cấp ước tính chính xác nhất về độ trễ đầu vào/đầu ra có sẵn cho việc thực hiện. Nó có thể khác biệt đáng kể so với (các) giá trị độ trễ được truyền đến

python3 -m pip uninstall sounddevice
48.

________ 349 (khung)(frames)

Đọc các mẫu từ luồng vào một mảng numpy.

Hàm không trả lại cho đến khi tất cả các khung được yêu cầu đã được đọc - điều này có thể liên quan đến việc chờ hệ điều hành cung cấp dữ liệu (trừ khi không có nhiều hơn các khung

python3 -m pip uninstall sounddevice
04).

Điều này giống như

python3 -m pip uninstall sounddevice
51, ngoại trừ việc nó trả về một mảng numpy thay vì một đối tượng bộ đệm Python đơn giản.

Parameters:Khung (int) - Số lượng khung sẽ được đọc. Tham số này không bị giới hạn trong một phạm vi cụ thể, tuy nhiên các ứng dụng hiệu suất cao sẽ muốn khớp với tham số này với tham số khối được sử dụng khi mở luồng. (int) – The number of frames to be read. This parameter is not constrained to a specific range, however high performance applications will want to match this parameter to the blocksize parameter used when opening the stream.
Returns:
  • Dữ liệu (numpy.ndarray)-Một
    python3 -m pip install sounddevice --user
    
    85 hai chiều với một cột trên mỗi kênh (nghĩa là với hình dạng
    python3 -m pip uninstall sounddevice
    
    07) và với kiểu dữ liệu được chỉ định bởi
    python3 -m pip install sounddevice --user
    
    08.
    (numpy.ndarray) – A two-dimensional
    python3 -m pip install sounddevice --user
    
    85 with one column per channel (i.e. with a shape of
    python3 -m pip uninstall sounddevice
    
    07) and with a data type specified by
    python3 -m pip install sounddevice --user
    
    08.
  • đã bị tràn (bool) -
    myrecording = sd.rec(duration * fs)
    
    8 nếu dữ liệu đầu vào bị loại bỏ bởi portaudio sau cuộc gọi trước và trước cuộc gọi này.
    (bool) –
    myrecording = sd.rec(duration * fs)
    
    8 if input data was discarded by PortAudio after the previous call and before this call.
________ 356¶

Số lượng khung có thể được đọc mà không phải chờ đợi.

Trả về một giá trị đại diện cho số lượng khung tối đa có thể được đọc từ luồng mà không chặn hoặc bận chờ.

________ 239¶

Tần số lấy mẫu trong Hertz (= khung mỗi giây).

Trong trường hợp tần số lấy mẫu phần cứng không chính xác và Portaudio nhận thức được nó, giá trị của trường này có thể khác với tham số lấy mẫu được chuyển đến

python3 -m pip uninstall sounddevice
48. Nếu thông tin về tần số lấy mẫu phần cứng thực tế không có sẵn, trường này sẽ có cùng giá trị với tham số lấy mẫu được truyền đến
python3 -m pip uninstall sounddevice
48.

________ 360¶

Kích thước trong byte của một mẫu duy nhất.

________ 361 ()()

Bắt đầu xử lý âm thanh.

________ 117 ()()

Chấm dứt xử lý âm thanh.

Điều này chờ đợi cho đến khi tất cả các bộ đệm âm thanh đang chờ xử lý đã được phát trước khi nó trở lại.

________ 363¶

myrecording = sd.rec(duration * fs)
8 Khi luồng được dừng lại,
myrecording = sd.rec(duration * fs)
7 khác.

Một luồng được coi là dừng lại trước một cuộc gọi thành công đến

python3 -m pip install sounddevice --user
70 và sau một cuộc gọi thành công đến
myrecording = sd.rec(duration * fs)
9 hoặc
python3 -m pip uninstall sounddevice
19. Nếu một cuộc gọi lại luồng bị hủy (bằng cách tăng một ngoại lệ), luồng không được coi là dừng.

________ 369¶

Thời gian luồng hiện tại tính bằng giây.

Đây là theo cùng một đồng hồ được sử dụng để tạo dấu thời gian được truyền với đối số thời gian cho cuộc gọi lại luồng (xem đối số gọi lại của

python3 -m pip install cffi --user
08). Các giá trị thời gian đang tăng đơn điệu và có nguồn gốc không xác định.

Điều này cung cấp các giá trị thời gian hợp lệ cho toàn bộ tuổi thọ của luồng, từ khi luồng được mở cho đến khi nó được đóng lại. Bắt đầu và dừng luồng không ảnh hưởng đến thời gian trôi qua như được cung cấp ở đây.

Lần này có thể được sử dụng để đồng bộ hóa các sự kiện khác với luồng âm thanh, ví dụ như đồng bộ hóa âm thanh với MIDI.

________ 371 (dữ liệu) ¶(data)

Viết các mẫu vào luồng.

Chức năng này không trả lại cho đến khi toàn bộ bộ đệm được tiêu thụ - điều này có thể liên quan đến việc chờ hệ điều hành tiêu thụ dữ liệu (trừ khi dữ liệu chứa không quá các khung

python3 -m pip uninstall sounddevice
05).

Điều này giống như

python3 -m pip uninstall sounddevice
73, ngoại trừ việc nó mong đợi một mảng numpy thay vì một đối tượng bộ đệm Python đơn giản.

Parameters:

Dữ liệu (Array_like)-Một đối tượng giống như mảng hai chiều với một cột trên mỗi kênh (nghĩa là với hình dạng

python3 -m pip uninstall sounddevice
07) và với kiểu dữ liệu được chỉ định bởi
python3 -m pip install sounddevice --user
08. Một mảng một chiều có thể được sử dụng cho dữ liệu đơn âm. Bố cục mảng phải là C-Con-Tiết (xem
python3 -m pip uninstall sounddevice
76).
(array_like) – A two-dimensional array-like object with one column per channel (i.e. with a shape of
python3 -m pip uninstall sounddevice
07) and with a data type specified by
python3 -m pip install sounddevice --user
08. A one-dimensional array can be used for mono data. The array layout must be C-contiguous (see
python3 -m pip uninstall sounddevice
76).

Độ dài của bộ đệm không bị giới hạn trong một phạm vi cụ thể, tuy nhiên các ứng dụng hiệu suất cao sẽ muốn khớp với tham số này với tham số khối được sử dụng khi mở luồng.

Returns:

Nhập tải (bool) -

myrecording = sd.rec(duration * fs)
8 nếu dữ liệu đầu ra bổ sung được chèn sau cuộc gọi trước đó và trước cuộc gọi này. (bool) –
myrecording = sd.rec(duration * fs)
8 if additional output data was inserted after the previous call and before this call.

________ 378¶

Số lượng khung có thể được viết mà không phải chờ đợi.

Trả về một giá trị đại diện cho số lượng khung tối đa có thể được ghi vào luồng mà không chặn hoặc bận chờ.

Lớp ________ 75 ________ 380 (SampleRate = none, blocksize = none, device = none , Prime_output_buffers_using_stream_callback = none) [Nguồn] ¶(samplerate=None, blocksize=None, device=None, channels=None, dtype=None, latency=None, extra_settings=None, callback=None, finished_callback=None, clip_off=None, dither_off=None, never_drop_input=None, prime_output_buffers_using_stream_callback=None)[source]

Mở một luồng đầu vào.

Điều này có các phương thức và thuộc tính tương tự như

python3 -m pip install cffi --user
08, ngoại trừ
python3 -m pip install sounddevice --user
79 và
python3 -m pip uninstall sounddevice
05. Hơn nữa, gọi lại luồng dự kiến ​​sẽ có một chữ ký khác (xem bên dưới).

Parameters:

Callback (Callable)-Hàm do người dùng cung cấp để tiêu thụ âm thanh để đáp ứng các yêu cầu từ luồng hoạt động. Cuộc gọi lại phải có chữ ký này: (callable) – User-supplied function to consume audio in response to requests from an active stream. The callback must have this signature:

python3 -m pip uninstall sounddevice
2

Các đối số giống như trong tham số gọi lại của

python3 -m pip install cffi --user
08, ngoại trừ OutData bị thiếu.

Lớp ________ 75 ________ 386 (SampleRate = none, blocksize = none, device = none , Prime_output_buffers_using_stream_callback = none) [Nguồn] ¶(samplerate=None, blocksize=None, device=None, channels=None, dtype=None, latency=None, extra_settings=None, callback=None, finished_callback=None, clip_off=None, dither_off=None, never_drop_input=None, prime_output_buffers_using_stream_callback=None)[source]

Mở một luồng đầu ra.

Điều này có các phương thức và thuộc tính tương tự như

python3 -m pip install cffi --user
08, ngoại trừ
python3 -m pip install sounddevice --user
78 và
python3 -m pip uninstall sounddevice
04. Hơn nữa, gọi lại luồng dự kiến ​​sẽ có một chữ ký khác (xem bên dưới).

Parameters:

Callback (Callable)-Hàm do người dùng cung cấp để tạo dữ liệu âm thanh để đáp ứng các yêu cầu từ luồng hoạt động. Cuộc gọi lại phải có chữ ký này: (callable) – User-supplied function to generate audio data in response to requests from an active stream. The callback must have this signature:

python3 -m pip uninstall sounddevice
3

Các đối số giống như trong tham số gọi lại của

python3 -m pip install cffi --user
08, ngoại trừ indata bị thiếu.

Lớp ________ 75 ________ 392 (SampleRate = none, blockSize = none, device = none , Prime_output_buffers_using_stream_callback = none) [Nguồn] ¶(samplerate=None, blocksize=None, device=None, channels=None, dtype=None, latency=None, extra_settings=None, callback=None, finished_callback=None, clip_off=None, dither_off=None, never_drop_input=None, prime_output_buffers_using_stream_callback=None)[source]

Mở một luồng đầu vào/đầu ra của Raw Raw.

Điều này giống như

python3 -m pip install cffi --user
08, ngoại trừ chức năng gọi lại và ________ 278/________ 279 hoạt động trên các đối tượng bộ đệm Python đơn giản thay vì trên các mảng Numpy. Numpy là không cần thiết để sử dụng điều này.

Để mở một luồng chỉ đầu vào chỉ đầu vào hoặc chỉ sử dụng luồng chỉ đầu ra

python3 -m pip install cffi --user
25 hoặc
python3 -m pip install cffi --user
26, tương ứng. Nếu bạn muốn xử lý dữ liệu âm thanh dưới dạng mảng numpy thay vì các đối tượng bộ đệm, hãy sử dụng
python3 -m pip install cffi --user
08,
myrecording = sd.rec(duration * fs, dtype='float64')
3 hoặc
myrecording = sd.rec(duration * fs, blocking=True)
1.

Parameters:
  • DTYPE (STR hoặc cặp STR) - Định dạng mẫu của các bộ đệm được cung cấp cho gọi lại luồng,

    python3 -m pip install sounddevice --user
    
    78 hoặc
    python3 -m pip install sounddevice --user
    
    79. Ngoài các định dạng được hỗ trợ bởi
    python3 -m pip install cffi --user
    
    08 (
    duration = 10.5  # seconds
    myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
    
    8,
    python3 -m pip install sounddevice --user
    
    18,
    python3 -m pip install sounddevice --user
    
    19,
    python3 -m pip install sounddevice --user
    
    20,
    python3 -m pip install sounddevice --user
    
    21), điều này cũng hỗ trợ
    python3 -m pip install sounddevice --user
    
    30, tức là định dạng 24 bit đóng gói. Giá trị mặc định có thể được thay đổi với
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6. Xem thêm
    sd.default.samplerate = fs
    
    11.
    (str or pair of str) – The sample format of the buffers provided to the stream callback,
    python3 -m pip install sounddevice --user
    
    78 or
    python3 -m pip install sounddevice --user
    
    79. In addition to the formats supported by
    python3 -m pip install cffi --user
    
    08 (
    duration = 10.5  # seconds
    myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
    
    8,
    python3 -m pip install sounddevice --user
    
    18,
    python3 -m pip install sounddevice --user
    
    19,
    python3 -m pip install sounddevice --user
    
    20,
    python3 -m pip install sounddevice --user
    
    21), this also supports
    python3 -m pip install sounddevice --user
    
    30, i.e. packed 24 bit format. The default value can be changed with
    myrecording = sd.rec(duration * fs, blocking=True)
    
    6. See also
    sd.default.samplerate = fs
    
    11.

  • Callback (Callable)-Hàm do người dùng cung cấp để tiêu thụ, xử lý hoặc tạo dữ liệu âm thanh để đáp ứng các yêu cầu từ luồng hoạt động. Cuộc gọi lại phải có chữ ký này: (callable) – User-supplied function to consume, process or generate audio data in response to requests from an active stream. The callback must have this signature:

    python3 -m pip uninstall sounddevice
    
    4

    Các đối số giống như trong tham số gọi lại của

    python3 -m pip install cffi --user
    
    08, ngoại trừ indata và outdata là các đối tượng bộ đệm python đơn giản thay vì các mảng numpy.

________ 349 (khung)(frames)

Đọc các mẫu từ luồng vào một bộ đệm.

Điều này giống như

sd.default.samplerate = fs
14, ngoại trừ việc nó trả về một đối tượng bộ đệm Python đơn giản thay vì một mảng numpy. Numpy là không cần thiết để sử dụng điều này.

Parameters:Khung (int) - Số lượng khung sẽ được đọc. Xem
sd.default.samplerate = fs
14.
(int) – The number of frames to be read. See
sd.default.samplerate = fs
14.
Returns:
  • Dữ liệu (bộ đệm) - Một bộ đệm của các mẫu xen kẽ. Bộ đệm chứa các mẫu ở định dạng được chỉ định bởi tham số DTYPE được sử dụng để mở luồng và số lượng kênh được chỉ định bởi các kênh. Xem thêm
    sd.default.samplerate = fs
    
    11.
    (buffer) – A buffer of interleaved samples. The buffer contains samples in the format specified by the dtype parameter used to open the stream, and the number of channels specified by channels. See also
    sd.default.samplerate = fs
    
    11.
  • Thất phát (bool) - Xem
    sd.default.samplerate = fs
    
    14.
    (bool) – See
    sd.default.samplerate = fs
    
    14.
________ 371 (dữ liệu) ¶(data)

Viết các mẫu vào luồng.

Điều này giống như

sd.default.samplerate = fs
19, ngoại trừ việc nó mong đợi một đối tượng bộ đệm Python đơn giản thay vì một mảng numpy. Numpy là không cần thiết để sử dụng điều này.

Parameters:Dữ liệu (bộ đệm hoặc byte hoặc có thể lặp lại của int) - một bộ đệm của các mẫu xen kẽ. Bộ đệm chứa các mẫu ở định dạng được chỉ định bởi đối số DTYPE được sử dụng để mở luồng và số lượng kênh được chỉ định bởi các kênh. Độ dài của bộ đệm không bị giới hạn trong một phạm vi cụ thể, tuy nhiên các ứng dụng hiệu suất cao sẽ muốn khớp với tham số này với tham số khối được sử dụng khi mở luồng. Xem thêm
sd.default.samplerate = fs
11.
(buffer or bytes or iterable of int) – A buffer of interleaved samples. The buffer contains samples in the format specified by the dtype argument used to open the stream, and the number of channels specified by channels. The length of the buffer is not constrained to a specific range, however high performance applications will want to match this parameter to the blocksize parameter used when opening the stream. See also
sd.default.samplerate = fs
11.
Returns:Nhập tải (Bool) - Xem
sd.default.samplerate = fs
19.
(bool) – See
sd.default.samplerate = fs
19.
Lớp ________ 75 ________ 423 (SampleRate = none, blocksize = none, device = none , Prime_output_buffers_using_stream_callback = none) [Nguồn] ¶(samplerate=None, blocksize=None, device=None, channels=None, dtype=None, latency=None, extra_settings=None, callback=None, finished_callback=None, clip_off=None, dither_off=None, never_drop_input=None, prime_output_buffers_using_stream_callback=None)[source]

Mở một luồng đầu vào của Raw Raw.

Điều này giống như

myrecording = sd.rec(duration * fs, dtype='float64')
3, ngoại trừ chức năng gọi lại và
python3 -m pip install sounddevice --user
78 hoạt động trên các đối tượng bộ đệm Python đơn giản thay vì trên các mảng Numpy. Numpy là không cần thiết để sử dụng điều này.

Parameters:
  • DTYPE (STR) - Xem

    python3 -m pip install cffi --user
    
    24. (str) – See
    python3 -m pip install cffi --user
    
    24.

  • Callback (Callable)-Hàm do người dùng cung cấp để tiêu thụ dữ liệu âm thanh để đáp ứng các yêu cầu từ luồng hoạt động. Cuộc gọi lại phải có chữ ký này: (callable) – User-supplied function to consume audio data in response to requests from an active stream. The callback must have this signature:

    python3 -m pip uninstall sounddevice
    
    5

    Các đối số giống như trong tham số gọi lại của

    python3 -m pip install cffi --user
    
    24, ngoại trừ OutData bị thiếu.

Lớp ________ 75 ________ 429 (SampleRate = none, blockSize = none, device = none , Prime_output_buffers_using_stream_callback = none) [Nguồn] ¶(samplerate=None, blocksize=None, device=None, channels=None, dtype=None, latency=None, extra_settings=None, callback=None, finished_callback=None, clip_off=None, dither_off=None, never_drop_input=None, prime_output_buffers_using_stream_callback=None)[source]

Mở một luồng đầu ra của Raw Raw.

Điều này giống như

myrecording = sd.rec(duration * fs, blocking=True)
1, ngoại trừ chức năng gọi lại và
python3 -m pip install sounddevice --user
79 hoạt động trên các đối tượng bộ đệm Python đơn giản thay vì trên các mảng Numpy. Numpy là không cần thiết để sử dụng điều này.

Parameters:
  • DTYPE (STR) - Xem

    python3 -m pip install cffi --user
    
    24. (str) – See
    python3 -m pip install cffi --user
    
    24.

  • Callback (Callable)-Hàm do người dùng cung cấp để tạo dữ liệu âm thanh để đáp ứng các yêu cầu từ luồng hoạt động. Cuộc gọi lại phải có chữ ký này: (callable) – User-supplied function to generate audio data in response to requests from an active stream. The callback must have this signature:

    python3 -m pip uninstall sounddevice
    
    6

    Các đối số giống như trong tham số gọi lại của

    python3 -m pip install cffi --user
    
    24, ngoại trừ indata bị thiếu.

Lớp ________ 75 ________ 435 [Nguồn] ¶[source]

Một danh sách với thông tin về tất cả các thiết bị âm thanh có sẵn.

Lớp này không có nghĩa là được khởi tạo bởi người dùng. Thay vào đó, nó được trả lại bởi

python3 -m pip install cffi --user
84. Nó chứa một từ điển cho mỗi thiết bị có sẵn, giữ các khóa được mô tả trong
python3 -m pip install cffi --user
84.

Lớp này có một biểu diễn chuỗi đặc biệt được hiển thị dưới dạng giá trị trả về của

python3 -m pip install cffi --user
84 nếu được sử dụng trong phiên Python tương tác. Nó cũng sẽ được hiển thị khi sử dụng hàm
sd.default.samplerate = fs
39. Hơn nữa, nó có thể thu được với
sd.default.samplerate = fs
40 và
sd.default.samplerate = fs
41.

Lớp ________ 75 ________ 443 (cờ = 0) [Nguồn] ¶(flags=0)[source]

BIT cờ cho đối số trạng thái vào một cuộc gọi lại luồng.

Ví dụ

Điều này có thể được sử dụng để thu thập các lỗi của nhiều đối tượng trạng thái:

python3 -m pip uninstall sounddevice
7

________ 444¶

Đầu vào Dòng chảy.

Trong một luồng được mở với

python3 -m pip install sounddevice --user
51, chỉ ra rằng dữ liệu đầu vào là tất cả sự im lặng (số không) vì không có dữ liệu thực. Trong một luồng được mở bằng một khối không khác, nó chỉ ra rằng một hoặc nhiều mẫu bằng 0 đã được chèn vào bộ đệm đầu vào để bù cho một dòng chảy đầu vào.

Điều này chỉ có thể xảy ra trong các luồng song công đầy đủ (bao gồm

python3 -m pip install cffi --user
13).

________ 447¶

Tràn đầu vào.

Trong một luồng được mở với

python3 -m pip install sounddevice --user
51, chỉ ra rằng dữ liệu trước mẫu đầu tiên của bộ đệm đầu vào đã bị loại bỏ do tràn, có thể là do gọi lại luồng đang sử dụng quá nhiều thời gian CPU. Nếu không chỉ ra rằng dữ liệu trước một hoặc nhiều mẫu trong bộ đệm đầu vào đã bị loại bỏ.

Điều này có thể xảy ra trong các luồng toàn diện và chỉ đầu vào (bao gồm

python3 -m pip install cffi --user
13 và
myrecording = sd.rec(duration * fs, dtype='float64')
7).

________ 451¶

Đầu ra tràn.

Cho biết rằng dữ liệu đầu ra (hoặc một khoảng cách) đã được chèn, có thể do cuộc gọi lại luồng đang sử dụng quá nhiều thời gian CPU.

Điều này có thể xảy ra trong các luồng toàn diện và chỉ đầu ra (bao gồm

python3 -m pip install cffi --user
13 và
myrecording = sd.rec(duration * fs, dtype='float64')
6).

________ 454¶

Đầu ra tràn.

Cho biết rằng dữ liệu đầu ra sẽ bị loại bỏ vì không có phòng.

Điều này chỉ có thể xảy ra trong các luồng song công đầy đủ (bao gồm

python3 -m pip install cffi --user
13), nhưng chỉ khi
sd.default.samplerate = fs
56 được chỉ định. Xem
python3 -m pip uninstall sounddevice
30.

________ 458¶

Sản lượng mồi.

Một số dữ liệu đầu ra sẽ được sử dụng để điều khiển luồng, dữ liệu đầu vào có thể bằng không.

Điều này sẽ chỉ diễn ra với một số API máy chủ và chỉ khi

sd.default.samplerate = fs
59 được chỉ định. Xem
python3 -m pip uninstall sounddevice
31.

Lớp ________ 75 ________ 462 [Nguồn] ¶[source]

Ngoại lệ được người dùng nâng lên để ngừng xử lý gọi lại.

Nếu điều này được nêu trong cuộc gọi lại luồng, cuộc gọi lại sẽ không được gọi nữa (nhưng tất cả các bộ đệm âm thanh đang chờ xử lý sẽ được phát).

Lớp ________ 75 ________ 464 [Nguồn] ¶[source]

Ngoại lệ được người dùng đưa ra để hủy bỏ xử lý gọi lại.

Nếu điều này được nâng lên trong cuộc gọi lại luồng, tất cả các bộ đệm đang chờ xử lý sẽ bị loại bỏ và cuộc gọi lại sẽ không được gọi nữa.

Lớp ________ 75 ________ 466 [Nguồn] ¶[source]

Ngoại lệ này sẽ được nêu ra trên các lỗi của Portaudio.

Lớp ________ 75 ________ 468 (Channel_selectors) [Nguồn] ¶(channel_selectors)[source]

Cài đặt đầu vào/đầu ra cụ thể ASIO.

Các đối tượng của lớp này có thể được sử dụng làm đối số thêm_Sinstall thành

python3 -m pip uninstall sounddevice
48 (và các biến thể) hoặc là
python3 -m pip install cffi --user
95.

Parameters:Channel_selectors (Danh sách INT) - Hỗ trợ chỉ mở các kênh cụ thể của thiết bị ASIO. Channel_selectors là danh sách các số nguyên chỉ định số kênh (dựa trên không) để sử dụng. Độ dài của kênh_selector phải khớp với tham số kênh tương ứng của
python3 -m pip uninstall sounddevice
48 (hoặc các biến thể), nếu không một sự cố có thể xảy ra. Các giá trị trong mảng Channel_selector phải chỉ định các kênh trong phạm vi của các kênh được hỗ trợ.
(list of int) – Support for opening only specific channels of an ASIO device. channel_selectors is a list of integers specifying the (zero-based) channel numbers to use. The length of channel_selectors must match the corresponding channels parameter of
python3 -m pip uninstall sounddevice
48 (or variants), otherwise a crash may result. The values in the channel_selectors array must specify channels within the range of supported channels.

Ví dụ

Điều này có thể được sử dụng để thu thập các lỗi của nhiều đối tượng trạng thái:

python3 -m pip uninstall sounddevice
8

________ 444¶

python3 -m pip uninstall sounddevice
9

Đầu vào Dòng chảy.

sd.default.samplerate = fs
0

Trong một luồng được mở với
python3 -m pip install sounddevice --user
51, chỉ ra rằng dữ liệu đầu vào là tất cả sự im lặng (số không) vì không có dữ liệu thực. Trong một luồng được mở bằng một khối không khác, nó chỉ ra rằng một hoặc nhiều mẫu bằng 0 đã được chèn vào bộ đệm đầu vào để bù cho một dòng chảy đầu vào.(exclusive=False)[source]

Điều này chỉ có thể xảy ra trong các luồng song công đầy đủ (bao gồm

python3 -m pip install cffi --user
13).

________ 447¶

Parameters:ĐỘC QUYỀN (BOOL) - Chế độ độc quyền cho phép cung cấp dữ liệu âm thanh trực tiếp cho phần mềm bỏ qua phần mềm. (bool) – Exclusive mode allows to deliver audio data directly to hardware bypassing software mixing.

Ví dụ

Đặt chế độ độc quyền khi gọi

myrecording = sd.rec(duration * fs, dtype='float64')
6:

sd.default.samplerate = fs
1

Đặt chế độ độc quyền làm mặc định:

sd.default.samplerate = fs
2

Phiên bản LỊCH SỬ

0.3.7 (2017-02-16):
  • Thêm
    sd.default.samplerate = fs
    
    80
  • Hỗ trợ cho các con trỏ chức năng CDATA như các cuộc gọi lại
0.3.6 (2016-12-19):
  • Ví dụ Ứng dụng
    sd.default.samplerate = fs
    
    81
0.3,5 (2016-09-12):
  • Thêm tùy chọn
    python3 -m pip install sounddevice --user
    
    10 cho cài đặt luồng cụ thể của máy chủ-API
  • Thêm
    sd.default.samplerate = fs
    
    83 và
    sd.default.samplerate = fs
    
    84
0.3.4 (2016-08-05):
  • Ví dụ Ứng dụng
    sd.default.samplerate = fs
    
    85
0.3.3 (2016-04-11):
  • Thêm đối số
    sd.default.samplerate = fs
    
    86 vào
    duration = 10.5  # seconds
    myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
    
    2
0.3.2 (2016-03-16):
  • sd.default.samplerate = fs
    
    88 hoạt động ngay trên tất cả các API máy chủ
  • Ví dụ Ứng dụng
    sd.default.samplerate = fs
    
    89 hiển thị (các) tín hiệu micrô trực tiếp
  • Các chất nền thiết bị hiện được cho phép trong
    sd.default.samplerate = fs
    sd.default.channels = 2
    
    4
0.3.1 (2016-01-04):
  • Thêm
    sd.default.samplerate = fs
    
    91 và
    sd.default.samplerate = fs
    
    92
  • Gửi đầu ra Portaudio đến
    sd.default.samplerate = fs
    
    93 (trên Linux và OSX)
0.3.0 (2015-10-28):
  • Hủy bỏ
    sd.default.samplerate = fs
    
    94,
    sd.default.samplerate = fs
    sd.default.channels = 2
    
    4 có thể được sử dụng thay thế, vì giờ đây nó sẽ trả về một đối tượng
    sd.default.samplerate = fs
    
    96.
0.2.2 (2015-10-21):
  • Các thiết bị hiện có thể được chọn bởi các chuỗi con của tên thiết bị và tên API máy chủ
0.2.1 (2015-10-08):
  • Ví dụ Ứng dụng
    sd.default.samplerate = fs
    
    97 (dựa trên Portaudio từ
    sd.default.samplerate = fs
    
    98) và
    sd.default.samplerate = fs
    
    99 (dựa trên mã của Mauris van Hauwe)
0.2.0 (2015-07-03):
  • Hỗ trợ cho các bánh xe bao gồm Dylib cho Mac OS X và DLL cho Windows. Mã để tạo các bánh xe phần lớn được lấy từ pysoundfile.
  • Xóa ghi nhật ký (điều này có vẻ quá xâm nhập)
  • Trả lại trạng thái gọi lại từ
    duration = 10.5  # seconds
    myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
    
    7 và thêm chức năng mới
    duration = 10.5  # seconds
    myrecording = sd.rec(int(duration * fs), samplerate=fs, channels=2)
    
    01
  • sd.default.samplerate = fs
    sd.default.channels = 2
    
    0: Đổi tên các đối số input_channels và input_dtype thành các kênh và dtype, tương ứng
0.1.0 (2015-06-20): Phát hành ban đầu. Một số ý tưởng được lấy từ pysoundcard. Nhờ Bastian Bechtold cho nhiều cuộc thảo luận hiệu quả trong quá trình phát triển một số tính năng mà Python-Sunddevice được thừa hưởng từ đó.