PS:要转载请注明出处,本人版权所有。

PS: 这个只是基于《我自己》的理解,

如果和你的原则及想法相冲突,请谅解,勿喷。

前置说明

  本文作为本人csdn blog的主站的备份。(BlogID=073)

  本文发布于 2018-10-17 16:29:54,现用MarkDown+图床做备份更新。blog原图已丢失,使用csdn所存的图进行更新。(BlogID=073)

环境说明

  system-info :Linux #1 SMP Wed Oct 17 12:06:29 CST 2018 x86_64 x86_64 x86_64 GNU/Linux

  cpu-info:Intel(R) Core(TM) i7-6498DU CPU @ 2.50GHz

前言


  无

2018/11/7重大更新


  由于今天对另外一个板子安装sdk然后进行硬解码,但是,出现的问题是,所有驱动、内核都正常加载,但是vainfo测试异常。查了半天,才发现是当前sdk 版本不支持当前版本的cpu。所以这里附上精心查找的sdk版本能支持的cpu设备列表。

Intel Media SDK 版本所支持的设备列表
Intel Media Server Studio *版本所支持的设备列表
不用感谢我,此图呕心沥血奉上!!!!!!(藏的巨深,气啊!)

Intel Media Server Studio


  Intel 媒体服务解决方案。https://software.intel.com/en-us/intel-media-server-studio

下载Intel Media Server Studio Community Edition


  1. 注册intel账号,他要验证几天,反正我是第二天收到验证通过的消息。
  1. 然后下载得到一个压缩包。名字类似:MediaServerStudioEssentials2017R3.tar.gz

准备安装Intel Media Server Studio Community Edition


  1. 上传MediaServerStudioEssentials2017R3.tar.gz到开发板子。并解压!

  2. 进入MediaServerStudioEssentials2017R3目录,解压SDK2017Production16.5.2.tar.gz

  3. 进入SDK2017Production16.5.2目录,里面包含两个版本的sdk,一个是centos(intel recommend),另外一个是普通的linux SDK,此外,此目录你需要打开media_server_studio_getting_started_guide.pdf文档,参考里面的安装说明。

    目录如下:

  1. 接下来就是基本操作了,按照别人的pdf做相应的事情。

开始安装Intel Media Server Studio Community Edition


  1. 修改当前登录用户的所属附加群组
usermod -a -G video username
  1. 检查系统是否识别到intel vga 适配器
lspci -nn -s 0:02.0

  图中的vid:1906不需要和我的一致。

  1. 在文档中提供了一般的linux系统安装sdk的脚本。但这里我推荐一条一条的执行方便排错。

  2. 删除其他的libva(接入显卡api处理图像的库) libdrm(用户态显卡调用api) 并清除之前的历史安装的sdk

echo "remove other libdrm/libva"
find /usr -name "libdrm*" | xargs rm -rf
find /usr -name "libva*" | xargs rm -rf echo "Remove old MSS install files ..."
rm -rf /opt/intel/mediasdk
rm -rf /opt/intel/common
rm -rf /opt/intel/opencl
  1. 解压依赖包,复制相关文件到系统目录,添加库目录到ldconfig配置(需要超级权限)
echo "install user mode components"
#unpack the generic package
tar -xvzf intel-linux-media_generic*.tar.gz
tar -xvJf intel-opencl-cpu-*.tar.xz
tar -xvJf intel-opencl-devel-*.tar.xz
tar -xvJf intel-opencl-r*.tar.xz
#put the generic components in standard locations
/bin/cp -r etc/* /etc
/bin/cp -r lib/* /lib
/bin/cp -r opt/* /opt
/bin/cp -r usr/* /usr
#ensure that new libraries can be found
echo '/usr/lib64' > /etc/ld.so.conf.d/libdrm_intel.conf
echo '/usr/local/lib' >> /etc/ld.so.conf.d/libdrm_intel.conf
ldconfig
  1. 安装内核编译依赖
echo "install kernel build dependencies"
apt-get -y install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc g++

注意如果ncurses-dev找不到,则用libncurses5-dev

  1. 下载4.4.0内核,并解压,然后打补丁
wget https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.4.tar.xz
tar -xJf linux-4.4.tar.xz
echo "apply kernel patches"
cp /opt/intel/mediasdk/opensource/patches/kmd/4.4/intel-kernel-patches.tar.bz2 .
tar -xvjf intel-kernel-patches.tar.bz2
cd linux-4.4
for i in ../intel-kernel-patches/*.patch; do patch -p1 < $i; done
  1. 编译打过补丁的内核,并安装,这里你可以喝杯茶休息一会儿!
echo "build patched 4.4 kernel"
make olddefconfig
make -j 8
make modules_install
make install

  若遇到如下错误:

  安装openssl相关依赖

apt install libssl-dev
apt install openssl
  1. 重启就OK。

如果遇到无法进入图形界面


  1. 进入命令模式,把 /usr/lib64 /usr/local/lib /opt/intel/mediasdk/lib64/ 添加到LD_LIBRARY_PATH 或者把上述目录添加到系统库搜索路径中去。(ld.so.config)

  2. 更改grub的默认启动内核或者手动选择启动的内核版本,必须选择刚才安装的4.4.0

  3. 删除用户目录下的.Xauthority文件

测试安装成功


  1. 解压MediaSamples_Linux_2017R3_b698.tar.gz,并进入MediaSamples_Linux_2017R3_b698/samples/_bin/x64/

    目录,

  2. 检查驱动是否加载成功

vainfo | grep -v 'unknown'
  1. 测试例子
./sample_multi_transcode -i::h264 ../content/test_stream.264 -o::h264 test_out.h264 -hw –la
  1. 如果结果和上述图中类似,即可代表sdk安装成功。

后记


  无

参考文献


打赏、订阅、收藏、丢香蕉、硬币,请关注公众号(攻城狮的搬砖之路)

PS: 请尊重原创,不喜勿喷。

PS: 要转载请注明出处,本人版权所有。

PS: 有问题请留言,看到后我会第一时间回复。

Ubuntu 14.04 Intel 处理器 硬编解码配置(Intel® Media Server Studio)的更多相关文章

  1. 【转载】Caffe + Ubuntu 14.04 + CUDA 6.5 新手安装配置指南

    洋洋洒洒一大篇,就没截图了,这几天一直在折腾这个东西,实在没办法,不想用Linux但是,为了Caffe,只能如此了,安装这些东西,遇到很多问题,每个问题都要折磨很久,大概第一次就是这样的.想想,之后应 ...

  2. (四)Ubuntu 14.04 文件服务器--samba的安装和配置

    samba是Linux系统上的一种文件共享协议,可以实现Windows系统访问Linux系统上的共享资源,现在介绍一下如何在Ubuntu 14.04上安装和配置samba一. 一.更新源列表 打开&q ...

  3. [Linux 小技巧] Ubuntu 14.04 下编译、安装、配置最新开发版 GoldenDict

    1. 背景介绍 GoldenDict 是一款非常优秀的跨平台电子词典软件,支持 StarDict.Babylon 等多种词典.其 PC 版基于 Qt 编写,完全免费.开源且没有广告.GoldenDic ...

  4. Ubuntu 14.04 下使用微软的跨平台轻量级开发神器 Visual Studio Code

    因为 Visual Studio Code 不断更新,官方最新 v1.32 的 .deb 包已经不能用于 Ubuntu 14.04 直接安装了. 下载 v1.31 的 deb 包安装即可:https: ...

  5. Git使用:Linux(Ubuntu 14.04 x64)下安装Git并配置连接GitHub

    github是一个非常好的网络代码托管仓库,知晓许久,但是一直没有用起来,最近才开始使用git管理自己的文档和代码. Git是非常强大的版本管理工具,今天就告诉大家,如何在Linux下安装GIt,并且 ...

  6. Caffe + Ubuntu 14.04 64bit + CUDA6.5 + 无GPU 配置

    官网: http://caffe.berkeleyvision.org/installation.html#compilation 参考网站: http://www.cnblogs.com/dupul ...

  7. ubuntu 14.04设备OVS虚拟OpenFlow交换机配置汇总

    一.设备OVS sudo apt-get install openvswitch-controller openvswitch-switch openvswitch-datapath-source ( ...

  8. ubuntu 14.04 (desktop amd 64) 安装和配置ROS Indigo

    安装ROS 配置Ubuntu的软件源 配置Ubuntu要求允许接受restricted.universe和multiverse的软件源,可以根据下面的链接配置: https://help.ubuntu ...

  9. ubuntu 14.04安装OVS虚拟OpenFlow交换机配置总结

    一.安装OVS sudo apt-get install openvswitch-controller openvswitch-switch openvswitch-datapath-source ( ...

  10. 在Ubuntu 14.04安装 Let’s Encrypt并配置ssl

    1.下载安装 Let's Encrypt客户端 cd /usr/local/sbin sudo wget https://dl.eff.org/certbot-auto 2.添加执行权限 sudo c ...

随机推荐

  1. spring cloud与加密库jasypt(ulisesbocchio)冲突问题定位

    背景 最近在项目上遇到个问题.项目就是普通的spring cloud,spring cloud在spring boot的基础上多了一些东西,比如支持bootstrap上下文(通过bootstrap.y ...

  2. .NET 云原生架构师训练营(模块二 基础巩固 日志)--学习笔记

    2.2.2 核心模块--日志 ILogger 的使用 日志的 ID 日志的分类 日志的级别 LoggerProvider 日志的最佳实践 .NET Core 和 ASP.NET Core 中的日志记录 ...

  3. 到什么程度才叫精通 Linux?

    大家好,我是陶朱公Boy,一个认真生活,总想超越自己的程序员. 前言 知乎上有一个提问:到什么程度才叫精通 Linux?                              ↓↓↓ 今天,我们就 ...

  4. 跨界协作:借助gRPC实现Python数据分析能力的共享

    gRPC是一个高性能.开源.通用的远程过程调用(RPC)框架,由Google推出.它基于HTTP/2协议标准设计开发,默认采用Protocol Buffers数据序列化协议,支持多种开发语言. 在gR ...

  5. NC23803 DongDong认亲戚

    题目链接 题目 题目描述 DongDong每年过春节都要回到老家探亲,然而DongDong记性并不好,没法想起谁是谁的亲戚(定义:若A和B是亲戚,B和C是亲戚,那么A和C也是亲戚),她只好求助于会编程 ...

  6. NC16696 [NOIP2001]统计单词个数

    题目链接 题目 题目描述 给出一个长度不超过200的由小写英文字母组成的字母串(约定;该字串以每行20个字母的方式输入,且保证每行一定为20个).要求将此字母串分成k份( 1 < k ≤ 40 ...

  7. SSD 简介—— NAND 芯片介绍

    制作 存储芯片的制作和其他芯片制作大致相同,从沙子中提取单晶硅制作晶圆再封装芯片. 闪存芯片从架构上分为NOR和NAND NOR Flash的source line把每个cell都并联起来,而NAND ...

  8. Vue 3 的 setup语法糖到底是什么东西?

    前言 我们每天写vue3项目的时候都会使用setup语法糖,但是你有没有思考过下面几个问题.setup语法糖经过编译后是什么样子的?为什么在setup顶层定义的变量可以在template中可以直接使用 ...

  9. java怎么打印一个对象的内存地址

    在Java一般使用HashCode来代表对象的地址,但是两个相同的对象就不行了,两个相同的对象的hashcode是相同的. 如果要对比两个相同的对象的地址可以使用,System.identityHas ...

  10. typing的中的Optional说明

    from typing import Optional def show_count(count: int, singular: str, plural: Optional[str] = None) ...