媒体资产管理系统中基于ffmpeg技术的应用设计

媒体资产管理系统中基于ffmpeg技术的应用设计

ID:31361211

大小:111.00 KB

页数:8页

时间:2019-01-09

媒体资产管理系统中基于ffmpeg技术的应用设计_第1页
媒体资产管理系统中基于ffmpeg技术的应用设计_第2页
媒体资产管理系统中基于ffmpeg技术的应用设计_第3页
媒体资产管理系统中基于ffmpeg技术的应用设计_第4页
媒体资产管理系统中基于ffmpeg技术的应用设计_第5页
资源描述:

《媒体资产管理系统中基于ffmpeg技术的应用设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、媒体资产管理系统中基于FFmpeg技术的应用设计  摘要:媒体资产管理(MediaAssetManagement,简称MAM)是指利用信息技术手段,对数字媒体资产所做的存储、管理、挖掘和再利用,实现媒体资产价值的优化。媒资系统在设计中为保证系统具有最大兼容性,就要对编码转换子系统进行改进,本文对FFmpeg技术相关理论及FFmpeg技术在媒体资产管理系统中的应用做一些探讨。  关键词:媒体资产管理;FFmpeg技术;编码解码  中图分类号:TP315  媒体资产管理系统是指对各类视频、音频资料的存储、编目、资产发布的综合信息系统,能够实现创建、编目、存储等,提高媒体资源利用率。媒体资

2、产管理系统的实现可以分为数据上下载系统设计、编码系统设计、编目系统设计以及存储管理系统设计等,为了保证实现兼容性,需要编码系统能完成多种格式之间的转换,因此FFmepeg技术不失为一个优化的选择。  1FFmpeg技术概述  FFmpeg是一个基于Linux操作系统,集录制、转换以及流化音视频为一体的解决方案,能够在绝大多数的操作系统中使用,包含了非常先进的音频/视频编解码库libavcodec,支持多种编码和解码。FFmpeg由视频文件转换命令行工具、多媒体服务器、媒体播放器、普通格式解析器以及音视频编码器等组成。8  FFmpeg命令行的基本格式是FFmpeg.exe[optio

3、ns]-iinput_file[options]output_file,FFmpeg参数由输入文件和文件两部分组成,输入文件名称前加下短线“-”,另外输入文件和输出文件可以自带可选参数,如参数-ss,格式为-sshh;mm;ss;xxx,设置转换的起点位置,如-ss00:30.000;参数-t,格式为-thh;mm;ss;xxx,转换持续的时间,如-t00:05.00.00;参数-vcodor,格式为-vcodor编码器,设置视频编码器,如-vcodorwrnv2等。  2FFmpeg视频转换的关键技术  FFmpeg视频转换的关键技术包括FFmpeg编码/解码的实现和格式转换的流程

4、。在技术实现方面,素材的格式转换功能主要是调用音频/视频编码库libavcodec中的相应函数来实现,需要注意的是在采用FFmpeg编码之前需要先初始化libavcodec库,导入帧速率、编码器码率以及编码像素格式等参数,接着再进行编码。结构体AVCodecContext中的各个成员参数通过预设的视频参数来赋值,系统每一帧的数据都变为视频流。编码过程为(部分):av_register_all()→av_find_stream_info()→avcodec_alloc_frame()→pCodec=avcodec_find_encoder(CODEC_ID_H264)→av_read_

5、frame()→avformat_close_mputfile().FFmpeg解码过程为(部分):av_register_all()→av_find_decoder()→avcodec_open→avcodec_encode_video→显示视频→avcoder_close()。8  FFmpeg采用了核心库+主程序的编程模式,实现内部各种函数的具体格式,也实现了对视频的编辑操作,修改部分文件格式处理的代码,系统的视频编辑界面采用非线性布局,能够非常精确的记录视频剪辑的时间。具体流程为:是否需要视频剪切(是)→是否需要格式转换(是)→编辑后关闭文件→更新各项统计参数→保存生成新文件

6、的函数→调用XMLParser组件生成文档。  3FFmpeg在媒体资产管理系统中的技术实现  3.1设计思路  通过FFmpeg.exe命令执行完成媒体转码,能够在主程序与FFmpeg进程中建立输出管道,来管理转换过程。主程序进程启动主程序线程、管道监视线程以及任务监视线程三个线程,包括数据上传下载系统、编码系统、编目子系统设计以及其他功能型设计等。主程序线程主要实现程序的初始化以及用户接口等任务,任务监视线程主要实现启动FFmpeg进程以及监视任务列表等,管道监视线程主要实现获取管道信息以及监视管道等过程。  图1系统结构设计图  主程序完成初始化后,创建管道事件和任务监视线程,

7、任务监视线程建立数据库连接生成任务队列,进而生成FFmpeg命令字符串,开始转换编码。FFmpeg转码完成后自动结束,进行下一任务。在FFmpeg的进程执行中,信息分为开始、过程和结束信息,分析开始信息字符串能够得到时长、视频格式、帧大小、视频制式等,进而计算转换完成百分比,返回给监视线程,用于等待控制。  3.2数据上下载系统设计  上载模块主要功能是实现素材的双码流导入,采编过程可参照两种命令实现:高品质:ffmpeg-iX:\input\a.wmv-

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。