Engine Class
AudioRecorder
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
สรุป
คุณสมบัติ
วิธีการ
Clear():() |
GetConnectedWires(pin: string):{Wire} |
RecordAsync():() |
Stop():() |
เหตุการณ์
WiringChanged(connected: boolean,pin: string,wire: Wire,instance: Instance):RBXScriptSignal |
ตัวอย่างโค้ด
เครื่องบันทึกเสียง
local Workspace = game:GetService("Workspace")
local audioRecorder = Instance.new("AudioRecorder")
audioRecorder.Parent = Workspace
local audioPlayer = Instance.new("AudioPlayer")
audioPlayer.Asset = "rbxassetid://5829815715"
audioPlayer.Volume = 0.8
audioPlayer.Parent = Workspace
-- เชื่อม AudioPlayer เข้ากับ AudioRecorder
local wire1 = Instance.new("Wire")
wire1.SourceInstance = audioPlayer
wire1.TargetInstance = audioRecorder
wire1.Parent = audioRecorder
-- ไม่มีวิธีที่แน่นอนในการกำหนดว่าเมื่อใดที่บัฟเฟอร์เสียงจะเริ่มบันทึกได้อย่างถูกต้อง
-- การบันทึกจะมีความเงียบว่างก่อนเสียงที่มาจากแหล่งเดิม
audioPlayer:Play()
audioRecorder:RecordAsync() -- เริ่มบันทึก AudioPlayer
print("กำลังบันทึก...")
task.wait(5)
audioRecorder:Stop() -- หยุดการบันทึก
print("หยุดการบันทึกแล้ว!")
audioPlayer:Stop()
audioPlayer.TimePosition = 0
-- สร้างผลลัพธ์เพื่อฟังผลลัพธ์
local audioOutput = Instance.new("AudioDeviceOutput")
audioOutput.Parent = Workspace
local wire2 = Instance.new("Wire")
wire2.SourceInstance = audioPlayer
wire2.TargetInstance = audioOutput
wire2.Parent = audioOutput
-- รับเนื้อหาที่บันทึกไว้และเล่นใน AudioPlayer
local resultUri = audioRecorder:GetTemporaryContent().Uri
audioPlayer.Asset = resultUri
if not audioPlayer.IsReady then
audioPlayer:GetPropertyChangedSignal("IsReady"):Wait()
end
audioPlayer:Play()เอกสารอ้างอิงเกี่ยวกับ API
คุณสมบัติ
วิธีการ
Clear
AudioRecorder:Clear():()
ส่งค่ากลับ
()
GetConnectedWires
GetUnrecordableInstancesAsync
RecordAsync
AudioRecorder:RecordAsync():()
ส่งค่ากลับ
()
Stop
AudioRecorder:Stop():()
ส่งค่ากลับ
()
เหตุการณ์