肯定有不少人遇到这样的问题:在群晖安装了VIDEO(或者EMBY,或者 JELLYFIN)用来做媒体服务器,但是在播放电影的时候,有时会播放软件会弹出如下图的错误提示:
要想弄明白是怎么回事,那这里就要啰嗦一下,先讲讲基本知识。
【号外】
一个完整的视频文件,包括音频、视频和基础元信息,里面包含了音频和视频两部分,并且都是通过一些特定的编码算法,进行编码压缩过后的。视频格式一般有两个部分构成:一个是视频封装格式,一个是视频编码格式。视频封装格式简单点来理解的话就是一个【容器】,这个【容器】里封装什么样的【编码格式】最后得到一个完整的视频。
一、音频编码格式
音频编码方案之间音质比较(AAC,MP3,WMA等)结果: AAC+ > MP3PRO > AAC> RealAudio > WMA > MP3
目前最常见的音频格式有 Mp3、AC-3、ACC,MP3最广泛的支持最多,AC-3是杜比公司的技术,ACC是MPEG-4中的音频标准,ACC是目前比较先进和具有优势的技术。对应入门,知道有这几种最常见的音频格式足以。
二、视频编码格式
视频编码标准有两大系统: MPEG 和ITU-T,国际上制定视频编解码技术的组织有两个,一个是“国际电联(ITU-T)”,它制定的标准有H.261、H.263、H.263+、H.264(目前主流)、H.265(趋势主流)等,另一个是“国际标准化组织(ISO)”它制定的标准有MPEG-1、MPEG-2、MPEG-4等。
三、常见的音频视频编码:
1、MPEG系列
由ISO(国际标准组织机构)下属的MPEG(运动图象专家组)开发 视频编码方面主要是Mpeg1(vcd)、Mpeg2(DVD)、Mpeg4(DVDRIP使用的都是它的变种,如:divx,xvid等)、Mpeg4 AVC;音频编码方面主要是MPEG Audio Layer 1/2、MPEG Audio Layer 3(mp3)、MPEG-2 AAC 、MPEG-4 AAC等。注意:DVD音频没有采用Mpeg的。
MPEG是运动图像专家组(Moving Picture Experts Group)的缩写,于1988年成立,是为数字视/音频制定压缩标准的专家组,已拥有300多名成员,包括IBM、SUN、BBC、NEC、INTEL、AT&T等世界知名公司。MPEG组织最初得到的授权是制定用于“活动图像”编码的各种标准,随后扩充为“及其伴随的音频”及其组合编码。后来针对不同的应用需求,解除了“用于数字存储媒体”的限制,成为制定“活动图像和音频编码”标准的组织。
MPEG组织制定的各个标准都有不同的目标和应用,已提出MPEG-1、MPEG-2、MPEG-4、MPEG-7和MPEG-21标准。
2、H.26X系列
由ITU(国际电传视讯联盟)主导,侧重网络传输(注只是视频编码),ITU-T 的标准包括 H.261、H.263、H.264,主要应用于实时视频通信领域,如视频会议;MPEG 系列标准是由ISO/IEC制定的,主要应用于视频存储(DVD)、广播电视、互联网或无线网络的流媒体等。两个组织也共同制定了一些标准,H.262标准等同于 MPEG-2的视频编码标准,而H.264标准则被纳入 MPEG-4的第10部分。
如今广泛使用的 H.264 视频压缩标准已经不能够满足应用需要,应该由另一种更高的分辨率、更高的压缩率以及更高质量的编码标准所替代。ISO/IEC 动态图像专家组和ITU-T视频编码的专家组共同建立了视频编码合作小组,出台了H.265/HEVC标准。H.265的压缩有了显著提高,一样质量的编码视频能节省40%至50%的码流,还提高了并行机制以及网络输入机制。
在H.265出来之前,H264是压缩率最高的视频压缩格式。
四、目前市面常见的存储封装格式:
1、AVI : 可用MPEG-2, DIVX, XVID, WMV3, WMV4, AC-1, H.264
2、WMV : 可用WMV3, WMV4, AC-1
3、RM/RMVB : 可用RV40, RV50, RV60, RM8, RM9, RM10
4、MOV : 可用MPEG-2, MPEG4-ASP(XVID), H.264
5、MKV : 所有
五、码率
码率是指视频文件在单位时间内使用的数据流量,也叫码流或码流率,通俗一点的理解就是取样率,是视频编码中画面质量控制中最重要的部分,一般我们用的单位是kb/s或者Mb/s。一般来说同样分辨率下,视频文件的码流越大,压缩比就越小,画面质量就越高。码流越大,说明单位时间内采样率越大,数据流,精度就越高,处理出来的文件就越接近原始文件,图像质量越好,画质越清晰,要求播放设备的解码能力也越高。
当然,码率越大,文件体积也越大,其计算公式是文件体积=时间X码率/8。例如,网络上常见的一部90分钟1Mbps码率的720P RMVB文件,其体积就=5400秒×1Mbps/8=675MB。
通常来说,一个视频文件包括了画面(视频)及声音(音频),例如一个RMVB的视频文件,里面包含了视频信息和音频信息,音频及视频都有各自不同的采样方式和比特率,也就是说,同一个视频文件音频和视频的比特率并不是一样的。而我们所说的一个视频文件码流率大小,一般是指视频文件中音频及视频信息码流率的总和。
六、帧率
帧率也称为FPS(Frames Per Second)- - - 帧/秒。是指每秒钟刷新的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次。越高的帧速率可以得到更流畅、更逼真的动画。每秒钟帧数(FPS)越多,所显示的动作就会越流畅。
七、分辨率
视频分辨率是指视频成像产品所成图像的大小或尺寸。在成像的两组数字中,前者为图片长度,后者为图片的宽度,两者相乘得出的是图片的像素,长宽比一般为4:3,常见的视像分辨率有:
1、480P(俗称:标清) : 800 × 480 个像素点
2、720P(俗称:高清) : 1280 × 720 个像素点
3、1080P(俗称:超高清) : 1920 × 1080 个像素点
4、2160P(俗称:4K):3840 × 2160 个像素点
5、4320P(俗称:8K):7680 × 4320 个像素点
八、硬件解码
硬件解码:由显卡核心GPU来对视频进行解码工作,所以CPU占用率很低。
优点:播放流畅、低功耗。
缺点:受硬件条件限制、功耗大、画质没有软件解码的好。
九、软件解码
软件解码:由CPU负责解码进行播放。比如群晖里面最常见的视频软解码项目是FFmpeg。
优点:不受视频格式限制、画质略好于硬解。
缺点:会占用过高的CPU资源、对于超清级别以上视频可能没有硬解码流畅(主要看CPU的能力)。
十、延伸阅读
了解一下PT下载的电影资源详解:【点这里】。
【正题】
再回来说一下群晖的视频播放,很多人都想用上硬件解码,怎样才算用上硬件解码呢?首先,你的cpu要有核显,在Win系统用Xshell以root用户登录群晖SSH状态下,输入ls /dev/dri,看到有 card0 renderD128字样的,恭喜你可以使用硬件解码:
一、开启硬件解码的方法:
1、群晖DS VIDEO里面,把“硬件加速”打勾,就可以启用硬件解码;
特别说明一下:
硬件解码不等于硬件转码!
硬件解码不等于硬件转码!
硬件解码不等于硬件转码!
群晖的DS Video在转码的时候是使用CPU转码的,如果硬件加速又是打勾状态的话就冲突了,会造成:DS Video在线转码就一直转圈圈、离线转码会提示无法转码。
2、在EMBY的转码里面,把“可用时启动硬件转码”选择“高级”(此功能需要有EMBY会员),同时把所有的硬件解码器打勾;
3、在JELLYFIN的转码里面,在“硬件加速”这里选择“Video Acceleration API(VAAPI)”,在“VA API设备”这里选择“/dev/dri/renderD128“;
二、开启硬件解码后的表现:
1、群晖DS VIDEO如果使用软件解码,基本上CPU的占用率是99%,开启硬件解码后CPU占用率会降至40%以下甚至更低(根据CPU性能决定,CPU性能越强开启硬件解码后的CPU占用率越低);
2、EMBY开启硬件解码后,在EMBY后台控制面板首页,可以看到有VAAPI字样;
3、JELLYFIN开启硬件解码后,在后台控制面板首页,也会看到与EMBY类似的VAAPI字样。如果在Win系统用Xshell以root用户登录群晖SSH状态下,输入top,看到JELLYFIN的任务写有vaapi -hwaccel字样;
三、哪些支持硬解?
1、AMD显卡支持硬解的列表
2、Intel显卡支持硬解的列表
3、Nvidai显卡支持硬解的列表
4、常见的CPU核显芯片型号(由于intel十代的CPU目前暂时无法在群晖使用硬件解码,所以这里就暂时不列入说明)
四、都是电影文件,仔细对比有什么不同?
1、视频编码为hevc,分辨率为1080P,文件格式为mkv;
2、视频编码为hevc+dts,分辨率为4K,文件格式为mkv;
3、视频编码为h264,分辨率为1080P,文件格式为mkv;
4、视频编码为hevc+eac3,分辨率为4K,文件格式为mkv;
我们来假设一下:
(1)如果你的核显不支持H265/HEVC,但是偏偏你下载的电影又是H265/HEVC的视频编码,那么播放该影片文件就会播放不了;
(2)群晖公司由于没有DTS和EAC3的版权,默认情况下DS VIDEO是播放不了这两种编码的,如果你下载的电影中有DTS编码或者EAC3编码,那么播放该影片文件就会播放不了。
五、结论
看到这,你应该知道为什么同一部电影,这台群晖可以正常播放,另外一台群晖又不能播放的原因了吧?