文档章节

[Rtsp]RTSP对实时摄像头视频流进行转换(FFmpeg+FFserver)

DB_Terrill
 DB_Terrill
发布于 2016/09/29 10:40
字数 503
阅读 735
收藏 1

1.一、问题描述

输入数据为来自摄像头的RTSP视频流,然后利用FFmpeg将其输出到FFserver监听的服务(Feed)上,然后客户端(vlc)可以播放FFserver广播的经过转换后的视频流(Streams)。

通过FFserver的配置文件来配置视频流的转换参数(帧大小,帧频等)

2.二、实现方法

  1. 编辑FFserver配置文件,参考官网配置文件说明(ffserver.conf)
    Port 8090                       #绑定端口号
    BindAddress 0.0.0.0             #绑定ip
    MaxHTTPConnections 2000         #最大HTTP连接数
    MaxClients 1000                 #最大客户端连接数
    MaxBandwidth 1000               #最大带宽
    CustomLog -                     #日志文件,“-”为直接打印
    NoDaemon                        #默认全局参数
    
    <Feed feed1.ffm>                #Feed:每一个输入(摄像头)建立一个Feed
        File /tmp/feed1.ffm             #Feed缓存文件
        FileMaxSize 200K                #缓存文件最大值
        ACL allow 127.0.0.1             #允许写入Feed的ip
    </Feed>
    
    <Stream test.flv>               #Stream:每一个广播(转换后的视频流)的转码设置项目
        Format flv                      #视频流格式
        Feed feed1.ffm                  #视频流的种子来源
        VideoFrameRate 40               #视频帧频
        VideoBitRate 128                #视频比特率
        VideoSize 160x80                #视频帧大小
        AVOptionVideo flags +global_header
        AudioBitRate 24                 #音频比特率
        AudioChannels 1                 #音频声道
        AudioSampleRate 44100
        AVOptionAudio flags +global_header
    </Stream>

     

  2. 启动FFserver,终端输入命令:
    ffserver -f ffserver.conf

     

  3. 启动FFmpeg,终端输入命令:
    ffmpeg -i rtsp://192.168.1.111:8000/?videoCodecType=H.264 http://localhost:8090/feed1.ffm
    
    #-i:为输入参数选项
    #rtsp://192.168……:为输入的RTSP视频流
    #http://localho……:为FFserver配置文件中设置的Feed的监听地址和端口

     

  4. 打开客户端(vlc)请求视频流地址:打开vlc–>File–>OpenNetwork–>URL中填写 “http://localhost:8090/test.flv”–>Open  (地址为FFserver配置文件中Stream项的名字)

3.参考链接:

FFserver官方文档:1. ffserver tool and FFmpeg components  2. 配置文件示例

本文转载自:http://www.cuplayer.com/player/PlayerCode/RTSP/2014/0706/1414.html

DB_Terrill
粉丝 23
博文 143
码字总数 27267
作品 0
大连
其他
私信 提问
用VLC做流媒体服务器

VLC确切来说只是个播放器,是videolan的开源产品,videolan原来还有一个VLM,是服务器端,专门用来做流媒体服务器的,但是现在VLM的功能已经都集成进VLC了,所以也就可以用VLC来做流媒体服务...

yizhichao
2016/09/18
47
0
监控摄像头如何进行互联网网页实时直播

什么是网络监控摄像头 网络摄像头,也就是IP camera, 简称IPcam。是传统摄像头与网络视频技术相结合的新一代产品,除了具备一般传统摄像机所有的图像捕捉功最新款网络摄像头能外,机内还内置...

sinat_38810755
2017/06/09
0
0
机器视觉及图像处理系列之二(C++,VS2015)——图像级的人脸识别(1)

接上一篇,一切顺利的话,你从github上clone下来的整个工程应该已经成功编译并生成dll和exe文件了;同时,ImageMagic程序亦能够打开并编辑图像了,如此,证明接下来的操练你不会有任何障碍。...

Neo-T
2018/09/17
0
0
ffmpeg+ffserver搭建流媒体服务器

ffmpeg和ffserver配合使用可以实现实时的流媒体服务。 一、理解 里边主要有如下四个东西,搞清楚他们之间的关系就差不多明白了。 1. ffmpeg 2. ffserver 3. ffserver.conf 4. feed1.ffm 1. f...

wwl33695
2014/07/24
0
0
跨平台的视频采集、直播SDK--SmarterStreaming

专注、极致、智慧,国内外为数不多不依赖开源框架、跨平台(windows/android/iOS)、公网推送(支持rtmp)-播放(支持rtmp/rtsp)业界真正靠谱的超低延迟。 适用于秀场直播、媒体移动直播、应急指挥...

大牛直播
2016/03/28
13.5K
9

没有更多内容

加载失败,请刷新页面

加载更多

JWT学习总结

官方 https://jwt.io 英文原版 https://www.ietf.org/rfc/rfc7519.txt 或 https://tools.ietf.org/html/rfc7519 中文翻译 https://www.jianshu.com/p/10f5161dd9df 1. 概述 JSON Web Token(......

冷基
28分钟前
2
0
AOP的学习(1)

AOP 理解AOP编程思想(面向方法、面向切面) spring AOP的概念 方面 -- 功能 目标 -- 原有方法 通知 -- 对原有方法增强的方法 连接点 -- 可以用来连接通知的地方(方法) 切入点 -- 将用来插入...

太猪-YJ
今天
4
0
一张图看懂亮度、明度、光度、光亮度、明亮度

亮度、明度、光亮度,Luminance和Brightness、lightness其实都是一个意思,只是起名字太难了。 提出一个颜色模型后,由于明度的取值与别人的不同,为了表示区别所以就另想一个词而已。 因此在...

linsk1998
昨天
8
0
Python应用:python链表示例

前言 python链表应用源码示例,需要用到python os模块方法、函数和类的应用。 首先,先简单的来了解下什么是链表?链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是...

python小白1
昨天
4
0
Source Insight加载源码

Source Insight是一个图形化的源代码查看工具(当然也可以作为编译工具)。如果一个项目的源代码较多,此工具可以很方便地查找到源代码自建的依赖关系。 1.创建工程 下图为Snort源代码的文件...

天王盖地虎626
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部