由于本篇仍然使用的QMediaPlayer,所以若要正常使用本播放器,需要额外下载插件用于解码。
下载地址:
https://github.com/Nevcairiel/LAVFilters/releases
如果访问太慢可以去我的蓝奏云下载:
https://wwe.lanzoul.com/iehNz0167ewb
演示添加本地文件到播放列表并播放
本次加入了缩略图视图,展示了视频的某一帧的缩略图,能够更直接展示视频信息。
用户添加本地文件到播放列表中的方式有多个:主界面点击“打开文件”、菜单中添加单个文件、点击右上角选项、播放列表中右击项目、或者直接拖拽文件到播放器中也是可以的。播放视频时,播放列表会自动收起。
鼠标放在播放列表项目上会有简单的媒体信息提示。
可以在右侧播放列表中右击视频项目,选择媒体信息,查看所选媒体的详细信息。
在视频播放过程中,可以通过点击进度条、或者按下键盘↑、↓键调节视频的进度,通过鼠标滚轮、键盘←、→键及点击音量slider控制播放器的音量。
本软件支持音频播放
在主界面或者右上角选项中-选择打开URL,即可播放在线的媒体。
本次创造性地增加了一个个性关广告,用来做一个自我宣传吧,点击广告cover可以调到博主的csdn播客首页,广告是固定的,已经写死在程序中了,展示逻辑是:当前视频前三次暂停展示。
登录窗口延续了之前的样式
大家可能看到这就直接关闭浏览器了,大可不必,本次为了增加趣味性,添加了VIP功能,VIP可以享受额外的两个功能,1.去广告 2.额外增加一个播放列表,VIP解锁是永久的,除非用户重做系统,本次VIP的解锁暗号我将放在软件同级目录下(无套路)。
1.去广告,这个不需多说,就是永远不展示广告。
2.在播放列表中增加了一个IPTV在线视频列表,可以很方便地观看在线网络电视,此播放列表自带735个电视节目。
光靠贴几张图还是不够全面,下图全面展示了本软件的所有功能。
在使用windows系统播放视频时,会有一个蓝色的进度,实时的同步着视频的进度,也可以把鼠标放在任务栏软件图标上,控制播放器的媒体内容、状态。
本次使用了QWinThumbnailToolBar、QWinThumbnailToolButton、QWinTaskbarButton三个类来进行操作。
这是一个播放器的基本,如果在播放媒体时,屏幕进入了待机,那必然是会影响体验的。
本次在代码中使用了ctypes Python第三发库,此第三方库提供了一些系统层面的接口,只要进行简单的代码设置,即可实现屏幕强制显示,不会息屏、黑屏。
用户可能会纳闷:为什么我仅需要解锁一次就能够成为永久VIP?还有个性广告的展示逻辑是怎样的。
我来一一解释:
1.在用户成为VIP时,使用QSettings将这个状态写入注册表中,下次再启动时,读取这个注册表配置项,如果和我们设置的条件相符,则展示对应的VIP页面,享受VIP功能。
2.个性广告其实很简单,就是一个简单的QWidaget,设置其父窗口为播放器主窗口,设置一个广告展示计数器以及广告展示最大次数计数器,在播放器状态变为暂停状态时,对两个计数器进行判断,非VIP单个视频最多会展示3次个性广告,每次展示都会通过动态计算,让广告居于播放器的中间。
这个功能在之前的版本就有,具体效果是:用户在播放列表选择了“删除本地文件”,那么此文件将会被放到回收站中,具体实现是通过调用了send2trash这个Python第三方库,其他细节不赘述。
通过调用Python自带的os模块,获取视频的文件类型、大小、绝对路径…通过调用python-opencv实现视频的持续时间、帧率信息、分辨率等信息。通过自定义的对话框,将信息展示出来。
本软件存在两个不是很致命的BUG,虽然不会直接报错退出,但是也会影响用户体验,贴在下面:
这个BUG在UI显示上
非全屏状态播放媒体,鼠标放在进度条上会有一个进度显示的,字体颜色为红色,但是仔细查看会发现,显示的进度并不对,会显示大于所选进度的值。
这个BUG在实际功能上
播放本地文件时,当选择了当前播放文件之前的媒体项目时,选择删除或者点击了X删除此项目,可能会导致当前播放的内容为空。
本次改进了阿雷影音,对之前版本播放列表部分进行了大改,完全重做了播放列表视图的UI,并且加入了自己的个性功能,提高了软件的趣味性,本次提高了代码的健壮性,GUI的容错性。UI方面仍然仿照xx影音进行开发,里面有很多冗余的功能,具体是没有功能的,点了也不会有响应,保留这些是为了与仿品UI同步。点击这里GET同款软件!如果觉得文章对你有帮助,还请帮我点个赞,毕竟软件是无偿的分享给大家。