unity打PC包在win7下不能播放mp4問題的解決方法

問題背景

unity 2019.4.18f1下使用videoplayer動(dòng)態(tài)播放mp4視頻,在win10環(huán)境下苔悦,不管是Editor狂魔,還是打包出來的PC包,均可正常播放凌彬。但在win7電腦上播放不出來沸柔。

解決過程

直覺上懷疑是解碼問題。視頻是策劃用QQ錄屏錄制的mp4铲敛,先用MP4Box查看下視頻信息褐澎。

mp4box -info G:\muweb\trunk\project\Assets\AssetSources\video\500545.mp4
# Movie Info - 2 tracks - TimeScale 1000
Duration 00:00:01.200
Fragmented: no
Major Brand isom - version 512 - compatible brands: isom iso2 avc1 mp41
Created: UNKNOWN DATE

iTunes Info:
        tool: Lavf57.2.102

# Track 1 Info - ID 1 - TimeScale 15360
Media Duration 00:00:01.200
Track has 1 edits: track duration is 00:00:01.200
Track flags: Enabled In Movie
Media Info: Language "Undetermined (und)" - Type "vide:avc1" - 36 samples
Visual Sample Entry Info: width=488 height=550 (depth=24 bits)
Visual Track layout: x=0 y=0 width=488 height=550
AVC/H264 Video - Visual Size 488 x 550
        AVC Info: 1 SPS - 1 PPS - Profile Baseline @ Level 3
        NAL Unit length bits: 32
        Chroma format YUV 4:2:0 - Luma bit depth 8 - chroma bit depth 8
        SPS#1 hash: EF6F62B13BA263A64FB8D30358F6037AF8DD720F
        PPS#1 hash: B45CE09D3615D8C80B755072D5E3307FDF18CB4E
        RFC6381 Codec Parameters: avc1.42C01E
        Only one sync sample
        Max sample duration: 512 / 15360

# Track 2 Info - ID 2 - TimeScale 48000
Media Duration 00:00:00.630
Track has 1 edits: track duration is 00:00:00.597
Track flags: Enabled In Movie
Media Info: Language "Undetermined (und)" - Type "soun:mp4a" - 30 samples
Alternate Group ID 1
MPEG-4 Audio AAC LC (AOT=2 implicit) - 2 Channel(s) - SampleRate 48000
        RFC6381 Codec Parameters: mp4a.40.2
        All samples are sync
        Max sample duration: 1024 / 48000

其中可以看到視頻參數(shù)是RFC6381 Codec Parameters: avc1.42C01E,不過并不是所有MP4都是這個(gè)參數(shù)伐蒋,有的是RFC6381 Codec Parameters: mp4v.20.1工三。咱對這codec不熟,在微軟官網(wǎng)上看到MP4好幾個(gè)格式的要求也僅僅是win7:

image.png

事實(shí)也是如此咽弦,這些視頻在win7上是可以播放的徒蟆,比如用win7自帶的Windows Media Player,但在unity里就不行型型,那說明應(yīng)該不是系統(tǒng)本身不支持段审,而是unity的原因。
而后看到下面這篇文章:https://blog.csdn.net/EverNess010/article/details/80684724
其中提到將win7升級(jí)到sp1闹蒜,經(jīng)確認(rèn)寺枉,測試使用的win7本來就是sp1,而上圖也已經(jīng)表明win7是支持MP4的绷落,和系統(tǒng)無關(guān)姥闪。
將視頻編碼改為vp8呢?經(jīng)過測試確實(shí)可行砌烁,不管在win10還是win7上均可播放筐喳。
image.png

于是,解決方法便是函喉,寫一個(gè)腳本來自動(dòng)處理避归,導(dǎo)入MP4時(shí)將其編碼改為vp8,如下所示:

using UnityEngine;
using UnityEditor;
using System.IO;
public class AssetPostprocessorEx : AssetPostprocessor
{
    static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
    {
        for (int i = 0; i < movedAssets.Length; i++)
        {
            AssetDatabase.ImportAsset(movedAssets[i]);
        }
    }
    void OnPreprocessAsset()
    {
        var type = assetImporter.GetType();
        if (type == typeof(VideoClipImporter))
        {
            VideoClipImporter import = (VideoClipImporter)assetImporter;
            var setting = import.defaultTargetSettings;
            setting.enableTranscoding = true;
            setting.codec = UnityEditor.VideoCodec.VP8;
            import.defaultTargetSettings = setting;
        }
        else
        {
            // ... 處理其他類型資源
        }
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末管呵,一起剝皮案震驚了整個(gè)濱河市梳毙,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌捐下,老刑警劉巖账锹,帶你破解...
    沈念sama閱讀 217,509評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件萌业,死亡現(xiàn)場離奇詭異,居然都是意外死亡奸柬,警方通過查閱死者的電腦和手機(jī)生年,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鸟缕,“玉大人晶框,你說我怎么就攤上這事排抬《樱” “怎么了?”我有些...
    開封第一講書人閱讀 163,875評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵蹲蒲,是天一觀的道長番甩。 經(jīng)常有香客問我,道長届搁,這世上最難降的妖魔是什么缘薛? 我笑而不...
    開封第一講書人閱讀 58,441評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮卡睦,結(jié)果婚禮上宴胧,老公的妹妹穿的比我還像新娘。我一直安慰自己表锻,他們只是感情好恕齐,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著瞬逊,像睡著了一般显歧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上确镊,一...
    開封第一講書人閱讀 51,365評(píng)論 1 302
  • 那天士骤,我揣著相機(jī)與錄音,去河邊找鬼蕾域。 笑死拷肌,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的旨巷。 我是一名探鬼主播巨缘,決...
    沈念sama閱讀 40,190評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼契沫!你這毒婦竟也來了带猴?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,062評(píng)論 0 276
  • 序言:老撾萬榮一對情侶失蹤懈万,失蹤者是張志新(化名)和其女友劉穎拴清,沒想到半個(gè)月后靶病,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,500評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡口予,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評(píng)論 3 335
  • 正文 我和宋清朗相戀三年娄周,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片沪停。...
    茶點(diǎn)故事閱讀 39,834評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡煤辨,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出木张,到底是詐尸還是另有隱情众辨,我是刑警寧澤,帶...
    沈念sama閱讀 35,559評(píng)論 5 345
  • 正文 年R本政府宣布舷礼,位于F島的核電站鹃彻,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏妻献。R本人自食惡果不足惜蛛株,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望育拨。 院中可真熱鬧谨履,春花似錦、人聲如沸熬丧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽锹引。三九已至矗钟,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間嫌变,已是汗流浹背吨艇。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留腾啥,地道東北人东涡。 一個(gè)月前我還...
    沈念sama閱讀 47,958評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像倘待,于是被迫代替她去往敵國和親疮跑。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容