国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity打開本地文件夾替換視頻

這篇具有很好參考價(jià)值的文章主要介紹了Unity打開本地文件夾替換視頻。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。


前言

一、導(dǎo)入AVpro插件

AVpro插件是一款很強(qiáng)大的視頻播放插件,配合Unity使用有意想不到的效果,他的各項(xiàng)功能網(wǎng)上都有,我就不進(jìn)行展開討論了。
該插件的獲取方式為AssetStore中購(gòu)買下載,該插件有一個(gè)免費(fèi)版本可供使用,付費(fèi)版本的功能強(qiáng)大一點(diǎn)。
有需要的也可以私信我,我分享給你,你只能用于學(xué)習(xí),不可用于商用。
Unity打開本地文件夾替換視頻

將下載好的AVpro導(dǎo)入U(xiǎn)nity。

二、插件對(duì)應(yīng)的UI界面

Unity打開本地文件夾替換視頻
圖中顯示視頻的GUI主要是導(dǎo)入AVPro之后創(chuàng)建的,右鍵UI/AVproVideouGUI

Unity打開本地文件夾替換視頻
在該GUI的Inspector窗口有一個(gè)Display uGui的組件,該組件中有一個(gè)MediaPlayer的選項(xiàng),該選項(xiàng)是一個(gè)播放器,右鍵添加該播放器并且拉入到該位置。
Unity打開本地文件夾替換視頻
Unity打開本地文件夾替換視頻
Unity打開本地文件夾替換視頻

三、創(chuàng)建ChangeVideo腳本

/****************************************************
    文件:ChangeVideo.cs
	作者:Mark
    日期:#CreateTime#
	功能:替換視頻
*****************************************************/

using RenderHeads.Media.AVProVideo;
using System.Collections;
using System.IO;
using System.Runtime.InteropServices;
using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.UI;
public class ChangeVideo : MonoBehaviour 
{
    public Button changeVideoBtn;  //替換視頻的按鈕
    public MediaPlayer mediaPlayer;//AVpro的播放器
    public DisplayUGUI displayUGUI;//AVpro的UGUI
    private string savePath = Application.streamingAssetsPath + "/1.mp4";//視頻加載后的保存位置
    private void Start()
    {
        changeVideoBtn.onClick.AddListener(onRead);//監(jiān)聽按鈕是否點(diǎn)擊,如果點(diǎn)擊就執(zhí)行打開窗口
    }
    private void onRead()
    {
        OpenFileName ofn = new OpenFileName();

        ofn.structSize = Marshal.SizeOf(ofn);

        ofn.filter = "視頻文件(*.mp4*.mov)\0*.mp4;*.mov";

        ofn.file = new string(new char[256]);

        ofn.maxFile = ofn.file.Length;

        ofn.fileTitle = new string(new char[64]);

        ofn.maxFileTitle = ofn.fileTitle.Length;
        string path = Application.streamingAssetsPath;
        path = path.Replace('/', '\\');
        //默認(rèn)路徑
        ofn.initialDir = path;

        ofn.title = "選擇需要替換的視頻";

        ofn.defExt = "mp4";//顯示文件的類型
                           //注意 一下項(xiàng)目不一定要全選 但是0x00000008項(xiàng)不要缺少
        ofn.flags = 0x00080000 | 0x00001000 | 0x00000800 | 0x00000200 | 0x00000008;//OFN_EXPLORER|OFN_FILEMUSTEXIST|OFN_PATHMUSTEXIST| OFN_ALLOWMULTISELECT|OFN_NOCHANGEDIR

        if (WindowDll.GetOpenFileName(ofn))
        {
            StartCoroutine(Download(ofn.file));
        }

    }
    IEnumerator Download(string url)
    {
        mediaPlayer.OpenVideoFromFile(MediaPlayer.FileLocation.RelativeToStreamingAssetsFolder, null, false);
        UnityWebRequest request = UnityWebRequest.Get(url);
        request.SendWebRequest();
        if (request.isHttpError || request.isNetworkError)
        {
            //print("當(dāng)前的下載發(fā)生錯(cuò)誤" + request.error);
            yield break;
        }
        while (!request.isDone)
        {
            //獲取視頻讀取進(jìn)度,有需要可以加入
            //print("當(dāng)前的下載進(jìn)度為:" + request.downloadProgress);
            //downloadProgress.text = (request.downloadProgress * 100).ToString() + "%";
            yield return 0;
        }
        if (request.isDone)
        {
            //downloadProgress.text = "100%";
            using (FileStream fs = new FileStream(savePath, FileMode.Create))
            {
                byte[] results = request.downloadHandler.data;
                fs.Write(results, 0, results.Length);
                fs.Flush();
                fs.Close();
            }
        }
        mediaPlayer.OpenVideoFromFile(MediaPlayer.FileLocation.RelativeToStreamingAssetsFolder, savePath, false);
        //加載成功后打開并且播放
        mediaPlayer.m_AutoOpen = true;
        mediaPlayer.Play();
    }

}

四、創(chuàng)建OpenFileName類用于打開窗口

/****************************************************
    文件:OpenFileName.cs
	作者:Mark
    日期:#CreateTime#
	功能:打開文件夾
*****************************************************/

using System;
using System.Runtime.InteropServices;

[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
public class OpenFileName
{
    public int structSize = 0;
    public IntPtr dlgOwner = IntPtr.Zero;
    public IntPtr instance = IntPtr.Zero;
    public String filter = null;
    public String customFilter = null;
    public int maxCustFilter = 0;
    public int filterIndex = 0;
    public String file = null;
    public int maxFile = 0;
    public String fileTitle = null;
    public int maxFileTitle = 0;
    public String initialDir = null;
    public String title = null;
    public int flags = 0;
    public short fileOffset = 0;
    public short fileExtension = 0;
    public String defExt = null;
    public IntPtr custData = IntPtr.Zero;
    public IntPtr hook = IntPtr.Zero;
    public String templateName = null;
    public IntPtr reservedPtr = IntPtr.Zero;
    public int reservedInt = 0;
    public int flagsEx = 0;
}

public class WindowDll
{
    [DllImport("Comdlg32.dll", SetLastError = true, ThrowOnUnmappableChar = true, CharSet = CharSet.Auto)]
    public static extern bool GetOpenFileName([In, Out] OpenFileName ofn);
    public static bool GetOpenFileName1([In, Out] OpenFileName ofn)
    {
        return GetOpenFileName(ofn);
    }
}

五、掛載腳本并且運(yùn)行

Unity打開本地文件夾替換視頻文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-402701.html

到了這里,關(guān)于Unity打開本地文件夾替換視頻的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Unity C# 打開windows對(duì)話框選擇文件夾或選擇文件

    unity沒有提供打開windows對(duì)話框的api,在開發(fā)種也會(huì)遇到選擇系統(tǒng)文件夾或選擇系統(tǒng)文件的需求

    2024年04月26日
    瀏覽(29)
  • Windows11打開此電腦,沒有視頻、圖片等文件夾,解決方法

    Windows11打開此電腦,沒有視頻、圖片等文件夾,解決方法

    那次更新完電腦,發(fā)現(xiàn)電腦變了個(gè)樣 如果你打開“此電腦”,發(fā)現(xiàn)視頻、圖片、音樂(lè)等那些文件夾不見了,只剩下驅(qū)動(dòng)器了。 如下圖: 別慌, 我們可以通過(guò)注冊(cè)表來(lái)解決,把視頻、圖片等這些文件夾添加回來(lái),注冊(cè)表在我下面這個(gè)百度網(wǎng)盤鏈接里: 鏈接: https://pan.baidu.

    2024年02月11日
    瀏覽(100)
  • linux 再文件夾目錄下,批量替換文件名、文件內(nèi)容字符串

    基本使用命令 具體使用命令方法 1.替換文件內(nèi)容 搜索當(dāng)前目錄下所有.DTA文件,并將文件中字符串\\\"string1\\\",替換為\\\"string2\\\" 2.替換文件名 搜索當(dāng)前目錄下所有.DTA文件,并將文件名中字符串\\\"string1\\\"替換為\\\"string2\\\". 3.批量替換文件內(nèi)容 該目錄及子目錄下所有文件,將文件中所有的字符

    2024年02月16日
    瀏覽(98)
  • 右擊文件或者文件夾使用vscode打開

    右擊文件或者文件夾使用vscode打開

    平常我們?cè)诖蜷_項(xiàng)目時(shí),經(jīng)常會(huì)需要快捷打開方式,直接使右鍵使用編輯器打開,但是有時(shí)在安裝時(shí)忘記了選擇 “Add “Open with Code” action to Windows Explorer file context menu” 在Windows資源管理器文件上下文菜單中添加“用代碼打開”操作 Add “Open with Code” action to Windows Explorer d

    2024年02月05日
    瀏覽(89)
  • Mac雙擊無(wú)法打開文件或者文件夾

    Mac雙擊無(wú)法打開文件或者文件夾

    在使用MAC過(guò)程中出現(xiàn)雙擊無(wú)法打開文件或者文件夾,這可能與鼠標(biāo)連按速度有關(guān),下面分享一下如何解決Mac鼠標(biāo)雙擊打不開文件和文件夾的問(wèn)題。 打開 系統(tǒng)偏好設(shè)置 打開 輔助功能 指針控制 ,將“連按速度”的滑塊左右調(diào)整,同時(shí)測(cè)試雙擊打開文件或文件夾。

    2024年02月06日
    瀏覽(89)
  • 在任何文件夾下打開jupyter 內(nèi)核都是同一個(gè)文件夾

    在任何文件夾下打開jupyter 內(nèi)核都是同一個(gè)文件夾

    ?我在?D:anaconda實(shí)例代碼 下打開jupyter notebook ?無(wú)論我在那個(gè)文件下打開jupyter 都是同一個(gè)文件這是因?yàn)槟憧赡茉趈upyter notebook 的那個(gè)配置文件中設(shè)置固定的路徑 假如你的.py 文件在D:anaconda實(shí)例代碼 下 你想通過(guò)jupyter notebook 運(yùn)行它很簡(jiǎn)單 ?上傳到j(luò)upyter notebook本地 ? ? ?如何運(yùn)

    2024年02月12日
    瀏覽(93)
  • 【C#】在Windows資源管理器打開文件夾,并選中指定的文件或文件夾

    【C#】在Windows資源管理器打開文件夾,并選中指定的文件或文件夾

    因軟件里使用了第三方插件,第三方插件的日志文件夾存在路徑不止一個(gè),并且可能層級(jí)較深。 為便于運(yùn)維人員和最終用戶使用,在界面上增加一個(gè)“打開XX文件夾”的按鈕,點(diǎn)擊時(shí),打開第三方插件日志文件夾所在的上級(jí)文件夾,并選中其下級(jí)指定名稱的若干個(gè)文件和文件

    2024年02月14日
    瀏覽(99)
  • PowerShell 獲取某目錄下所有的文件、文件夾,同時(shí)對(duì)獲取到的文件路徑字符串進(jìn)行替換處理

    前言: 為了將Windows系統(tǒng)下的Java編譯文件與linux服務(wù)器上的文件進(jìn)行比較,故進(jìn)行此文件路徑的獲取及路徑處理。 在只有文件路徑 而沒有實(shí)際文件的情況下的比較。 代碼如下: 輸出文件(grepKekka.csv): 輸出文件(grepKekka1.csv): 輸出文件(grepKekka2.csv): 結(jié)語(yǔ): 為了將

    2024年02月13日
    瀏覽(96)
  • 解決打開文件、文件夾、拖拽復(fù)制刪除時(shí)鼠標(biāo)卡頓

    解決打開文件、文件夾、拖拽復(fù)制刪除時(shí)鼠標(biāo)卡頓

    最近新?lián)Q了電腦,一開始沒有問(wèn)題,但是用了一段時(shí)間后又出現(xiàn)了鼠標(biāo)卡頓(說(shuō)明這問(wèn)題不是因?yàn)殡娔X性能太差),最后參考如下文章解決問(wèn)題【學(xué)習(xí)筆記】記錄一個(gè)win 11 操作文件卡頓,Windows 資源管理器CPU占用飆升問(wèn)題_shexview-x64-CSDN博客 原來(lái)是百度網(wǎng)盤惹的禍 我這個(gè)方法

    2024年02月11日
    瀏覽(23)
  • Windows:設(shè)置右鍵用RStudio打開文件和文件夾

    Windows:設(shè)置右鍵用RStudio打開文件和文件夾

    在使用RStudio寫R腳本的時(shí)候總是要先打開它,再通過(guò)它打開腳本和文件夾,感覺不是很方便。由于VSCode以及其他軟件都可以整合到右鍵菜單中打開文件或文件夾,因此就折騰了一下怎么在右鍵中使用RStudio打開文件,下面是效果展示以及設(shè)置步驟,最后是參考鏈接。 右鍵選擇文

    2024年02月06日
    瀏覽(36)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包