ffmpeg推流及python管道控制ffmpeg推流
------------python算法处理后再进行推流-------------------------------
1、先搭建流媒体服务器
方式一:见Windows+nginx+rtmp+OBS文档,或用linux+nginx+rtmp
方式二:见SRS4.0.85流媒体服务器搭建
2、安装ffmpeg并添加到环境变量(以windows为例)
Download FFmpeg
将文件bin目录路径添加到环境变量中,在cmd/终端中输入ffmpeg,出现以下内容说明已添加好
(windows)
(linux)
3、python通过管道控制ffmpeg推流
经过无数次配置命令行验证,目前以下两种有效。目前经测试,使用ffmpeg推流命令复杂且视频画面不稳,容易出现各种各样问题,没有OBS好使
import subprocess as sp
import cv2
rtmpUrl = 'rtmp://192.168.3.39:1935/live/livestream'#下面这个可以通过srs服务器推webRTC流command = ['ffmpeg','-y', '-an','-f', 'rawvideo','-vcodec', 'rawvideo','-pix_fmt', 'bgr24','-s', '1280x720','-r', '25','-i', '-','-c:v', 'libx264','-pix_fmt', 'yuv420p','-preset', 'ultrafast','-flvflags', 'no_duration_filesize','-f', 'flv',rtmpUrl]#这个可通过nginx+rtmp服务器推流
command = ['ffmpeg','-y','-f', 'rawvideo','-vcodec', 'rawvideo','-pix_fmt', 'bgr24','-s', "1280x720",'-i', '-','-c:v', 'libx264','-preset', 'faster','-f', 'flv',rtmpUrl]# 下面这个可以通过srs推流webRTC
command = ['ffmpeg','-re','-i', rtmp_url,'-vcodec', 'copy','-acodec', 'copy','-f','flv','-flvflags','no_duration_filesize',rtmpUrl]pipe = sp.Popen(command,stdin=sp.PIPE)
while (cap.isOpened()):ret, frame = cap.read()if ret:pipe.stdin.write(frame.tostring())else:break
cap.release()
pipe.terminate()
---------------ffmpeg推流本系统usb摄像头直接命令--------------
引用博客:地址
1、Linux
1、ls -ltrh /dev/video* #获取摄像头名称Linux下用 FFMPEG 采集 usb摄像头视频 和 摄像头内置麦克风音频 到RTMP服务ffmpeg -f video4linux2 -qscale 10 -r 12 -s 640x480 -i /dev/video0 -f alsa -i hw:1 -ab 16 -ar 22050 -ac 1 -f mp3 -f flv rtmp://127.0.0.1/rtmpsvr/rtmp1./ffmpeg -f video4linux2 -s 640x480 -i /dev/video0 -f flv rtmp://127.0.0.1:1935/live/live首先说一下推流,主要使用ffmpeg命令进行本地摄像头的推流,为了实现首屏秒开使用-g设置gop大小,同时使用-b降低网络负载,保证流畅度。2、ffmpeg -r 30 -i /dev/video0 -vcodec h264 -max_delay 100 -f flv -g 5 -b 700000 rtmp://219.216.87.170/live/test1
2、windows
1、ffmpeg -list_devices true -f dshow -i dummy#获取摄像头名称2、
ffmpeg -f dshow -i video="摄像头名称" -vcodec libx264 -acodec copy -preset:v ultrafast -tune:v zerolatency -f flv rtmp://116.xxx.xxx.xxx:1935/ros/ros_videoffmpeg -r 30 -f vfwcap -i 0 -vcodec h264 -max_delay 100 -f flv -g 5 -b 700000 rtmp://219.216.87.170/live/test1ffmpeg -r 30 -f dshow -i video="1.3M HD WebCam" -vcodec h264 -max_delay 100 -f flv -g 5 -b 700000 rtmp://219.216.87.170/live/tes
ffmpeg推流及python管道控制ffmpeg推流相关推荐
- Python之ffmpeg:利用python编程基于ffmpeg将m4a格式音频文件转为mp3格式文件
Python之ffmpeg:利用python编程基于ffmpeg将m4a格式音频文件转为mp3格式文件 目录 利用python编程基于ffmpeg将m4a格式音频文件转为mp3格式文件 1.先下载ff ...
- windows下ffmpeg+nginx-rtmp环境搭建及opencv+ffmpeg+python实现拉流和rtmp直播推流
由于工作需要最近在研究rtsp拉流与直播推流的问题,目前先在我本机上进行了实验,本博客记录学习的内容,包含windows下ffmpeg.nginx-rtmp环境搭建及opencv+ffmpeg+pyt ...
- ffmpeg c++代码推流RTSP/RTMP(命令行推流)
由于ffmpeg推出的rtsp或者rtmp端口需要Listen,所以需要开启端口TCP/UDP,之后采用ffmpeg向端口推送数据 第一,安装rtsp-simple-server release下载地 ...
- 最简单的基于FFmpeg的移动端例子:Android 推流器
===================================================== 最简单的基于FFmpeg的移动端例子系列文章列表: 最简单的基于FFmpeg的移动端例子:A ...
- FFmpeg音视频倍速控制
本文除了会讲到通过命令行处理倍速,还会讲到通过FFmpeg api的方式去处理音频倍速和视频倍速,进而合并成支持倍速的音视频发布成rtmp或者存成flv文件. 介绍FFmpeg的filter工具 音视 ...
- FFmpeg 音视频倍速控制
网上关于FFmpeg音视频倍速控制的资料不多,大部分都是讲通过FFmpeg命令去做音视频文件的倍速处理,通过FFmpeg api去 处理倍速的资料少之又少. 本文除了会讲到通过命令行处理倍速,还会讲到 ...
- python调用ffmpeg_Python - FFmpeg
before FFmpeg不属于Python的包,只是Python在处理音视频的时候,可能会用到这个工具...... about 引用百度百科,FFmpeg是一套可以用来记录.转换数字音频.视频,并能 ...
- python ffmpy3与FFmpeg的安装
python ffmpy3与FFmpeg的安装 安装命令: pip install ffmpy3 去官网下载FFmpeg,根据自身电脑版本下载相应安装包 http://ffmpeg.org/down ...
- python中使用ffmpeg合并音频与视频_ffmpeg 在windows 下的安装和使用(python, 合并音频和视频)...
参考: windows下ffmpeg的安装与python调用 https://blog.csdn.net/chunjiekid/article/details/88205824 1. 下载 ffm ...
- ffmpeg加文字水印并控制水印显示时间或显示周期
#以下脚本保存成.sh文件运行,不会出现中文乱码问题 网上查到用enable关键字控制,实际是draw #加水印 水印位置由x,y,w,h来控制 #ffmpeg编译时需--enable-libfree ...
最新文章
- 用ECMAScript4 ( ActionScript3) 实现Unity的热更新 -- 使用原型链和EventTrigger
- “智能”基石:人工智能数据标注与训练,是决定智能时代的第一步
- 6行代码实现ASP无组件上传
- 调用函数,输出Fibonacci数列的m项至n项
- [18/11/23]面向对象和面向过程
- 今日恐慌与贪婪指数为74 等级转为贪婪
- 你为什么用微信,不用 QQ ?
- 动手写个数字输入框2:起手式——拦截非法字符
- 三十岁还没做到管理层的人,后来都怎么样了?
- Windows XP 优化
- 团队项目(一)(江山代有才人秃队)
- 衡是计算机科学与技术学院,郭华平
- java实现订单轨迹_B端零售业:订单轨迹日志功能设计思考
- 贪心——Berserk And Fireball
- Windows最值得安装的小众软件
- 一种用于指导模拟 IC 布局的定制图神经网络模型
- dagre-d3 基于d3.js v4版本以上
- 机器学习:公式推导与代码实现全书代码!
- 前端背景图放置_web前端入门到实战:css 中的背景图片小技巧和存在的坑
- matlab实用小程序段 —— 串口发送和读取