基于Softbus的媒体资产管理系统(MAM)设计与实现/

2019-04-13 21:30:11

C++ development 媒体 MAM Softbus



摘 要

随着Internet的持续发展、计算机和数据网络技术的迅猛发展以及网络带宽的不断加大,流媒体技术从理论研究阶段逐渐走向了实际应用。在数字技术高速增长的今天,各大电信运营商都把流媒体技术作为新的业务增长点,从而投入大量的资金和人力,希望能够将流媒体数据也可以象语音信息一样,成为可以灵活管理和计费的运营资源。
目前,"媒体资产"作为媒体企业的无形资产,它的经济价值已经越来越被媒体行业认同与肯定。互联网上已经有许多在线电视,电影等媒体节目在实际运行。要永久地保存这些视频节目资料对于现在的IT行业来说并不是一件很难的事,但是要根据用户的要求在浩如烟海的资料库中全面、准确、及时地找到所需的内容,并为他们提供各种丰富的节目服务却并不是一件很容易的事。而这些,却正是媒体运营商能够运营媒体资源所必须的前提,所以越来越多的媒体企业认识到必须改善对"媒体资产"的管理方法,才能适应高速发展的业务需求。
因而,媒体资产管理(Media Asset Management,MAM)是当前广播电视行业所面临的一个重要问题。媒体的资产管理在构成、特点、需求等方面与常规的产业的资产管理有很大的区别,因其特殊性而使媒体资产管理成为一个特定的技术领域。而且也是一个大有可为的新技术领域。
目前国内媒体资产管理系统的成功开发厂商寥寥可数,而国外的媒体资产管理系统开发者由于文化和系统实际等多方面的原因很难被国内媒体企业推广和大规模应用。如IBM和Sobey等等公司都投入了大量的人力和物力致力于该系统的研究当中。但由于系统架构的局限大都存在着一定的缺陷。例如,不能实现跨平台,运行效率低等缺点。
本文所设计的媒体资产管理系统则在借鉴国内外系统长处的同时摒弃其不足。大胆采用标准C++进行开发并基于Softbus的灵活系统架构,将硬件总线的思想引入软件程序的开发,使软件模块也可以像硬件子系统那样在保持相互独立的同时又能实现良好互相通信。实现了软件模块的标准化和动态性,这大大提高了程序的开发效率。
Softbus思想来源于硬件的总线思想,总线是微机系统中广泛采用的一种技术。从物理上讲,总线就是一组信号线,是在多于2个模块(子系统或设备)间相互通讯的通路,也是微处理器与外部硬件接口的核心。标准化和动态性是总线技术的两大特点。正是受到这一点的启发,我们也可以提供一个通用的基础平台,构架在操作系统之上,同时又放在应用程序之下,为各个应用程序模块提供接口,这样,就不用为每一次项目开发都重新编写接口了。使软件的开发也能像硬件一样具有标准化和动态性的优点。
C++是在C的基础上发展起来的一种新型程序设计语言,它保持了C的高效、简洁和接近汇编语言的特点,既支持面向过程的程序设计,也支持面向对象的程序设计,它为程序员的程序开发活动提供了一个优良的程序设计环境,以产生模块化程度高、重用性和维护性较佳的程序。
但是由于当前C++语言由于被不同厂商进行各自的开发工具包装,使得其在不同厂商系统之间的兼容性受到很大的影响。直到1999年末,才提出C99标准。
本系统由于采用遵循C99标准的标准C++作为开发语言,兼顾了系统的性能和兼容性。
同时,系统采用高稳定,高可靠的UNIX操作系统作为整个系统的操作系统基础。在系统资源耗费,稳定性等性能上都比WINDOWS平台高很多。
在数据方面采用目前最为广泛应用的Oracle大型关系型数据库。ORACLE数据库以其支持大数据库、多用户的高性能事务处理,对业界各项工业标准的支持,完整的安全和完整性控制,支持分布式数据库和分布处理,具有可移植性、可兼容性和可连接性等突出优点倍受用户喜爱。同样增加系统的数据安全性和数据稳定性。
基于以上设计的MAM系统体现了以上所述的种种优势,它可以运行在UNIX操作系统下也可以是Windows操作系统。整个系统非常稳定并且开发效率和运行效率极高,本系统充分发挥了Softbus思想的优势,其前台页面基于标准HTML语言实现,可以直接用使用浏览器,后台程序则采用标准C++编写的Softbus系统架构来实现。
该系统包括了系统、节目、电视频道、分类、影视奖项、业务套餐以及配置几个部分。大体来说,有Browser和Editor两种页面。只需分别继承Twin_Browser类和Twin_Editor类,那么它们将具有父类的一切属性,大大减轻了开发工作量。
在Softbus中声明了几个比较重要的函数browserType(),getObjectID(),processButton()和display()等。
另外,Softbus Softbus接口基本对象API提供了极其重要的两个类类WAttribute和WattributeList。
如此庞大的一个媒体资产管理系统若不是采用了灵活开发的Softbus架构,开发起来将是怎样的工作量,以及其运行的效率和稳定性都是很难估计的。
媒体资产管理系统是一个全新的技术领域,随着技术的不断进步和媒体行业自身的不断发展,我认为媒体资产管理系统今后的发展方向应该主要集中在基于工作流管理系统的MAM系统以及基于人工智能技术的媒体资产管理等领域。作者对基于工作流系统的媒体资产管理系统和基于人工智能技术的媒体资产管理系统都做了探索性研究与分析,由于技术发展和媒体行业自身发展的制约,这方面的研究还有很长的路要走。
总之,媒体资产管理系统是一个大有可为的方向,国内外相关技术的研究和开发都还不够充分,我们在这个方向只有继续努力,不断探索,才能力争为国家的媒体行业赶超国际水平。

关键词:媒体资产管理 Softbus 标准C++ UNIX操作系统



ABSTRACT
With the continual development and expansion of Internet and computer data network, additional the increase of network bandwidth, stream-media technique has been applied widely. And Now, almost all operators regard the stream-media technique as the next most important operation item and spare large amount of human and financial resource on it.
As one of the most important asset of a media enterprise, media asset attract more and more enterprise to manage them in a more effectual way. But as we know , it always not easy to do. Especially, finding the resource what you just want in mass of source which only in original data type well and truly and quickly maybe is the most difficult things we can do. But why must we do it? It is requested by the development of industry and enterprise.
So,MAM(Media Asset Management) become the first problem must be resolved of the broadcast and TV industry. Much of differences between MAM with traditional asset management made a fully new field of media technique.
In our country, there are still only tiny number of enterprise develop the MAM now, while many MultiNational Corporations are try to develop a MAM fit for china such as IBM. In fact, for different culture and history, foreign company have little probability to give us a bread-and-butter MAM system.
The MAM system designed by ourselves use for reference all of the in home and foreign experience in MAM and use the standard C++ language follow the C99 standard and build in softbus( software bus ) technique in which write software into module as the chip of hardware so user can add and remove a software module when they want while can keep the communication unblocked and straightway.This give our MAM system two significant features of standardization and dynamic which every software want to be provided with now.
Our SoftBus design comes from the bus in hardware,bus is a widely use technique in PC hardware system. Think it in physical way, bus just a set of signal line between more than one subsystems and modules used for giving the communication channels for them. and also, bus is the core of interface with which micro-processor can connect to external hardware module and signed with two main feature of standardization and dynamic. In software ,we also need semblable mechanism to combine our hundred of modules with our main() function also between modules themselves. And so, we write the softbus.
C++ language was developed from C language, it supports the OO(Object Oriented) design while keeps the excellences such as high efficiency, simple to development and near to assemble language. C++ give programmer a excellent environment for development and make the program more modularize and with higher maintainability.
But because many company can have their own C++ development tool, so almost all of they add many special feature into C++ and give all kinds of C++ development tool with different standard even not compatible with each other. To resolve this problem,C99 standard been brought forward until the end of 1999.
Our MAM system follow the C99 standard and so have the import features of high performance and good compatibility.
At the same time,our MAM system run on high-steady and high-performance and high-available OS(Operate system) UNIX operate system so it has many strongpoint that the system based on Windows operate system has not.
In database ,our system use the most popular large RDBMS (relative Database management system) Oracle 9i . Oracle support almost all of the DB standard of computer industry and distributed database and distributed process system and can easy to be porting to many other DBMS.And oracle cluster can add the more security and data stability.
Based on above-mentioned design ,our MAM system own all of the excellence and run on UNIX but not Windows and total system run stably while with high performance. The idea of softbus give the system modularization design and union the HTML client with the C++ server program into a huge system work correctly.
Our system include system, program, channel, category, awards, and configuration parts . in program view ,have two kinds of pages that is Browser and Editor. The only things need the user to do is to inherit the class Twin_Browser and Twin_Editor so the subclass own the attribute and improve the performance and deduce the work task of all system development.
In softbus ,we declared some important function such as browserType(),getObjectID(),processButton() and display() and so on.
In addition, Softbus have the base interface object, and the base interface API give two important class WAttribute and WattributeList to process the base data structure in system program.
Such a large MAM system use softbus design can be development finished in short time and with not more than 3000 lines codes, but had not with softbus, may be we need more than 50000 lines code and long and long time to implement this system.
After development the MAM of our own, I know that MAM system will focus it development in workflow system and artificial intelligence technique with the continuous development of technology and media industry as a new technical field. But because technical details, there are still many hard task need we to work on it in MAM system field.
All in all, MAM system is a new and cryptic technical field for us to spare more human and financial resource. I will try my best on the MAM system of our country own.


Key words: the media asset management; Softbus; standard C++; UNIX operating system