jasonlee248
影视艺术欣赏论文 一、 对电影的认识 在我小时候的印象里,电影是一种在电影院看的,故事。不过比起电视剧来,故事讲得有点太短了,看着不过瘾。长大一点才知道,电影是一种艺术,不同地方的电影有着不同的特色,这也是一种文化的体现吧。 下面谈谈对各地电影的看法: 内地电影,从我有记忆开始看得最多的就是一些黑白战争影片,大多是讲抗日和解放战争的。后来看到越来越多的故事片,但也有相当一部分宣教片,那也是学校组织观看的。自己跟家人也看过一些片子,不过到现在大多都忘记了,给我印象最深的是《大红灯笼高高挂》,当时的确给我很大震撼。后来就不再去电影院看电影了,在电脑和网络上看得大多是国外片,国内的一般只是喜剧片如《手机》、《大腕》、《天下无贼》,和一些比较有名的,像《无极》等。 香港电影,给人感觉娱乐性较强,以市场为导向,像周星驰的一些电影,的确很好玩,但看的时候又不会有什么思想负担。挺适合休闲时观看的。 韩国电影,最近才看韩国电影,一般是些爱情电影和伦理片,但很适合中国人观看,大概是我们的文化很相近吧,感觉很细腻,和生活贴近。给我印象较深的是《我的野蛮女友》,这部电影当年可是在中国乃至亚洲刮起了一股野蛮旋风呀。 印度电影,只看过有限的几部印度电影,片名大多记不清了,只是对那大篷车和时不时的音乐和舞蹈还有点印象,现在不知道怎么样了,但那时的印度电影感觉上更像歌舞剧。 俄国电影,现代的俄国电影看得倒是很少,只是看过前苏联的一些片子,也大多是和十月革命和二战有关的片子,印象都不是很深。 欧洲电影,最为代表的应该是法国电影吧,感觉艺术感很强,不是看得很懂,画面很漂亮。像《天使爱美丽》我看了几遍都没看懂。 美国电影,看得最多的还是美国的好莱坞大片,美国片是最为成熟的,无论影响力还是票房收入都是其他地区不可比拟的。现在在中国大学生中,看好莱坞大片的人肯定比看国产片的人多。尤其是国产片中有些类型的片子太少或基本看不到,比如科幻片,恐怖片。 下面谈谈对两种类型的电影的看法: 对一般的类型,我想因为见得多了,也不会有什么感触,那我就拿两种比较特殊的类型来谈谈我的看法。 动画电影,我认为也算一种很重要的电影类型(因为有人说动画是小孩子看的东西),我不否认,小孩子更容易被动画吸引,但不是说动画片就一定时给小孩子看的。我认为,除了演员和布景是由真实的转变成用画的,其他的电影元素都有保留,导演一样可以用动画来表现自己的想法。在动画电影方面,日本和美国无疑是两种典型的代表,日本的平面二维动画产业可以说是全球最发达的,像在流水线上生产产品一样生产着动画片,以动画系列片为主,也会定期为这些系列片出些剧场版,当然也有单独的动画电影,比如宫崎骏的《幽灵公主》、《千与千寻》、《哈尔的移动城堡》等,我觉得都是不错的影片,日系动画的唯美画风也很让我喜欢。个人感觉就二维动画而言,美国比不了日本,就拿比较好的《狮子王》来说,在它之前,日本实际上有一个很类似的动画系列片《森林大帝》,这很有抄袭的嫌疑。不过自从3D动画出现之后,美国的技术优势又体现出来了,不愧为IT技术的起源国,尤其是最近Pixar公司的几部作品《玩具总动员》、《海底总动员》、《超人特工队》、《汽车总动员》等,无论是画面还是讲的故事,都让我们耳目一新。 恐怖电影,谈到恐怖电影还是要谈到日本。先不谈日本人的民族性的问题,日本的恐怖电影的确是很不同的,是一种悬念的恐怖,用意识来引导你,而不是用那种血腥的场面来达到目的。如《午夜凶铃》、《咒怨》等,会在整部片子弥漫恐怖的气氛,但就是不让你见到,让你提心吊胆到最后。美国的片子就完全不一样,突然出现的血腥画面,如果没有准备的话,简直让你会吐出来。记得有一部叫《异次元杀阵》的片子,有一个把人切成块的镜头,足足让我倒了一天胃口。还有《死神来了》、《死神来了2》和《死神来了3》在表面很青春很阳光的情况下,突然出现的那种很血腥的场面,这也许就是美式的恐怖吧。 二、 从有记忆开始怎么看电影 说实话,已经很久没有到电影院看电影了。小时候倒是只能去电影院看电影,不过,现在看电影的渠道已经太宽了。从网上、电视上都可以免费看到(如果不算电费的话),很多国内电影过了档期,国外电影大约上映一年后,中央6就会放映,这还不算国内大大小小的电视台提前买碟片看。我们自己也可以买正版或盗版的盘来先睹为快。不过,现在看来,还是在影院里看得比较有感觉。有一种看电影的味道。 三、 列举喜欢看的电影 《我的野蛮女友》、《超人总动员》、《指环王》三部曲,《帝企鹅日记》、《公主日记》、《查理与巧克力工厂》、《死神来了2》、《开国大典》、《天下无贼》、《新警察故事》、《征服怒海》、《阿甘正传》、《爱国者》、《勇敢的心》采纳哦 
摘要:LiveMedia已经在VLC和MPlayer等开源的流媒体播放软件中得到应用。文章对LiveMedia的组成和功能进行了分析,并对LiveMedia在视频点播方面的应用进行了详细的阐述。 关键词:流媒体RTPRTSP服务器视频点播流媒体的市场空间迅速扩大,国内很多公司迅速介入流媒体产品的开发。国内的流媒体产品多借助于国外某些开源的RTP(实时传输协议real-timetransportprotocol)开发库进行开发,在国外开源的RTP开发库中,LiveMedia不但提供了基于RTP协议的开发库,而且对于开发库在视频点播,直播等方面的应用也给出相应的参考实例,这对于从事流媒体的开发人员来都具有较高的参考价值。整个库文件都是由标准的C++语言写成,能够跨平台编译,适合于构建低成本的流媒体应用系统,也适合于嵌入式系统。 1LiveMedia的整体架构 LiveMedia可分为三部分:RTP库、LiveMedia库和流媒体应用实例,RTP库的主要功能是采用RTP协议完成数据的发送,LiveMedia库主要功能是实现对各种媒体类型和编码格式的支持,应用实例主要用于说明如何应用RTP库开发流媒体应用程序。下面分别对三部分作详细描述。 1RTP库 RTP库又可分为三部分:UsageEnvironment库、Groupsock库和BasicUsageEnvironment库。为了区分这三部分,在源程序目录中有三个子目录来分别放置这三个库,这三个子目录的名字分别是三个库的名字,即UsageEnvironment、Groupsock和BasicUsageEnvironment。 UsageEnvironment库中包括了三个主要的类:UsageEnvironment类、TaskScheduler类和HarshTable类,这些类都是抽象的基类,它们的实现都在其子类中完成。其中HarshTable类定义了通用Hash表的接口,主要为其它类服务。Hash表对象中存放的是诸如Socket句柄一类的对象,一旦程序需要,能够实现快速查找。UsageEnvironment类和TaskScheduler类主要用来处理延时事件,异步读取事件和输出错误或警告信息。延时事件处理是指对多媒体文件的传输处理,由于多媒体文件一般都较大,要完全发送到客户端需要经过较长一段时间,客户端的播放程序要播放完这个文件一般也要经过一段时间。这样,为了实现边传输边播放,在服务器端将文件读出后,根据多媒体文件的播放速度,每隔一段时间,发送一次数据,这些发送任务都发生在文件播出指令以后,以自动方式进行,不断循环,直到文件发送完毕或遇到停止指令。异步读取事件处理是指程序通过Socket以异步方式接收指令,并进行相应的处理。输出错误或警告信息是指在整个程序运行过程中,如果出错误或警告信息,该部分负责输出。 Groupsock库中的类封装了网络接口和套接字,在这里完成指令和数据的收发任务。在有些情况下其中的Groupsock类还可以完成多播数据的发送和接收任务。 BasicUsageEnvironment类定义了UsageEnvironment类的一个具体实现,用作配置基本环境。 2LiveMedia库 这个库在代码目录中也有对应的子目录,目录名是LiveMedia。这部分是LiveMedia的核心,可以实现RTP和RTSP会话的建立、各种RTPpayload的打包和解析以及RTSP的控制等。其中定义了一个基类Medium,其它各种与流媒体类型和编码有关的类都从这个类继承。以下是基类Medium与其部分子类的关系图。在这里,MediaSink用于从其它模块接收数据并进行处理。MediaSource用于自身产生数据或接收其它模块的数据,并可以将其输出。Mpeg1or2Demux用于将Mpeg1或Mpeg2格式的程序流文件的声音、图像分离。RTSPServer用于建立基于RTSP协议的RTSP服务器。RTSPClient用于建立基于RTSP协议的客房端。还有其它很多子类可以在源程序和帮助文件中找到。 3应用实例 应用实例在源程序目录中对应于TestProgs子目录,这个子目录中的程序用来说明如何使用以上提到的两个库去开发应用程序。其中主要有以下几个程序: 1使用RTSP协议的客户端 程序名叫openRTSP,是一个命令行程序,用这个程序可打开、接收和记录某一媒体流,这个媒体流一般通过以RTSP开头的URL指定。例如:RTSP,test是媒体流的名字。参照该程序,可以建立基于RTSP协议的客户端。 2使用RTSP协议的服务器端 程序名叫testOnDemandRTSPServer,这个程序能够在程序启动时建立RTSP服务器,并根据指定的文件建立相应的子会话,在接收到点播命令后能够建立相应的单播流。该程序支持的视频媒体类型主要有MPEG1,MPEG2和MPEG4格式的基本流文件、MPEG1、MPEG2格式的程序流和传输流文件。在这个程序的基础上,可以建立视频点播服务器,并可对服务器支持的格式进行扩展。 3MPEG声音+视频程序 程序名叫testMPEG1or2AudioVideoStreamer,这个程序在启动后能不断地读取指定的MPEG1或MPEG2程序流文件,并把他们分解为独立的声音基本流和视频基本流,然后进行流化,发送数据包到多播组42,端口是6666/6667(声音)和8888/8889(视频)。在这程序的基础上,可以建立视频直播服务器。 2应用分析 1RTP库的应用 RTP库的作用是方便使用者使用RTP协议发送和接收数据,无须考虑SSRC(同步源标识)冲突等一些底层的问题。它是LiveMedia的基础。在实际应用中,也可以只使用RTP库来发送多媒体数据,而不必考虑其它库。 2多格式支持库的应用 LiveMedia库的功能强大,不但支持多种格式,而且支持多种功能,包括建立点播服务器、直播服务器和客户端等。该库也有较大的扩展性,要扩展服务器支持的格式可以通过继承FramedSource,要扩展客户端支持的格式可以通过继承MultiFramedRTPSink,通过以上继承方式来实现自己的媒体类。 3用LiveMedia开发视频点播服务器 在实例程序testOnDemandRTSPServer的基础上,可建立起基于RTSP协议的视频点播服务器,对建立的视频点播服务器的测试,可采用通用RealPlayer或开源的VLC客户端进行。 1基本视频点播服务器分析 一个完整的视频点播服务器应包括点播服务系统和管理系统两大部分。点播服务系统的功能包括建立与客户端的RTSP会话、向客户端发送需要的媒体信息等,管理系统则担负用户认证,计费等的任务。这其中的核心部分是媒体服务系统,服务器的性能很大程度上决定于它。LiveMedia代码中的实例程序testOnDemandRTSPServer,能够说明视频点播服务器的建立过程,改进后就能作为我们需要的服务器。下面分析这一服务程序的建立流程: (1)建立使用环境 通过代码TaskScheduler*scheduler=BasicTaskScheduler::createNew(); env=BasicUsageEnvironment::createNew(*scheduler);来生成BasicUsageEnvironment类的一个对象,建立基本使用环境。 (2)权限控制 利用代码UserAuthenticationDatabase*authDB=NULL;authDB=newUserAuthenticationDatabase; authDB->addUserRecord("username1","password1");实现权限控制,可以阻止没有权限的用户进行点播。没有权限控制需要的可以省略此部分。 (3)建立RTSP服务器 利用代码RTSPServer*rtspServer=RTSPServer::createNew(*env,8554,authDB);建立RTSP服务器,该服务器完成与客户端的交互,实现客户端的VCR操作,即在客户端完成对当前节目的播放、暂停、倒退、快进等操作。8554是RTSP服务器的端口,也可以改为其它未被占用的端口,服务器的IP地址不用特别设定,它是运行点播服务程序的计算机的IP地址。该服务器只创建一次,一个服务器响应所有的点播用户。