下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 视频播放器

视频播放器.doc

视频播放器

童话诉说你我de结局
2017-08-31 0人阅读 举报 0 0 暂无简介

简介:本文档为《视频播放器doc》,可适用于综合领域

视频播放器Jpeg视频播放器功能需求播放本地硬盘的Jv后缀的视频图像。选择需要播放的文件在状态栏显示:视频的原始分辨率分辨率级别文件的码率、播放帧率、当前的播放分辨率、当前的码率CPU的使用率选择播放方式将解码后的图像显示、播放暂停、结束功能。暂停时提供截图功能DEMO版暂时不提供音频和字幕功能性能需求高性能播放器本身不导致太多的性能下降。对于K(*)的jv视频在核电脑(CPUE,Gcores,Gmemory,NvidiaGTX,WindowsXPprofessional)上测试引擎本身的解码速率能达到FPS(纯CPU解码)和fps(GPU加速解码)。在播放器中要求在添加了读文件和回显功能后性能下降不能超过。即在同一电脑上测试应该达到fps和fps以上。功能需求详述选择需要播放的文件a)弹出文件选择窗口显示jv后缀的文件供用户选择在状态栏显示:视频名称视频的原始分辨率(OrgRes)当前的播放分辨率(CurRes)、分辨率级别(DwtLevel)当前分辨率级别(CurDwtLvl)文件的码率(BitsRate)、当前的码率(CurBitsRate)视频帧率(FPS)播放帧率(CurFPS)、CPU的使用率(CPUU)a)视频名称:即当前的jv文件名不包含jv后缀b)视频的原始分辨率分辨率级别当前的播放分辨率当前分辨率级别从这些属性数值中可以在解码成功后调用引擎函数decoder>CheckProperties(handler,properties)获得。其中当前分辨率级别是在调用引擎前由用户指定:sSizemSize视频原始分辨率sSizemOutputSize当前的输出分辨率sSizemThumbOutputSize缩略图大小OutpormatmOutpormat输出格式在调用的时候指定sSizemCodeBlockSize码块大小jpeg的属性sSizemTileSize分块大小jpeg的属性sdmTileNum分块数量jpeg的属性shortmComponentNum通道数量jpeg的属性shortmCalculatedComponentNum输出的通道数量jpeg的属性shortmDwtLevel分辨率级别jpeg的属性在下文“选择播放方式”中需要用到shortmLayer分层数量jpeg的属性shortmBitDepth通道位深jpeg的属性shortmRoiShift感兴趣区域设置jpeg的属性EncodeFormatmFormat编码格式jpeg的属性EncodeMathodmMethod编码方式jpeg的属性JpProgressionmProgression渐进方式jpeg的属性intmHeaderLength码流的头大小jpeg的属性从这些属性数值中可以获得视频的原始分辨率分辨率级别当前的播放分辨率另外当前分辨率级别是在调用引擎前由用户指定c)文件的码率:以Mbitssec为单位精确到整数。在jv文件头可以获取视频的码率:BitRate=videobitsRated)当前码率:以Mbitssec为单位精确到小数点后一位。每秒更新一次计算该秒内的输入视频码流大小得到:CurBitRate=totalsinputizeofcurrentsecondinbytes*e)视频帧率:在jv的文件头可以获得这个数值在DCP规范中只有FPS和FPS两个合法值。为整数。f)播放帧率(CurFPS):每秒更新一次显示播放器运行到当前的总帧率简单讲就是本视频从开始到当前引擎成功解码并回显的帧数除以播放时长。精确到小数点后一位g)CPU使用率:每秒更新一次简单回显当前的CPU使用率精确到小数点后一位h)显示举例如下:Demo分辨率:*(*)DWT级别:码率:MBS帧率:FPSCPU:选择播放方式a)缺省为原始大小的文件b)菜单上提供选项用户可以选择分辨率级别DCP规范不大于所以在菜单上我们提供选择和全尺寸。将此参数传给“解码库”解码库可以提供不同的分辨率输出。举例视频的分辨率级数为当用户选择则解码到分辨率级如果用户选择大于合法的分辨率级别则忽略该选择仍输出将解码后的图像显示、播放a)为效率考虑本版本只需要显示引擎的输出分辨率不进行视频的拉伸和变形。b)如果播放的视频大小小于窗口则将视频显示在窗口正中c)如果视频尺寸大于窗口也仅需要显示正中即可d)回显格式可以使用位BMP暂停、结束功能。暂停时提供截图功能a)暂停时菜单栏提供选项可以将当前画面另存为jp(即直接存储输入的码流)或BMP(输出的码流缺少文件头可以调用引擎工具存储)b)为简单考虑文件名可以自动设定为视频名称加上计数。例如DemojpDEMO版暂时不提供音频和字幕功能Jv文件格式说明Jv视频文件包括文件头帧头和帧三个部分:………………………………………文件头帧头第一帧帧头第一帧帧头第一帧文件头格式:文件头长度为字节可以使用如下结构读出:structjkvideofileheaders{union{charmDcpHeaderstruct{charmJ"J"charmV"J"intmHeaderLength头长度=intmVideoSize视频长度charmReservedInfoEnable=表示随后的信息无用=xff表示随后的信息有内容charmReserved保留信息通常显示版权版本等信息intmFrameCount视频总帧数由此和播放帧率可以计算时长intmFps播放帧率必须为或floatmBitsRate视频码率intmWidth全尺寸的宽度(像素)intmHeight全尺寸的高度(像素)intmBitdepth每通道的位深intmChannel通道数}}}typedefstructjkvideofileheadersJkVideoHeader该结构定义在decoderjkfvjkvideoh代码示例为:JkVideoHeadervideoHeaderconstintDCPHEADERLENGTH=fread(videoHeader,,DCPHEADERLENGTH,fp)其中mJ和mV是jv文件的标志必须为字母“J”和“V”除去以上所指示的内容外其他字节暂时无用。帧头格式每个帧头的长度为字节:ABC–字节其中字节保留第到字节记为A,B,C保存本帧的长度(字节数)帧长度=(A<<)(B<<)c帧格式每一帧实际上就是一帧jpeg的码流以xFF,XF打头在截屏的时候可以将本段内容直接以二进制方式存为jp格式的图片解码引擎调用说明请参见历程jpviewer或jpvplayer获得调用的示例

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/7

视频播放器

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利