最近有个视频播放系统,需要对海康的mp4格式视频进行播放,由于普通播放器无法对该视频进行播放原因是海康对视频进行了自己的编码,需要相应的解码才可以对视频进行播放。
下面是对海康威视视频播放的c#代码(需要从海康官网下载播放库)。
一,这个是核心库通过c#对海康提供的动态链接库dll方法的封装。
1 public class PlayCtrlSDK 2 { 3 #region 解码库 4 [SecurityCritical] 5 [DllImport("PlayCtrl.dll")] 6 public static extern uint PlayM4_GetLastError(int nPort); 7 /// <summary> 8 /// 获取文件当前播放位置(百分比)。 9 /// </summary> 10 /// <param name="nPort"></param> 11 /// <returns></returns> 12 [SecurityCritical] 13 [DllImport("PlayCtrl.dll")] 14 public static extern float PlayM4_GetPlayPos(int nPort); 15 /// <summary> 16 ///设置文件当前播放位置(百分比)。 17 /// </summary> 18 /// <param name="nPort"></param> 19 /// <returns></returns> 20 [SecurityCritical] 21 [DllImport("PlayCtrl.dll")] 22 public static extern float PlayM4_SetPlayPos(int nPort, float fRelativePos); 23 /// <summary> 24 /// 获取文件大小 25 /// </summary> 26 /// <returns></returns> 27 [SecurityCritical] 28 [DllImport("PlayCtrl.dll")] 29 public static extern uint PlayM4_GetFileHeadLength(); 30 /// <summary> 31 /// 获取文件总时间 32 /// </summary> 33 /// <param name="nPort"></param>PlayM4_GetPlayedTime 34 /// <returns></returns> 35 [SecurityCritical] 36 [DllImport("PlayCtrl.dll