一切福田,不離方寸,從心而覓,感無不通。

Chimee – 简单易用的H5视频播放器解决方案

Chimee是由奇舞团开源的一套H5视频播放器解决方案,由奇舞团视频云前端团队结合在业务和视频编解码方向的沉淀积累倾心打造。Chimee支持MP4、M3U8、FLV等多种媒体格式,同时它也帮我们解决了大部分的兼容性、差异化问题,包括全屏、自动播放、内联播放、直播解码等常见媒体播放需求。 通过便捷的可热插拔的插件开发,能满足业务方快速迭代、灰度发布等要求;让开发者能够更轻松快捷地完成不同业务场景下UI、广告等各种功能需求的开发。   在线演示      免费下载   from:https://www.cnblogs.com/lhb25/p/chimee-h5-video-player.html

龙生   09 Jul 2019
View Details

HLS

HLS (HTTP Live Streaming)是Apple的动态码率自适应技术。主要用于PC和Apple终端的音视频服务。包括一个m3u(8)的索引文件,TS媒体分片文件和key加密串文件。   常用的流媒体协议主要有 HTTP 渐进下载和基于 RTSP/RTP 的实时流媒体协议,这二种基本是完全不同的东西,目前比较方便又好用的是用 HTTP 渐进下载方法。在这个中 apple 公司的 HTTP Live Streaming 是这个方面的代表。它最初是苹果公司针对iPhone、iPod、iTouch和iPad等移动设备而开发的流.现在见到在桌面也有很多应用了,HTML5 是直接支持这个。 但是HLS协议的小切片方式会生成大量的文件,存储或处理这些文件会造成大量资源浪费。如果要实现数天的时移,索引量将会是个巨额数字,并明显影响请求速度。因此,HLS协议对存储I/O要求相当苛刻。对此,也有公司提出了非常好的解决方案。 新型点播服务器系统,独创了内存缓存数据实时切片技术,颠覆了这种传统实现方法,从根本上解决了大量切片的碎片问题,使得单台服务器的切片与打包能力不再是瓶颈。其基本原理如下: 不将TS切片文件存到磁盘,而是存在内存当中,这种技术使得服务器的磁盘上面不再会有“数以吨计”的文件碎片,极大减少了磁盘的I/O次数,延长了服务器磁盘的使用寿命,极大提高了服务器运行的稳定性。同时,由于使用这种技术,使得终端请求数据时直接从服务器的内存中获取,极大提高了对终端数据请求的反应速度,优化了视频观看体验。 from:https://baike.baidu.com/item/HLS/8328931

龙生   09 Jul 2019
View Details

有关当前主流视频网站采用的解决方案

这几天由于工作中要搭建视频点播平台,分析了一下当前主流视频网站采用的技术。主要分析了腾讯、优酷、土豆、爱奇艺这几个平台,他们采用的技术却惊人的相似。全都是采用m3u8这样的解决方案,视频分成小段,方便在网络中的快速传输。也能防止非技术人员的下载~~,如果真正意义上的防下载,几乎是不可能的,尤其是基于H5的技术。 虎牙直播用的也是m3u8的解决方案,有一些延迟,不过可以接受。斗鱼用的渐进时流的推送,但直播结束时应该也是可以保存起来的。 不过话又说回来,点播和直播的意义并不防下载,这个防下载还应该以知识产权相关的法律去保障,同时培养公民尊重知识产权。 扯远了,说说m3u8解决方案用的具体细节吧: 1.首先m3u8来自Apple公司的HLS( HTTP Live Streaming 是Apple的动态码率自适应技术)。 2.动态解码,或者说分段可以用开源软件FFmpeg,功能相当强大。网址:http://ffmpeg.org/ 3.播放器就用简单易用的Chimee,免费哦。网址:http://chimee.org/    当然也可以用收费的flowplayer,都有H5的解决方案。网址:https://flowplayer.com/

龙生   09 Jul 2019
View Details

ffmpeg基础使用

参考 ffmpeg常用命令 ffmpeg参数中文详细解释 [总结]FFMPEG视音频编解码零基础学习方法 一、安装 打开https://ffmpeg.zeranoe.com/builds/,该网站中的FFMPEG分为3个版本:Static,Shared,Dev。 前两个版本可以直接在命令行中使用,他们的区别在于:Static里面只有3个应用程序:ffmpeg.exe,ffplay.exe,ffprobe.exe,每个exe的体积都很大,相关的Dll已经被编译到exe里面去了。Shared里面除了3个应用程序:ffmpeg.exe,ffplay.exe,ffprobe.exe之外,还有一些Dll,比如说avcodec-54.dll之类的。Shared里面的exe体积很小,他们在运行的时候,到相应的Dll中调用功能。Dev版本是用于开发的,里面包含了库文件xxx.lib以及头文件xxx.h,这个版本不包含exe文件。 这里下载了static版本,是个zip压缩文件,解压到指定目录,去配置环境变量,比如e:\ffmpeg20180919\bin,这样bin下面的ffmpeg.exe就可以在命令行中使用了,可以用ffmpeg -version测试一下: image.png 放一个mp4视频,然后把声音提取到output.acc,用命令测试一下:ffmpeg -i mov_bbb.mp4 -acodec copy -vn output.aac 二、常用命令 主要参数:

视频参数:

音频参数:

1. 视频格式转换 (其实格式转换说法不太准确,但大家都这么叫,准确的说,应该是视频容器转换) 比如一个avi文件,想转为mp4,或者一个mp4想转为ts。 ffmpeg -i input.avi output.mp4 ffmpeg -i input.mp4 output.ts 插个号外:某天我在知乎上看到一段视频,想转给微信好友看,怎么操作呢。这里参考如何全自动下载知乎上的视频到本地(注意不要滥用),先打开要观看的视频页面,再F12清空,然后开始播放视频,就能看到类似https://vdn.vzuu.com/SD/49c84c7c-c61a-11e8-8bad-0242ac112a0a.mp4?auth_key=1539832492-0-0-c61c22f39c&expiration=1539832492&disable_local_cache=1这样的字符串,然后用ffmpeg -i "https://vdn.vzuu.com/SD/49c8…" output.mp4即可下载。弄到电脑上,用电脑QQ发送到手机QQ上,在手机QQ上点击选择保存到手机上。然后在微信里选照片就能看到这个视频了(注意视频文件不要超过20M,另外最开始用的不是电脑QQ,而是百度网盘,发现不行……)。 2. 提取音频 比如我有一个“晓松奇谈”,可是我不想看到他的脸,我只想听声音, 地铁上可以听,咋办? ffmpeg -i 晓松奇谈.mp4 -acodec copy -vn output.aac 上面的命令,默认mp4的audio codec是aac,如果不是会出错,咱可以暴力一点,不管什么音频,都转为最常见的aac。 ffmpeg -i 晓松奇谈.mp4 -acodec aac -vn output.aac (-vn 不处理视频 ) 3. 提取视频 我目测有些IT员工,特别是做嵌入式的,比如机顶盒,想debug一下,没有音频的情况下,播放一个视频几天几夜会不会crash,这时候你需要一个纯视频文件,可以这么干。 ffmpeg -i input.mp4 -vcodec copy -an output.mp4 -an 不处理音频 4. 视频剪切 经常要测试视频,但是只需要测几秒钟,可是视频却有几个G,咋办?切啊! 下面的命令,就可以从时间为00:00:15开始,截取5秒钟的视频。 ffmpeg -ss 00:00:15 -t 00:00:05 -i input.mp4 -vcodec copy […]

龙生   09 Jul 2019
View Details