Chuyển tới nội dung chính

Sóng Âm Có Thể Ghi Lại

Tổng Quan

Sóng âm có thể ghi lại được dẫn xuất từ sóng âm phát trực tuyến. Nó hỗ trợ ghi lại dữ liệu âm thanh từ các thiết bị đầu vào như micro và phát lại, với các khả năng tương tự như sóng âm đã nhập (bao gồm tua lại, sử dụng trong SoundCues, v.v.). Bạn thậm chí có thể ghi và phát âm thanh đồng thời mà không có bất kỳ giới hạn nào.

mẹo

Để biết về Phát Hiện Hoạt Động Giọng Nói (VAD), hãy tham khảo trang này.

ghi chú

Sóng âm có thể ghi lại sẽ tự động yêu cầu quyền truy cập micro trên iOS và Android khi quá trình ghi được bắt đầu.

Cách Sử Dụng Cơ Bản

Tạo Sóng Âm Có Thể Ghi Lại

Trước tiên, bạn nên tạo một sóng âm có thể ghi lại.

Nút Tạo Sóng Âm Có Thể Ghi Lại

cảnh báo

Bạn nên coi sóng âm thanh có thể thu được như một tham chiếu mạnh để ngăn chặn việc hủy sớm (ví dụ: bằng cách gán nó cho một biến riêng biệt trong Blueprints hoặc sử dụng UPROPERTY() trong C++).

Lấy Danh Sách Thiết Bị Đầu Vào Khả Dụng

Để sử dụng tính năng này, trước tiên bạn cần lấy tất cả các thiết bị đầu vào âm thanh khả dụng có thể được sử dụng để thu âm.

Nút Get Available Audio Input Devices

Bắt đầu và Dừng Thu Âm

Sau khi lấy được các thiết bị khả dụng, bạn có thể bắt đầu thu âm thanh từ thiết bị đầu vào và dừng lại khi cần.

Các nút Bắt đầu và Dừng thu

thông tin

DeviceId là chỉ mục của thiết bị trong mảng các thiết bị khả dụng lấy được từ bước trước. Để sử dụng thiết bị đầu vào âm thanh mặc định, hãy truyền -1 trong Blueprints hoặc Audio::DefaultDeviceIndex trong C++ (tương đương với INDEX_NONE), vì đôi khi chỉ mục số 0 không phải là thiết bị mặc định.

Kiểm tra Trạng thái Ghi âm

Bạn có thể kiểm tra xem sound wave có đang ghi âm hay không:

Nút Is Capturing

Tính năng Nâng cao

Tắt và Bật Tiếng Thu Âm

Bạn có thể chọn tắt hoặc bật tiếng thu âm để ngăn chặn việc tích lũy dữ liệu âm thanh mà không làm gián đoạn quá trình thu âm.

Toggle Mute nodes

Sự khác biệt về Phiên bản Engine

UE 5.3 trở lên: Việc bắt đầu và dừng ghi âm không còn gây ra hiện tượng giật lag, do đó ToggleMute có hiệu quả tương tự như StartCapture/StopCapture. Bạn có thể không cần sử dụng ToggleMute để tối ưu hiệu suất.

UE 5.2 trở về trước: Việc bắt đầu ghi âm thông qua StartCapture có thể gây ra hiện tượng giật lag nhẹ. Trong các phiên bản này, bạn nên sử dụng ToggleMute để thường xuyên bật/tắt ghi âm. Trước tiên, bạn nên bắt đầu quá trình ghi âm vào thời điểm ít quan trọng (ví dụ: trong màn hình tải), sau đó sử dụng chức năng tắt tiếng/bật tiếng để kiểm soát thời điểm dữ liệu âm thanh thực sự được tích lũy.

Tối ưu Hiệu suất cho các Phiên bản Engine Cũ hơn

Nếu bạn đang sử dụng UE 5.2 trở về trước và muốn loại bỏ hiện tượng đóng băng nhẹ, hãy cân nhắc việc bắt đầu ghi âm vào thời điểm mà hiện tượng đóng băng này có thể không đáng kể. Ví dụ, bạn có thể bắt đầu ghi âm trong màn hình tải của trò chơi, ngay sau đó tắt tiếng sóng âm thanh có thể ghi lại, và sau đó bật tiếng sóng âm thanh đó khi cần ghi lại dữ liệu âm thanh mà không gặp bất kỳ hiện tượng giật lag nào.

Ví dụ Hoàn chỉnh

Dưới đây là một ví dụ triển khai hoàn chỉnh về việc sử dụng sóng âm thanh có thể ghi lại:

Một ví dụ về việc sử dụng sóng âm thanh có thể ghi lại