Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.UI;
- using NatCamU.Core;
- using NatCorderU.Core;
- public class NatCamCorder : MonoBehaviour {
- public RawImage rawImage;
- public AspectRatioFitter fitter;
- void Start () {
- NatCam.Play(DeviceCamera.RearCamera);
- NatCam.OnStart += OnStart;
- NatCam.OnFrame += OnFrame;
- }
- void Update () {
- // Toggle recording on a double-tap
- foreach (var touch in Input.touches)
- if (touch.phase == TouchPhase.Ended && touch.tapCount == 2)
- if (!NatCorder.IsRecording)
- NatCorder.StartRecording(new Configuration(NatCam.Preview.width, NatCam.Preview.height), OnVideo);
- else
- NatCorder.StopRecording();
- }
- #region --Callbacks--
- void OnStart () {
- rawImage.texture = NatCam.Preview;
- fitter.aspectRatio = NatCam.Preview.width / (float)NatCam.Preview.height;
- }
- void OnFrame () {
- if (NatCorder.IsRecording) {
- var frame = NatCorder.AcquireFrame();
- Graphics.Blit(NatCam.Preview, frame);
- NatCorder.CommitFrame(frame);
- }
- }
- void OnVideo (string path) {
- Handheld.PlayFullScreenMovie(path);
- }
- #endregion
- }
Add Comment
Please, Sign In to add comment