问题描述

此问题的具体描述如下。
由于项目需求,需要在项目中添加10多个视频,其中还有一个非常规尺寸的视频。
公司的开发环境为win10系统。
使用Unity版本为Unity5.6.4f1。
使用IDE为vs2017。
显卡为N卡1070。
正常开发过程中以及打包后测试都没有问题,所以我也就放心的把包直接给客户了,但是客户反映无法使用。
到现场后进行测试,发现客户使用的所有系统均为win7系统,同时也使用了现场的3台win7设备进行了测试,均为白屏。
但是公司的win10开发环境下可以运行,同时在另一台公司的750等级显卡的win10系统设备上测试也可以运行,只不过很卡。
由于我家的电脑也是win7的,所以带回家进行测试,发现确实无法运行。
但是在家中的Unity2017.4上面却可以正常运行。只是一旦打包就无法运行。
此外值得注意的一点是,并不是所有视频都无法使用,我个人之前下载过的视频都可以正常的在win7和win10的工程使用。
但是客户提供的所有视频均无法使用。

解决过程

通过查看打包后的output_log.txt日志发现,无法播放视频的原因是当前视频的解码错误导致的。
由于视频是客户提供的,所以跟客户进行确认,客户说所有的视频都是以一种通用的高清编码方式h264进行制作的。
同时客户提出之前他们做的这些视频从来没有出现过此类问题。
通过查阅网络资料,此时得出的解决方案有一下3点:

  1. 将系统升级为win7 sp1以上。
  2. 将视频编码方式转换为vp8。
  3. 由于我个人的测试视频可用,而客户的视频无法使用,所以我怀疑客户那边视频的某些设置有问题。

虽然有3个方案,但是由于客户那边需求必须是win7系统。
而且他们的有一个视频融合系统是跟系统相关的,所以第一个方案风险很大,直接剔除。

方案二经过和他们的沟通,他们说完全没听说过vp8的编码方式,说这个是一个不常用的编码方式需要我们提供插件。
所以暂时搁置此方案。

方案三经过反复沟通,我把自己测试用的视频发给了客户,但是他们那边说跟他们提供的视频格式没有不同。无果。

此时进行了视频格式转换的尝试,经过进一步的查阅资料,看到有人说即使是mp4也存在编码格式的差异。
可以使用“格式工厂”这款软件,将视频重新转换一遍,编码方式选择为MPEG4(DivX),这样就可以在win7中播放。
经过试验,结果可行,但是也只有此种格式的mp4转码可用。
但是将所有视频转码打包后,发现此时在win7打开后直接程序崩溃。并且此时在output_log.txt文件中也没有错误信息。
同时我为了进行排查,将这个大视频单独进行了打包,结果发现是可以在win7播放的,可以打包进项目后就崩溃。
感觉很无奈。

此时经过进一步查阅资料,通过科学上网去google查了下外文帖子,发现也有人遇到了类似问题,并且也在官网上查到了。
同时在查阅过程中发现可以直接在unity中对视频进行vp8转码!
经过阅读老外的资料,发现这个问题可能是Unity的一个bug。
而且目前在我已知的资料中显示Unity5.6以后的所有版本均存在此问题。
同时这个问题只会在win7系统发生,还会导致视频导入unity中后无法进行vp8转码。
只要转码就会报错:WindowsVideoMedia error 0x8007007b while reading file://
和一个找不到视频头文件的错误。

此时我首先是想到尝试将MP4转化为Unity原生支持的.OGV格式,为此而买了一个视频格式转换软件。
同时想到将之前转换过的那个DivX编码的MP4尝试进行vp8转码,结果意外的成功了。
经过vp8转码后,这个DivX编码方式的mp4可以正常的在win7环境的项目中运行了。


    **最终的解决方案是将无法使用的mp4视频进行DivX转换,之后放到Unity中进行VP8转码。**

ps:之后测试了使用一个叫AVPro Video的插件,使用此插件进行播放而不是使用Unity自带的Video Player播放,此时可以使用原视频进行播放。说明可能Unity本身在视频这部分还存在一定的问题。

Unity打包PC包时,在WIN7环境下播放视频崩溃问题的解决记录相关推荐

  1. Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本的开发环境(亲测)

    转至 http://blog.csdn.net/ccf19881030/article/details/9204801   写这篇博客时2D游戏引擎Cocos2d-x的最新版本为2.1.4,记得很久以 ...

  2. 使用idea打包war包和maven项目打包war包放到tomcat中运行,以及报404错误的解决

    使用idea打包war包和maven项目打包war包放到tomcat中运行,以及报404错误的解决 在tomcat下运行打包的war包,访问时显示404 浅谈打包war包的方式 第一种: 第一步: 第 ...

  3. 关于压缩jar包时提示*.*没有这个文件或目录的问题以及解决办法:

    关于压缩jar包时提示.没有这个文件或目录的问题以及解决办法: 问题描述: 我在打包jar时,CMD中进入到包的上一层目录. 在命令提示符中输入 提示如下: 从提示中可知没有找到我们想要打包的clas ...

  4. win7环境下创建超级隐藏账户

    在win7环境下,系统安全得到了加强,今天来看看怎样在win7环境下新建一个超级隐藏用户. 首先,我们需要新建一个普通的账户. 在win7中我们使用net  user  添加或者删除账户都是被拒绝的. ...

  5. Win7环境下MSCOMM32.OCX控件的使用

    作者:iamlaosong 以前曾做个稽核重量的称重拍照软件,现在有部门要使用,说是用不起来,只好再捡起来试用一下. 试用发现Win7环境下串口无法使用(Error 8015---Could Not ...

  6. WIN7环境下debug的使用

    在win7环境下debug的使用 背景:豪华绚丽的Windows让人们把DOS抛到遥远的记忆角落.然而,真正有价值的东西不会轻易退出历史的舞台,Debug就是这样的经典作品之一.从古老的DOS到现今的 ...

  7. 在Win7环境下搭建Geant4工作平台

    本物理专业小硕,现在材料实验室工作,研究方向大概是核屏蔽材料的软件模拟吧.其实实验室里大多数师兄弟都是搞焊接的,平时能接触到这类直接给源码自己编译的软件的机会基本为零,所以一切都靠自己探索,成功搭建了 ...

  8. win7能用的matlab,win7环境下使用matlab7.0(R14)方法

    matlab7.0是一款非常强大的工程仿真分析软件,虽说是2004年的版本,但易用性和稳定性仍然不错,所以此版本仍然在各大单位服役.下面是学习啦小编跟大家分享的是win7环境下使用matlab7.0( ...

  9. 在win7系统 Keil 开发环境下 Jlink 仿真器连不上解决办法

    Keil 开发环境下 Jlink仿真器,在win7系统下,仿真器连不上解决办法 进入设备管理器,发现黄色问号,即windows不识别设备,分别右键点击属性,更新驱动程序.在安装keil目录下自动查找, ...

最新文章

  1. JavaScript 为什么要有 Symbol 类型?
  2. 关于反爬虫,看这一篇就够了
  3. VTK修炼之道44:图形进阶_vtkPolyData数据源讨论与数据创建
  4. python selenium webdriver_Python:selenium.webdriver问题(服务器上没有X)
  5. java web前端模版,以Eclipse替核心搭建JAVA WEB开发环境(三)-模板项目Archetype
  6. hiveServer2 和 metastore的一点解读。
  7. matlab求矩阵中值函数,matlab在一个函数里,如何调用另一个函数里面求得的雅可比矩阵并赋值?...
  8. 选择什么样的时机将IT运维服务外包
  9. MongoDB - 分片管理
  10. Java中的集合HashSet、LinkedHashSet、TreeSet和EnumSet(二)
  11. python numpy 里面的[:, None]是个什么鬼?[..., None]呢?
  12. 采集屏幕编码H264
  13. 解决应用程序无法正常启动0xc0150002等问题
  14. 用React实现基于Canvas的涂鸦画板
  15. 美国梅西学院计算机科学与技术,新西兰梅西大学计算机科学硕士专业很难吗?看完入学条件就知道了...
  16. Python爬虫实现网页自动刷票
  17. 初识QT之QTWidget窗口
  18. web.py应用工具库:webpyext
  19. 做需求分析师的几点困惑
  20. 1994-2019:中国互联网流量争夺史

热门文章

  1. VMware的更新怎么这么恶心
  2. Oracle——获取当前系统时间以及插入日期型数据(to_date的用法)
  3. [百度笔试]百度笔试大集锦
  4. 浅析疯狂动物城的制作流程
  5. hysVideoQC v0.0.2.002版本发布
  6. 详解Axes()中的markersize
  7. 计算机网络CiscoPacket Tracer实验
  8. java生成pdf方法_详解Java生成PDF文档方法|chu
  9. java获取sqlserver连接并插入数据
  10. 30分钟学会XAML