VideoRecording
คุณสามารถบันทึกหรือแชร์วิดีโอภายในโลกโดยใช้ฟังก์ชันวิดีโอใน WorldVideoRecorder API และสร้างฟีดโดยใช้วิดีโอ
เพื่อใช้ฟังก์ชันการบันทึกวิดีโอและการบันทึก/แชร์/โพสต์ฟีด คุณต้องสร้างคำสั่งนำเข้าดังนี้
WorldVideoRecorder API มีฟังก์ชันที่เกี่ยวข้องกับวิดีโอดังต่อไปนี้.
API | คำอธิบาย |
---|---|
WorldVideoRecorder.StartRecording(camera: UnityEngine.Camera, resolutions: VideoResolutions, durationSecond: number):boolean | เริ่มบันทึกวิดีโอ คุณสามารถตั้งค่ากล้องบันทึก ความละเอียดวิดีโอ และเวลาบันทึกเป็นพารามิเตอร์ ผลลัพธ์ที่ส่งกลับจะแสดงว่าการเริ่มบันทึกสำเร็จหรือไม่ - enum VideoResolutions { W1280xH720 = 0, W720xH1280 = 1, W1920xH1080 = 2, W1080xH1920 = 3 } - durationSecond : ค่าสูงสุดคือ 60 ดังนั้นกรุณาใส่ค่าน้อยกว่า 60 หากเป็นไปได้. |
WorldVideoRecorder.StopRecording() | หยุดการบันทึกวิดีโอที่กำลังดำเนินอยู่ |
WorldVideoRecorder.IsRecording():boolean | ส่งคืนว่าควรดำเนินการบันทึกวิดีโอต่อไปหรือไม่ |
WorldVideoRecorder.SaveToCameraRoll(callback: System.Action$1) | บันทึกวิดีโอลงในห้องสมุดภาพถ่าย |
WorldVideoRecorder.Share(callback: System.Action$1) | แชร์วิดีโอกับแอปพลิเคชันภายนอก |
WorldVideoRecorder.CreateFeed(contents: string, $callback: System.Action$1) | อัปโหลดวิดีโอไปยังฟีด ปัจจัยแรกคือ contents ซึ่งช่วยให้คุณกำหนดเนื้อหาของโพสต์ได้ |
WorldVideoRecorder.AddVideoPlayerComponent(playerObject: UnityEngine.GameObject, renderTexture: UnityEngine.RenderTexture):UnityEngine_Video.VideoPlayer | เพิ่มส่วนประกอบผู้เล่นวิดีโอลงใน GameObject ที่คุณต้องการเล่นวิดีโอ และเชื่อมต่อไฟล์วิดีโอที่บันทึกไว้ สิ่งนี้จะส่งคืนผู้เล่นวิดีโอที่เพิ่มเข้าไปและให้คุณกำหนดความกว้าง ความสูง หรือ RenderTexture เพื่อเล่นวิดีโอ ขึ้นอยู่กับพารามิเตอร์ |
WorldVideoRecorder.GetThumbnail():UnityEngine.Texture2D; | ส่งคืนภาพขนาดย่อของวิดีโอที่บันทึกไว้ |
ต่อไปนี้คือตัวอย่างการเรียกใช้ฟังก์ชันของการบันทึก/แชร์/โพสต์วิดีโอของฉันภายใน World Video Recorder.
- ไม่สามารถตรวจสอบได้ในสภาพแวดล้อมของ Unity editor แต่สามารถตรวจสอบได้เมื่อเล่นผ่านแอปพลิเคชัน.
- ความละเอียดจะถูกบันทึกตามค่าที่กำหนดเมื่อบันทึกเป็นไฟล์ แต่ความละเอียดอาจเปลี่ยนแปลงเมื่ออัปโหลดไปยัง ZEPETO Feed.
- หากคุณป้อนค่ามากกว่า 60 สำหรับ durationSecond การบันทึกจะไม่ทำงานอย่างถูกต้อง.
ต่อไปนี้คือตัวอย่างโค้ดทั้งหมดที่ใช้ฟังก์ชันการบันทึกวิดีโอของฉันภายใน WorldVideoRecorder โดยใช้ RenderTexture.
หลังจากเขียนสคริปต์แล้ว ให้สร้างปุ่มและภาพดิบที่จำเป็นบนแคนวาส
หลังจากนั้น ให้กำหนดแต่ละส่วนประกอบใน Inspector
- สำหรับกล้อง คุณสามารถใช้ส่วนประกอบกล้องปกติได้
- สำหรับพื้นผิวเป้าหมาย สร้าง > กรุณาสร้างเป็น Render Texture
👍 เคล็ดลับ
- หากคุณใช้พื้นผิวการเรนเดอร์เดียวกันกับภาพหน้าจอ มันอาจจะไม่เรนเดอร์อย่างถูกต้อง ดังนั้นโปรดสร้างพื้นผิวการเรนเดอร์ใหม่เฉพาะสำหรับการบันทึกและใช้มัน
คุณสามารถทดสอบฟังก์ชันการบันทึกวิดีโอโดยการรันผ่านการสร้าง QR บนมือถือ