ScriptProcessorNode

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

Giao diện ScriptProcessorNode cho phép tạo, xử lý hoặc phân tích âm thanh bằng JavaScript.

EventTarget AudioNode ScriptProcessorNode

Note: Tính năng này đã được thay thế bởi AudioWorklets và giao diện AudioWorkletNode.

Giao diện ScriptProcessorNode là một mô-đun xử lý âm thanh AudioNode được liên kết với hai bộ đệm: một chứa dữ liệu âm thanh đầu vào và một chứa dữ liệu âm thanh đầu ra đã xử lý. Một sự kiện triển khai giao diện AudioProcessingEvent được gửi đến đối tượng mỗi khi bộ đệm đầu vào chứa dữ liệu mới, và trình xử lý sự kiện kết thúc khi nó đã điền đầy bộ đệm đầu ra với dữ liệu.

ScriptProcessorNode lưu trữ đầu vào trong bộ đệm, gửi sự kiện audioprocess. EventHandler lấy bộ đệm đầu vào và điền vào bộ đệm đầu ra được gửi đến đầu ra bởi ScriptProcessorNode.

Kích thước của bộ đệm đầu vào và đầu ra được xác định khi tạo, khi phương thức BaseAudioContext.createScriptProcessor được gọi (cả hai đều được xác định bởi tham số bufferSize của BaseAudioContext.createScriptProcessor). Kích thước bộ đệm phải là lũy thừa của 2 trong khoảng 256 đến 16384, tức là 256, 512, 1024, 2048, 4096, 8192 hoặc 16384. Các số nhỏ giảm độ trễ, nhưng các số lớn có thể cần thiết để tránh âm thanh bị ngắt và nhiễu.

Nếu kích thước bộ đệm không được xác định, điều được khuyến nghị, trình duyệt sẽ chọn một kích thước mà thuật toán heuristic của nó cho là phù hợp.

Số lượng đầu vào 1
Số lượng đầu ra 1
Chế độ đếm kênh "max"
Số lượng kênh 2 (không được sử dụng trong chế độ đếm mặc định)
Diễn giải kênh "speakers"

Thuộc tính phiên bản

Kế thừa các thuộc tính từ cha của nó, AudioNode.

ScriptProcessorNode.bufferSize Read only Deprecated

Trả về một số nguyên đại diện cho cả kích thước bộ đệm đầu vào và đầu ra. Giá trị của nó có thể là lũy thừa của 2 trong khoảng 25616384.

Phương thức phiên bản

Không có phương thức cụ thể nào; kế thừa các phương thức từ cha của nó, AudioNode.

Sự kiện

Lắng nghe các sự kiện này bằng addEventListener() hoặc bằng cách gán trình xử lý sự kiện vào thuộc tính oneventname của giao diện này:

audioprocess Deprecated

Kích hoạt khi bộ đệm đầu vào của ScriptProcessorNode sẵn sàng để được xử lý. Cũng có sẵn thông qua thuộc tính trình xử lý sự kiện onaudioprocess.

Ví dụ

Xem BaseAudioContext.createScriptProcessor() để biết ví dụ code.

Thông số kỹ thuật

Specification
Web Audio API
# dom-scriptprocessornode-buffersize

Tương thích trình duyệt

Xem thêm