Version: 2022.3
언어: 한국어

VP8EncoderAttributes

struct in UnityEditor.Media

매뉴얼로 전환

설명

Descriptor for VP8 encoder attributes.

using UnityEditor.Media;
using UnityEngine;
using Unity.Collections;
using System.IO;

public class Recorder { static public void RecordMovie() { VP8EncoderAttributes vp8Attr = new VP8EncoderAttributes { keyframeDistance = 25 };

var videoAttr = new VideoTrackEncoderAttributes(vp8Attr) { frameRate = new MediaRational(50), width = 320, height = 200, targetBitRate = 3000000 };

var audioAttr = new AudioTrackAttributes { sampleRate = new MediaRational(48000), channelCount = 2, language = "fr" };

int sampleFramesPerVideoFrame = audioAttr.channelCount * audioAttr.sampleRate.numerator / videoAttr.frameRate.numerator;

var encodedFilePath = Path.Combine(Path.GetTempPath(), "my_movie.webm");

Texture2D tex = new Texture2D((int)videoAttr.width, (int)videoAttr.height, TextureFormat.RGBA32, false);

using (var encoder = new MediaEncoder(encodedFilePath, videoAttr, audioAttr)) using (var audioBuffer = new NativeArray<float>(sampleFramesPerVideoFrame, Allocator.Temp)) { for (int i = 0; i < 100; ++i) { // Fill 'tex' with the video content to be encoded into the file for this frame. // ... encoder.AddFrame(tex);

// Fill 'audioBuffer' with the audio content to be encoded into the file for this frame. // ... encoder.AddSamples(audioBuffer); } } } }

변수

keyframeDistanceThe maximum distance between I-frames.
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961