使用大华sdk批量下载视频文件、批量转换格式

关于视频文件下载的例子,可以参考官方的sdk包中的例子:xxx。
最重要的一个地方是一个回调函数的编写。每次调用DownloadFileByTime都会产生一个文件句柄,这个回调函数里就是根据不同的文件句柄来将视频数据写入不同的文件。
在回调函数写好后,问题就来了。
下载下来的文件是dav格式的。sdk中提供了视频转换的方法,一种是转换成avi,一种是转换成asf。
第一种由于cpu占用率过高所以不考虑。
第二种方法可以使用,不过也有一个问题需要解决。那就是批量下载后的批量格式转换任务。
大华提供的格式转换不支持多个转换任务,于是采用一个折中办法。
先举个例子:
小朋友们在旋转木马前举着票,管理员则随意选一张票,那么这个小朋友就可以上去玩了。
这个木马算是一个资源,如果这个小朋友没有下来,其他小朋友就没有办法玩了。
玩完木马的小朋友又高兴的去游乐园的其他地方玩耍了。
把这个木马比作格式转换任务,他们都有两个明显的状态:工作中和未工作。只要木马处于未启动的状态,小朋友们都有机会到木马上去玩。
解决问题的伪代码:
def 下载线程():下载()转换格式()def 下载():passdef 转换():passworkstate = false;def 转换格式():if workstate== False:workstate = True转换()workstate = Falseelif workstate == True:等待wrokstate为False时再进行格式转换主任务函数()
{开启下载线程1开启下载线程2开启下载线程3开启下载线程4开启下载线程5……
}后来又发现一个问题,转换成asf的文件在播放时用鼠标拖动进度条,
当前的播放位置与进度条不能同步。(这个下次再写)

tips

下载以及文件转换时多线程的应用:为什么使用AfxBeginThread,这样的线程是否可以不用控制,什么时候可以在一个线程结束时开启另一个线程?
记录可以,但是最好再把问题抽象一下。

使用大华sdk批量下载视频文件、批量转换格式相关推荐

  1. EasyCVR使用大华SDK接入时录像显示失败是什么原因?该如何解决?

    EasyCVR视频融合云服务支持多协议.多类型设备的接入,包括国标GB/T28181.RTMP.RTSP/Onvif协议,以及厂家私有协议,如:海康SDK.大华SDK.海康Ehome等.平台可对前端接 ...

  2. 如何使用大华SDK工具查询和播放设备录像?

    EasyCVR视频融合云平台可支持多协议.多类型的设备接入,包括国标GB28181.RTSP/Onvif.RTMP协议,以及海康/大华SDK.海康Ehome等,对外可分发RTSP.RTMP.FLV.H ...

  3. Python调用大华SDK:实现视频监控系统

    Python调用大华SDK:实现视频监控系统 随着科技的不断进步,视频监控系统在各行各业得到广泛应用.而作为一名Python开发者,如何利用Python调用大华SDK实现视频监控系统呢?本文将详细介绍 ...

  4. 怎么把video文件改成mp4_腾讯视频文件怎么转换格式_如何把腾讯视频转换成mp4格式-win7之家...

    视频软件不一样,视频的格式也会不一样,比如qlv视频格式是腾讯视频的独有格式,想要观看qlv格式的视频文件,就只能下载腾讯视频播放器,但是这样显得有点麻烦,其实我们也可以对腾讯视频文件转换格式,比如转 ...

  5. 文件批量下载方法 文件批量下载工具

    软件版本:Internet Download Manager 在当今数字化时代,我们日常使用电脑进行各种工作和娱乐活动.有时候,我们需要从互联网上下载大量文件,例如电影.音乐.文档等.在这种情况下,手 ...

  6. Unity3d C#通过使用大华SDK控制大华摄像头旋转、变焦等云台操作和预置点等控制操作(含源码)

    前言 本文的内容和在之前我写过Unity3d C# 接入海康威视摄像头SDK实现接口控制功能(如:控制云台)的文章基本类似,同样是通过官网提供的SDK进行开发,只不过针对的设备不同,和部分实现细节不同 ...

  7. 视频文件如何转换格式?爱奇艺qsv怎么转换mp4

    这几天有小伙伴向我抱怨:「爱奇艺下载的qsv视频在手机上无法播放啊,该怎么办?」,因为qsv视频是爱奇艺客户端下载的一种视频加密格式,只能使用爱奇艺客户端播放.如果想在手机上播放的话,就需要另外的方法 ...

  8. 手把手教你用Python打造一款批量下载视频并能可视化显示下载进度的下载器

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 桃之夭夭,灼灼其华. /1 前言/ ...

  9. 用Python打造批量下载视频并能可视化下载进度的炫酷下载器

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 吾日三省吾身:为人谋而不忠乎?与朋 ...

  10. 手把手教你用Python打造一款批量下载视频并能可视化显示下载!

    /1 前言/ 平时宅在家的我们最爱做的事莫过于追剧了,但是有时候了,网络原因,可能会让你无网可上.这个时候那些好看的电视剧和电影自然是无法观看了,本期我们要讲的就是怎样下载这些视频. /2 项目目标/ ...

最新文章

  1. APP测试入门之性能测试
  2. 深度学习-Tensorflow2.2-预训练网络{7}-迁移学习基础针对小数据集-19
  3. 阿里云交通数据中台解决方案,打造“数字化生产力”
  4. 两个大屏可视化案例的布局与实现
  5. FreeCodeCamp之数字转罗马数字
  6. SQL 導入導出大全
  7. uniapp调起打印机(调起第三方打印软件)适用app,将页面生成图片打印的两种方式
  8. 基于JTT808协议的车联网网关中间件
  9. 单细胞测序技术(single cell sequencing)
  10. 启动jar 日志输出
  11. python爬取行业数据_Python爬取拉钩招聘网,让你清楚了解Python行业
  12. 计算机毕业设计Java电影售票系统(源码+系统+mysql数据库+lw文档)
  13. Legolas工业自动化平台入门(一)搭建应用
  14. 解析八核Cortex-A55+ 24路1080解码能力的AI模组
  15. Canvas实现网页协同画板
  16. 达人评测 n5095和i3 10110u选哪个
  17. Java 破解谷歌翻译api,可以实现程序自动化翻译文章
  18. 三星oneUI安装谷歌商店的方法
  19. R12 中 java版本的变更
  20. 4-使用GitHub(Github Issue)及基本概念实战

热门文章

  1. 小程序常用的10款框架
  2. 屏蔽群晖系统升级并去除群晖桌面小红点
  3. 混合云存储阵列与云存储网关的协同解决方案
  4. php解析乱码字符串,php中文字符串截取方法防止乱码解析
  5. 2019软博会:和利时将展示在智能工厂等行业的解决方案
  6. 【selenium 模拟拼图】滑动拼图验证码10分钟教程
  7. uni-app 简介
  8. 过滤器(Filter)与拦截器(Interceptor )区别
  9. 根据工资计算税费html,税后工资计算器2018 个人所得税excel计算公式
  10. koa2 请求转发实现