python实现基于UDP的视频直播程序

这篇具有很好参考价值的文章主要介绍了python实现基于UDP的视频直播程序。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.视频信息的采集

对于摄像头,使用OpenCV打开并获取每一帧的图像,将其封装成字节流进行传输

获取摄像头视频流

cam = cv2.VideoCapture(0)     #打开摄像头

while (cam.isOpened()):

ret,frame = cam.read()      #获取视频流

这一步没啥好说的,最基本的API调用

对每一帧图像进行处理

将每一帧图像写入内存(与写入文件类似),然后读出为字节用于网络传输.可以想象为先将每一帧图像都保存为文件,再发送文件,不过写入文件太慢,这里直接写入内存

def array_pic_to_stream(pic):

stream = BytesIO()

pic = Image.fromarray(pic)

pic.save(stream, format=“JPEG”)

jepg = stream.getvalue()

stream.close()

return jepg

可以将BytesIO理解为一个保存在内存中的文件,通过写入,写出操作将numpy.array()类型数据转化为二进制文件

对于屏幕,使用Image的截图功能截取每一帧图像,将其封装成字节流

获取视频流

img = ImageGrab.grab()

out = img.resize((612,480))

这里要注意,之所以对图片的大小进行削减是因为UDP传输的包的大小是有限制的,好像是六万五左右,而屏幕分辨率太高,所以 必须缩减

对每一帧图像进行处理

将Image对象转化为数组,在转化为字节流

def pic_to_array(pic):

stram = BytesIO()

pic.save(stram, format=“JPEG”)

array_pic = numpy.array(Image.open(stram))

stram.close()

return array_pic

def array_pic_to_stream(pic):

stream = BytesIO()

pic = Image.fromarray(pic)

pic.save(stream, format=“JPEG”)

jepg = stream.getvalue()

stream.close()

return jepg

2.发送

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

python实现基于UDP的视频直播程序,程序员,python,udp,音视频

python实现基于UDP的视频直播程序,程序员,python,udp,音视频

python实现基于UDP的视频直播程序,程序员,python,udp,音视频

python实现基于UDP的视频直播程序,程序员,python,udp,音视频

python实现基于UDP的视频直播程序,程序员,python,udp,音视频

python实现基于UDP的视频直播程序,程序员,python,udp,音视频

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)文章来源地址https://www.toymoban.com/news/detail-848091.html

涵盖了95%以上前端开发知识点,真正体系化!**

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)

python实现基于UDP的视频直播程序,程序员,python,udp,音视频

到了这里,关于python实现基于UDP的视频直播程序的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 通用视频下载器-批量下载直播 批量下载回放 批量下载播主所有视频 批量下载小程序直播 抖音直播下载 淘宝直播下载 快手直播下载 网页视频下载器

    是一款十分专业的视频下载工具,不仅能够直接粘贴视频链接进行下载,支持mp4、rmvb、mkv以及m3u8等多种视频格式,而且还能够对一些直播的内容进行抓取、串流或者是缓存下载。 1. 可以下载网页视频,影视平台视频,自媒体平台视频, 小程序视频, 正在直播的视频,整场

    2024年02月02日
    浏览(56)
  • 使用微信小程序播放视频直播

    观众端使用live-player进行直播视频的播放,live-player组件从视频云拉流,并用于实时音视频播放。live-player支持两种模式:Live和RTC,前者用于直播播放,后者用于实时音视频通话。在使用live-player组件实现直播播放前先看看live-player组件的属性以及方法。 属性定义 Src 用于音视

    2023年04月15日
    浏览(62)
  • vue实现监控视频直播

    vue实现监控视频直播 要想使用videojs我们势必是需要安装videojs的, 而且在生产环境中我们也需要依赖它, 所以如下 我们打开Vue工程中的主入口 main.js 进行引入 创建监控视频九宫格 创建视频容器 虽然是遍历视频容器组件,但是监控视频只播放第一个,所以这里创建视频容器时

    2024年02月11日
    浏览(49)
  • 基于海康Ehome/ISUP接入到LiveNVR实现海康摄像头、录像机视频统一汇聚,做到物联网无插件直播回放和控制

    LiveNVR基础配置 海康 ISUP 接入配置 ,填写相关信息 服务 IP (设备可以访问到的IP) 服务端口 接入密码 (ISUP接入时要填此密码) 填写上 1、海康 ISUP 接入配置 中配置的相关信息,设备ID( 自定义不要重复 ) 填写上 1、海康 ISUP 接入配置 中配置的相关信息,设备ID( 自定义

    2024年02月08日
    浏览(77)
  • 浅析景区慢直播的需求与基于视频技术的解决方案

    从春节到“五一”假期,旅游市场高开稳走,复苏持续提速。“慢直播”是一种特别的直播形式,没有主持人,也没有绚丽的镜头切换以及精美的后期制作,只用固定机位拍摄来更加真实地展现事件现场,以很低的制作成本、“无添加”的真实画面呈现给观众,其独特的真实

    2024年02月10日
    浏览(38)
  • 使用js搭建简易的WebRTC实现视频直播

    首先需要一个信令服务器,我们使用nodejs来搭建。两个端:发送端和接收端。 我的目录结构如下图: 流程 创建一个文件夹 WebRTC-Test。 进入文件夹中,新建一个node的文件夹。 使用终端并进入node的目录下,使用 创建package.json。 新建server.js,复制一下代码 下载信令服务器的依

    2024年02月09日
    浏览(39)
  • FFmpeg/opencv + C++ 实现直播拉流和直播推流(对视频帧进行处理)

    本文主要使用C++ ffmpeg库实现对除去webrtc的视频流进行拉流,而后经过自身的处理,而后通过将处理后的视频帧进行编码,最后进行推流处理。详情请看代码 参考链接: https://blog.csdn.net/weixin_45807901/article/details/129086344 https://blog.csdn.net/T__zxt/article/details/126827167

    2024年02月16日
    浏览(56)
  • 基于javacv(推流),nginx(流媒体服务器),VCL(播放器)搭建直播视频

    目录 1.获取RTSP地址 2.搭建流媒体服务器 2.1下载资源 下载nginx  下载rtmp组件  启动nginx 测试工具(由于java代码调试问题,所以这里先下载一个转码推流的工具,其中javacv的原理也是它)可忽略  下载VLC(测试视频是否成功)  2.2测试向流媒体服务器推流 3.转码  4.查看监控数

    2024年02月06日
    浏览(85)
  • Android-音视频学习系列-(八)基于-Nginx-搭建(rtmp、http)直播服务器

    #!/bin/sh HTTP_FLV_MODULE_PATH=…/nginx-http-flv-module-1.2.7 OpenSSL_PATH=…/openssl-1.1.1d #–prefix=./bin 代表编译完成之后输出的路径地址 #–add-module 将拓展模块添加到当前一起编译 ./configure --prefix=./bin –add-module= H T T P F L V M O D U L E P A T H   − − w i t h − o p e n s s l = HTTP_FLV_MODULE_PATH --with

    2024年04月15日
    浏览(64)
  • 监控摄像头接入GB28181平台实现监控视频直播的详细搭建流程

    将监控摄像头的视频在网站和APP中直播,要解决的几个问题是: 1)获取摄像头视频 2)将视频直播出去 3)网页无插件直播和APP集成 获取摄像头视频,之前主要采取拉流模式,即在知道摄像头ip地址的情况下,可以通过RTSP协议拉取摄像头实时视频。最新的方案是采用GB28181协

    2023年04月17日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包