开源视频播放器介绍

一、MPV播放器

MPV是一个基于 MPlayer 和 mplayer2 的开源极简全能播放器。支持各种视频格式、音频解码、支持特效字幕(电影动漫的ass特效字幕都没啥问题),不仅支持本地播放,同样支持网络播放。重点是 MPV 具有多系统平台支持、命令行、自定义、GPU 解码、脚本支持等特点……另外界面简单美观,操作方便,无广告,启动快。

  1. 官方网站:mpv.io/

  2. 开源可以用于二次开发,源代码:github.com/mpv-player(…

  3. MPV是一个很小众的播放器分支,而且也支持android、ios 、windows、linux 、unix、 mac等主流操作系统和移动平台,它的代码很多来自MPlayer, 为了更好的支持移动平台,整体框架被改写,和MPlayer的风格一样,界面及其简单,设置可以说没有界面,但是对第三方软件的调用支持的非常友好,各种的支持.MPV目前已经被移植到了android , ios平台,虽然在windows平台,mpv还有很多不足,例如有声音无画面等,但是在移动平台,mpv播放器做的很不错,顶多就是影音不同步等小bug,通常通过切换网络协议,例如从ftp切换到http播放,就可以暂时消除这个bug.

  4. 安装说明:以Windows为例,下载对应版本,解压之后找到一个install.bat文件,点击这个文件后会自动安装,然后将系统视频播放默认程序改为MPV播放器。卸载点击对应的uninstall.bat文件即可。

  5. 界面操作说明

Windows平台测试:

测试结果如下:

  1. 不能智能识别文件名,乱码。

  2. 加速拖动滚动条,音画同步,字幕同步,没有延迟卡顿。

  3. 无法单独调节音量,只能静音或者全音。

  4. 将视频文件夹拖入播放器内闪退。

  5. 播放暂停正常,无停止键。

  6. 有一些快捷键可以控制播放器的相关功能需要查阅相关资料。

二、VLC media player

VLC 是一款自由、开源的跨平台多媒体播放器及框架,可播放大多数多媒体文件,以及 DVD、音频 CD、VCD 及各类流媒体协议。

  1. 官方网站:www.videolan.org/

  2. 开源可用于二次开发,源代码:www.videolan.org/vlc/downloa…

  3. 能播放任何内容---文件、光盘、摄像头、设备以及流媒体。

  4. 可播放大多数格式,无需安装编解码器包---MPEG-2,MPEG-4,H.264,MKV,WebM,WMV,MP3.........。

  5. VLC播放器采用了c++语言开发,支持windows/linux/unix/mac,目前移动平台支持ios android两大系统,VLC的优点在于很成熟,由于采用了现代的c++开发,因此很多最新的技术,更多的开发人员都堆积在了这个项目中,发展的非常快,虽然它是在MPlayer之后才出现的,但是短时间内在功能上就超越了mplayer,并且在移动平台出现后,很轻松的移植到了ios android等系统,同样完整支持流播放,最主要的就是它有一个完整的界面,这对用户,特别是咱中国用户来说,是很受欢迎的。

Windows平台测试:

测试结果如下:

  1. 正常显示文件名。

  2. 暂停、播放、停止正常,停止后播放正常。

  3. 快进、快退、加速拖拉滚动条,音画同步,字幕同步,没有延迟卡顿。

  4. 支持文件夹列表播放。

  5. 支持位置记忆继续播放功能,在默认情况下,会询问是否继续上次位置播放。

  6. 播放器比较完善,功能强大。

三、SMPlayer

SMPlayer 是免费媒体播放器,内置解码器,可以播放几乎所有格式的视频和音频文件。无需再安装任何外部解码器。只要安装了 SMPlayer,你就能够播放所有的格式,不用再费事查找安装解码包。

  1. 官方网站:www.smplayer.info/

  2. 开源可用于二次开发,源代码:www.smplayer.info/zh/download…

  3. SMPlayer 可用于Windows 和 Linux,不了解是否支持Android、iOS。

  4. SMPlayer会记住您播放过的所有文件的设置。它将恢复到您离开时的播放位置,并使用相同的设置:音轨、字幕、音量...

  5. SMPlayer 是个用于屡获殊荣的MPlayer的图形化界面 (GUI),它能够播放几乎所有已知的视频和音频格式。但除了提供MPLayer的大多数常用命令外 SMPlayer也有一些好玩的特性,例如:支持播放Youtube视频和下载字幕。

Windows平台测试:

测试结果如下:

  1. 文件名无法智能识别,存在乱码。

  2. 播放、暂停、停止正常,但停止后播放存在卡顿。

  3. 切换视频存在卡顿,响应慢。

  4. 快进、快退、加速拖拉滚动条,音画同步,字幕同步,没有延迟卡顿。

  5. 音量可以任意调节。

  6. 有些功能存在反应卡顿。

  7. 功能较齐全。

四、MPlayer

MPlayer是一款开源多媒体播放器,以GNU通用公共许可证发布。此款软件可在各主流操作系统使用,例如Linux和其他类Unix系统、Windows及Mac OS X系统。但是移植到android ios等移动平台困难重重,一堆mplayer志愿者就设立了新的分支,这就是mpv播放器。

  1. 官方网站:www.mplayerhq.hu/design7/new…

  2. 开源不可用于二次开发,源代码:www.mplayerhq.hu/design7/dlo…

  3. 安全低消耗,兼容多种格式,另外支持P2P点播。

Windows平台测试:

测试结果如下:

  1. 智能识别文件名,无乱码,但是加载视频进入播放器比较慢。

  2. 播放、暂停、停止正常,但停止后播放存在卡顿。

  3. 快进、快退、加速拖拉滚动条,音画同步,字幕同步,没有延迟卡顿。

  4. 音量可以任意调节。

  5. 不能列表播放,只能单个添加进去播放。

  6. 功能比较少。

五、用户行为的埋点说明

参照微信公众平台对视频数据的统计分析,然后分别对四款开源播放器的以下几个方面进行相关的调研,得出以下结论:

  1. MPV播放器

①用户拖拽:用户开始拖动进度条的位置点至用户停止拖动进度条的位置点,MPV播放器界面简单,支持网络播放,另外GitHub上面代码文件夹分类明确,可以在原有基础之上实现用户拖拽(用代码分别识别拖拽起点、终点)。

②用户完播率:MPV内置编解码器对视频完美编解码(提前将视频编解码至缓冲区,然后等待播放),当然也可以满足此需求。

③用户播放时长:现在的视频播放时间基本控制在3小时以内(包括电视剧、电影),当然直播除外,MPV架构比较稳定,性能强大,对播放时长没有限制,可以完成相应需求。

④是否可以加入互动广告:MPV播放器整体架构比较简洁,连 GUI 界面都没有提供,直接通过命令行或配置文件设置,这样只需要将广告的链接嵌入其中进行相应配置即可。所以可以加入互动广告(当用户暂停播放时)。

说明:可以自定义相应功能。

  1. VLC media player

①用户拖拽:VLC源代码里的Control函数有获取拖拽起点的时间位置参数以及终点的时间位置参数,然后获取拖拽的总时长,在这个区间进行测试。因此可以满足此需求。

②用户完播率:VLC具有记忆功能,自动上次播放的位置,更好的支持用户的播放体验,性能也是很完美。因此满足此需求。

③用户播放时长:同上,Control函数有控制时长参数。此项需求亦满足。

④是否可以加入互动广告:可以。做一个联动控制,在播放视频前或者暂停时引入,看需求。

  1. SMPlayer

①用户拖拽:满足。基于MPlayer的图形化界面,也可以很好的捕捉拖拽起终点。

②用户完播率:满足。(不多解释,同上,因为它会记住您播放过的所有文件的设置。)

③用户播放时长:满足。(不多解释,同上,因为内置解码器,完全识别视频时长。)

④是否可以加入互动广告:不能加入。因为SMPlayer本身不能播放多媒体文件,它需要多媒体引擎的支持(MPlayer、MPV)。

  1. MPlayer

①用户拖拽:满足。不同平台有不同的图形化界面,也可以很好的捕捉拖拽起终点。

②用户完播率:不满足。因为自身BUG导致播放时,不能完整播放。

③用户播放时长:满足。(不多解释,同上,因为内置解码器,完全识别视频时长。)

④是否可以加入互动广告:可以。因为其本身也自带广告(暂停或停止时),只需改变广告相应地址。

六、总结

  1. 经过自己的了解以及测试,可用于二次开发比较好的播放器有MPV、VLC。但首推VLC,因为技术比较成熟,有许多程序员将其作为开发对象,所以适合做为二次开发。

  2. 备注:同样结合七牛云DEM文档说明,发现做埋点信息的时候,需要对这几款播放器做相应的测试,在我们实现用户拖拽、用户完播率、用户播放时长、是否可以加入广告等等用户需求的时候,是否存在BUG、是否很好支持PC端、移动端。这些需要我们在开发的时候做相应的监控调试,才能达到我们的需求。

七、打赏

觉得小弟写的不错的,可以请小弟喝瓶矿泉水。嘻嘻嘻

           

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于ffmpeg的开源视频播放器是一种可以在各种操作系统上使用的免费软件,它利用ffmpeg库来解码和播放视频文件。ffmpeg是一个强大的多媒体处理工具,可以处理各种视频和音频格式。基于ffmpeg的视频播放器可以支持多种视频格式,包括常见的MP4、AVI、MKV等,同时也能够提供高质量的音频和视频播放体验。 这种开源视频播放器的主要优势是其灵活性和可扩展性。开发者可以根据自己的需要对播放器进行定制和扩展,添加新的功能或者改进现有功能。这使得基于ffmpeg的视频播放器成为一个非常受欢迎和受欢迎的选择,因为它可以满足用户的不同需求。 除了支持多种视频格式外,基于ffmpeg的视频播放器还具有许多其他功能,例如调整音量、播放列表、循环播放、字幕支持、画面调整等。用户可以根据自己的喜好和需求进行设置和调整。 基于ffmpeg的视频播放器也具有良好的兼容性和稳定性。由于ffmpeg库经过了广泛的测试和验证,因此可以保证播放器在不同操作系统和设备上的良好运行。 总之,基于ffmpeg的开源视频播放器是一种功能强大,灵活性高,兼容性好的视频播放软件。它为用户提供高质量的视听体验,并且可以根据用户的需求进行定制和扩展。无论是作为普通用户还是开发者,基于ffmpeg的视频播放器都是一个出色的选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值