web播放视频(flv mp4 wmv avi)

         最近在搞一个局域网web播放视频的东西,原来是只支持FLV 格式的, 我个人想让其能支持多点格式,如wmv,mp4 和 avi。

         服务器环境是windows2003,flash player11,tomcat6,java1.6,windows media player10,swfobject 1.4(jw flv player),IE6。

         一.  视频文件这里虽然说flv,mp4,avi 和wmv ,但是他们内部的编码不是都一样的。如海康威视的录像视频,后缀是mp4,但是内部编码是海康威视自己的编码,用一般的播放器是打不开的,这样的视频不在我的考虑之内,我目前只考虑播放正常通用的视频。

         目前知道的支持的播放格式和编码:

         格式mp4 和 flv,编码是H264/AVC ,H.263 支持播放,编码为AVC1 的不支持播放。


     
         二. 需要播放带中文名称的视频文件的话, tomcat 必须修改默认编码ISO-8859-1 为UTF-8 或GBK 等支持中文的编码,建议是UTF-8, ISO-8859-1是不支持中文的。

         引用的 swfobject.js 加上编码设置,如 , 如果是gbk 就改uft-8 为gbk,在一些一个页面多个编码的情况下或者不同浏览器的兼容性问题下,最好是明确指定编码。

         三. 当一个视频文件被请求播放的时候, 通过判断其后缀名,决定由哪个播放器播放它。

         1.   flv 和 mp4 由swfobject 1.4(jw flv player) 播放。

         2.  其他的如wmv,avi 通过 标签播放,配置其src 就行了,调用的是windows media player 来播放。

         Windows Media Services 的话, 可以用mms 协议播放wmv, 但是不能播放avi, 其支持的格式只有几种asf,wmv和wma, 即使windows media player 能播放的视频,Windows Media Services 也是不去识别这个视频,所以我最后没考虑。

 

         多媒体的话, 不得不说现在的html5(需要编码是h.264), 这个让苹果能安心抛弃flash 的东西,由于要考虑老IE6 的支持性问题,等后面再考虑。


        四. 遇到的特殊奇怪bug

        1. 视频文件路径是: xwlb\gddwxwlb190q.flv, 文件路径名称在url 中作为参数传递,在ie6 无法播放视频,视频是正常的。

            ip地址如果用localhos 或 127.0.0.1 可以播放,用服务器的ip 就不行。

            因为名称都是英文加字母加符号,不存在字符集编码的问题。

            最奇怪的地方,把文件的名称改动任何一个字母,或放到其他文件夹就可以播放,如xwlb\gddwxwlb190a.flv 或 xxlb\gddwxwlb190q.flv

            路径写成xwlb\\gddwxwlb190q.flv 可以播放,而 xwlb/gddwxwlb190q.flv 不可以播放,但是xxlb/gddwxwlb190q.flv 可以播放

            这次真是无巧不成书,如果不是完全凑巧的话,这个bug 是很难遇见的, 就像在html 中特殊符号“空格” 可以用   表达给浏览器, 难道xwlb\gddwxwlb190q.flv 也刚好构成了某个特殊用途!!!!


你可能感兴趣的:(CSS/HTML相关,其他)