C# 调用APlayer教程
2021-01-19 16:14
标签:方案 组成 down activex 增强 返回值 空白 alt etc 建议直接到APlayer官网下载最新版本 先下载SDK和解码库,下载后先解压SDK,解压后SDK根目录如下 其中bin目录中存放的就是一些dll文件和解码库,docs目录下是官方帮助文档,include目录下是什么我也不知道,samples目录下是官方的demo,不过貌似是C++的。我们需要用到的只有bin目录和docs目录下的东西。 接下来打开bin目录,将下载的解码库解压到bin目录下,覆盖原有的空解码库文件夹(codecs文件夹),覆盖完成后退回SDK根目录,打开cmd(怎么打开肯定不用说吧),跳转到SDK根目录,执行install.bat,等待完成后就可以关掉了。 接下来打开VS,新建一个Winform项目,完成后再工具箱空白处右键>添加选项卡 ,然后将新建的选项卡命名为APlayer,然后在新建的选项卡上右键>选择项,然后在打开的窗口上选择COM 然后里面有个APlayer3 Control,把前面的复选框选中,然后点击确定就OK了,如果你的里面没有,那么请重复第二步,并且以管理员权限运行cmd。 点击确定后APlayer选项卡中就有一个APlayer3 Control组件了,拖到窗体上就能用了。 到这一步还没完,因为现在你写的程序,发给别人后,别人还要安装APlayer才行,想要直接发给别人就可以用的话,需要先打开解决方案资源管理器,选中引用中的APlayer3Lib,然后打开属性面板,将里面的独立属性和嵌入互操作性属性改成True 到此APlayer就安装完成了(貌似后面的部分已经不属于APlayer的安装范围了 =.=) 接下来是APlayer的使用,先打开APlayerSDK根目录下的docs文件夹里面的官方手册(APlayer.chm) 手册目录里面的什么IDL定义啊什么的都不用看,和C#没什么关系,主要是看APlayer方法、事件和设置。 APlayer方法没什么好说的,也就是APlayer.方法名(参数),每个方法是干嘛的也有解释,写播放器的话我认为这些基础的东西应该都会了吧。 APlayer虽然在VS属性面板中有事件,但是貌似并没有什么用,事件还是要自己写,所以就讲一下APlayer事件的用法吧,下面用OnMessage事件为栗来讲解。 先写个名为OnMessage(方法名可以自己定义,建议直接用事件名)的方法: 该方法有两个参数,第一个是object类型,第二个是APlayer内的一个类型,每个方法对应不同的类型,举个栗子: 然后在窗口的Load事件里面,将定义的OnMessage方法绑定(委托?拜托?指定?指引?绑架?反正就是这个意思而已) 绑定的方法就是: 再举个栗子: 这样就可以绑定事件了,然后在自己写的方法中写事件触发时要执行的代码。 APlayer设置的话主要是通过GetConfig和SetConfig方法来完成,GetConfig用于获取设置的值,SetConfig用于设置对应设置的值。 返回值:string GetConfig(int 设置编号) 我找了两个Demo,可以下载看看,里面还有设置logo的方法 C# 调用APlayer教程 标签:方案 组成 down activex 增强 返回值 空白 alt etc 原文地址:https://www.cnblogs.com/zhangwc/p/12154650.htmlAPlayer介绍
引擎介绍:
APlayer 媒体播放引擎是迅雷公司从 2009 年开始开发的通用音视频媒体文件播放内核。
迅雷看看播放器和迅雷影音就是使用 APlayer 作为播放内核,目前迅雷看看播放器在PC播放器市场占有率排第一。
本质上APlayer播放引擎是一个ActiveX控件,可以被本地其他外部程序嵌入调用,也可以直接被网页嵌入,类似于(Adobe Flash Player)。APlayer不包含界面,但另一个依赖于APlayer的ActiveX控件APlayerUI可以提供丰富的界面元素(播放控制条,Flash广告等),APlayerUI 也被包含在 APlayerSDK 中。
APlayer特点:
封闭式 DirectShow 架构,不受系统解码环境干扰
全媒体文件格式支持
丰富的媒体文件传输协议(http/ftp/mms/rtsp/rtmp/hls等)
强大的附加功能(字幕、音轨、转码/转格式、画质增强、截GIF……)
支持将多个 ts/flv/mp4 分段切片文件组成 m3u8 无缝播放
支持最新的 H.265(HEVC) 解码 (Powered by北京视骏科技有限公司)
支持全景视频和虚拟现实(VR)眼镜 Oculus DK2 的播放。
APlayer下载
APlayer安装
APlayer使用
APlayer方法
APlayer事件
///
OnMessag事件就是AxAPlayer3Lib._IPlayerEvents_OnMessageEvent
OnStateChanged事件就是AxAPlayer3Lib._IPlayerEvents_OnStateChangedEvent
OnDownloadCodec事件就是AxAPlayer3Lib._IPlayerEvents_OnDownloadCodecEvent
APlayer.OnMessage += new AxAPlayer3Lib._IPlayerEvents_OnMessageEventHandler(OnMessage);
APlayer.事件名 += new APlayer中事件对应的类(要绑定的方法名)
OnMessage 事件就是:
APlayer.OnMessage += new AxAPlayer3Lib._IPlayerEvents_OnMessageEventHandler(OnMessage);
OnStateChanged事件就是:
APlayer.OnStateChanged += new AxAPlayer3Lib._IPlayerEvents_OnStateChangedEventHandler(OnStateChanged);
OnDownloadCodec事件就是:
APlayer.OnDownloadCodec += new AxAPlayer3Lib._IPlayerEvents_OnDownloadCodecEventHandler(OnDownloadCodec);
APlayer设置
返回值:int GetConfig(int 设置编号,string 设置值)
设置编号可以查看官方手册中的 “APlayer 设置” 章节Demo下载
Demo下载 APlayer
上一篇:C#计算两个日期的天数