Unity 通過AVProMovieCapture插件實現攝像機錄屏

1.AVProMovieCapture插件下載

沒什么好說的,搞到安裝包之后,直接往項目中拉就行。

2.操作面板配置

(1)在Hierarchy創建一個空物體,上面添加Capture From Camera和Camera Selector兩個插件

(2)Camera Selector常用屬性

?屬性:Select By

·其中Highest Depth Camera表明使用深度最大的攝像機作為錄制攝像機,也就是Priority值最大的就是錄制攝像機。

· 其中Tag和Name表明,下面一行中輸入哪個攝像機的Tag/Name就使用哪個攝像機錄制

·其中 Manual表明直接以點擊右側圓圈來選擇,或者拖拽攝像機放入的方式來選擇錄制攝像機

(3)CaptureFromCamera

·CaptureFromCamera部分

首先需要將Capture對象拖入Camera Selector屬性欄中

?Resolution是視頻的尺寸

·output部分

3.代碼控制開始錄制、攝像機切換和結束錄制?

using System.Collections.Generic;
using NUnit.Framework;
using RenderHeads.Media.AVProMovieCapture;
using UnityEngine;
using static RenderHeads.Media.AVProMovieCapture.CameraSelector;public class VideoCaptureInArms : MonoBehaviour
{private CaptureFromCamera captureFCam;private CameraSelector camSelector;private static VideoCaptureInArms _Instance;public static VideoCaptureInArms instance{get{return _Instance;}}private void Awake(){if(_Instance != null && _Instance != this){Destroy(gameObject);return;}_Instance = this;}// Start is called once before the first execution of Update after the MonoBehaviour is createdvoid Start(){captureFCam = GetComponent<CaptureFromCamera>();if(captureFCam == null){Debug.LogError("找不到CaptureFromCamera組件");}camSelector = GetComponent<CameraSelector>();if (camSelector == null){Debug.LogError("找不到CameraSelector組件");}}// Update is called once per framevoid Update(){}/// <summary>/// 開始錄屏/// </summary>public void StartCapture(){bool isStart = captureFCam.StartCapture();if(isStart == false){Debug.LogWarning("錄制啟動失敗");}}/// <summary>/// 結束錄屏/// </summary>public void StopCapture(){captureFCam.StopCapture();}/// <summary>///切換拍攝攝像頭/// </summary>/// <param name="camera"></param>public void ChangeCamera(string str){camSelector.SelectBy = SelectByMode.Name;camSelector.SelectName = str;}public void ChangeCamera(Camera camera){camSelector.SelectBy = SelectByMode.Manual;camSelector.Camera = camera;}}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/88467.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/88467.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/88467.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深度學習:PyTorch卷積神經網絡分享(1)

本文目錄&#xff1a; 一、CNN概述二、CNN日常應用三、CNN的卷積層&#xff08;一 &#xff09;基本介紹&#xff08;二&#xff09;卷積層計算1.對輸入數據的要求2.卷積核核心參數3.計算過程4.特征圖尺寸計算5.1、多通道卷積計算5.2、多卷積核計算6.PyTorch卷積層API 前言&…

Cesium添加3dtiles并平移到指定經緯度

訪問tileset.json,查看root.transform,12,13,14分別代表模型參考原點的地心坐標Cartesian3(x,y,z) let tileset await Cesium.Cesium3DTileset.fromUrl()構造origin_cartesian3new Cesium.Cartesian3(x,y,z) 設置待平移到的位置經緯高為longitude,latitude,height,例如(116,…

STM32G070x 單片機項目代碼解析:基于 HAL 庫的嵌入式系統開發

項目總體架構 該項目采用標準的 STM32 工程結構&#xff0c;主要包含以下幾個部分&#xff1a; 頭文件包含&#xff1a;系統頭文件和用戶自定義頭文件外設句柄定義&#xff1a;SPI、TIM、UART 等外設的句柄聲明用戶自定義變量&#xff1a;LED 控制、按鍵狀態等標志位初始化函數…

winform mvvm

if (!mvvmContext1.IsDesignMode) InitializeBindings(); 這段代碼的意思是&#xff1a;如果當前應用程序不是處于設計模式&#xff08;即程序正在運行&#xff09;&#xff0c;就調用InitializeBindings方法來初始化視圖與視圖模型之間的綁定。 void Initiali…

防火墻快速管理軟件,66K超小巧

軟件介紹 今天為大家推薦一款輕量級的Windows防火墻管理工具&#xff0c;這款工具能幫助用戶快速開啟或關閉系統防火墻功能&#xff0c;操作比系統原生設置更加便捷高效。 軟件優勢 相比通過系統設置層層點擊的操作方式&#xff0c;這款僅66KB大小的微型工具只需單擊按鈕…

python中的高級變量III

python中的高級變量III 刪除列表元素&#xff08;list&#xff09;擴展知識點 name_list ["Mike","John","Alice"] del name_list[1] # 通過del name_list[1]刪除“John” print(name_list) # 輸出 [Mike, Alice]注意&#xff1a;del …

深入理解Redis

深入理解Redis&#xff1a;高性能內存數據庫的核心原理與應用實踐 1. 引言 在現代互聯網應用中&#xff0c;高性能、低延遲的數據訪問是至關重要的。傳統的關系型數據庫&#xff08;如MySQL&#xff09;雖然功能強大&#xff0c;但在高并發場景下往往成為性能瓶頸。Redis&…

界面控件DevExpress Blazor中文教程:AI聊天 - 如何實現函數調用?

DevExpress Blazor UI組件使用了C#為Blazor Server和Blazor WebAssembly創建高影響力的用戶體驗&#xff0c;這個UI自建庫提供了一套全面的原生Blazor UI組件&#xff08;包括Pivot Grid、調度程序、圖表、數據編輯器和報表等&#xff09;。 現代AI驅動的應用程序需要與外部系…

github 上的php項目

github 上的php項目 項目的網址 &#xff08;Loong1996/LikeGirlSite: 情侶網站、情侶網頁、戀愛記錄網站&#xff09; # 修改 # admin/Config_DB.php//localhost 為數據庫地址 一般使用默認的即可 或&#xff08;127.0.0.1&#xff09; $db_address "mysql_php";/…

區間求最值問題高效解決方法

對于區間求最值場景&#xff0c;如果區間不定長度的&#xff0c;可以使用稀疏表進行求解&#xff0c;如果區間是固定長度的&#xff0c;則可以使用分塊的思想&#xff08;與稀疏表原理類似&#xff09;&#xff0c;都是通過壓縮狀態個數&#xff0c; 1 關于稀疏表的原理詳見&a…

Linux程序設計:什么時候選擇開發內核模塊?

最近看一個CPU使用率高的問題,從perf里看,是下面的一個占用的比較多是下面一個 Overhead Source:Line Symbol Shared Object - 8.48% [vdso][1129] 0x1129 B [.] 0x0000000000001129

OpenCV CUDA模塊設備層-----歐幾里得距離函數hypot()

操作系統&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 編程語言&#xff1a;C11 算法描述 該函數用于計算兩個無符號字符向量&#xff08;uchar1&#xff09;的歐幾里得距離&#xff08;即直角三角形的斜邊長度&#xff09;&#xff0c;…

惠普HP LaserJet Pro P1106 打印機信息

基本信息 產品類型&#xff1a;黑白激光打印機。上市時間&#xff1a;2011 年。最大打印幅面&#xff1a;A4。網絡打印&#xff1a;不支持網絡打印。雙面打印&#xff1a;手動雙面打印。 性能參數 打印速度&#xff1a;黑白打印速度&#xff08;ISO&#xff0c;A4&#xff09;正…

通義靈碼智能體模式在企業級開發中的應用:以云效DevOps自動化流程為例

一、智能體模式的核心能力 通義靈碼的智能體模式區別于傳統代碼補全工具&#xff0c;具備&#xff1a; 語義級理解&#xff1a;解析業務需求、代碼上下文及錯誤日志。自主任務閉環&#xff1a;從問題診斷→ 代碼生成→ 測試覆蓋→ 文檔生成全流程自動化。環境感知&#xff1a…

SQL學習筆記2

DDL、DML、DQL、DCL基礎語法 1、DDL 查詢 查詢所有數據庫&#xff1a;show databases; show databases; 查詢當前數據庫&#xff1a;select database(); select database(); 數據庫創建 創建數據庫:create database [if not exist(若存在重名數據庫&#xff0c;則不創建…

VScode常用快捷鍵【個人總結】

注&#xff1a;快捷鍵以 Windows/Linux 為主&#xff0c;Mac 用戶將 Ctrl 替換為 Cmd&#xff0c;Alt 替換為 Option。 1. 編輯相關 快速復制與剪切 Alt Shift ↓&#xff1a;復制當前行到下方Alt Shift ↑&#xff1a;復制當前行到上方Ctrl X&#xff1a;剪切整行&…

數據結構與算法:線性表-順序表(順序存儲)

一、線性表的定義&#xff08;邏輯結構&#xff09; 線性表是由 n (n > 0) 個相同數據類型的數據元素組成的有限序列&#xff0c;其中 n 為線性表的表長&#xff0c;當 n 0 時&#xff0c;線性表為空表。如果用 L 命名線性表&#xff0c;那么一般表示為&#xff1a;L (a1…

從源碼到實踐:Java集合框架面試核心知識點全解析

在Java開發中&#xff0c;集合框架&#xff08;Java Collections Framework&#xff09;是最基礎也最常用的工具集。無論是處理業務邏輯時的數據暫存&#xff0c;還是高性能場景下的算法優化&#xff0c;集合的使用都貫穿始終。因此&#xff0c;Java集合相關的面試題幾乎是所有…

【深度學習新浪潮】空間計算的醫療應用技術分析(簡要版)

空間計算是一種通過融合計算機視覺、傳感器技術與三維渲染,將虛擬內容精準錨定到物理空間,實現數字世界與現實世界無縫交互的技術體系。其核心在于讓計算機理解真實環境的結構、位置和動態,從而支持自然交互(如手勢、語音、眼動)和沉浸式體驗。例如,蘋果Vision Pro通過實…

win電腦沒有xcode怎么上傳ipa

在上架IOS項目的時候&#xff0c;遇到一個問題&#xff0c;如下圖&#xff0c;在app store connect上架的時候&#xff0c;需要選擇一個構建版本&#xff0c;然后它在下方提示&#xff0c;點擊查看上傳工具后&#xff0c;會發現需要下載xcode或mac命令行等工具來上傳編譯后的文…