crtmpserver的安装,摄像头视频测试
下载
svn co --username anonymous --password "" https://svn.rtmpd.com/crtmpserver/branches/1.0 crtmpserver
安装:
1. 按照文档sudo apt-get install g++ subversion cmake make libssl-dev,还是出现
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
OPENSSL_INCLUDE_PATH: OPENSSL_INCLUDE_PATH-NOTFOUND
OPENSSL_LIBRARY_PATH: OPENSSL_LIBRARY_PATH-NOTFOUND
CRYPTO_LIBRARY_PATH: CRYPTO_LIBRARY_PATH-NOTFOUND
Z_LIBRARY_PATH:
CMake Error at cmake_find_modules/Find_openssl.cmake: (MESSAGE):
Looking for openssl headers - not found
Call Stack (most recent call first):
CMakeLists.txt: (INCLUDE) -- Configuring incomplete, errors occurred!
缺少openssl,从网上下载openssl,make install之后cmake .成功
但是make出错:
/home/user/crtmpserver/3rdparty/tinyxml/tinyxmlparser.cpp: In static member function 'static const char* TiXmlBase::GetEntity(const char*, char*, int*, TiXmlEncoding)':
/home/user/crtmpserver/3rdparty/tinyxml/tinyxmlparser.cpp::: error: 'ptrdiff_t' was not declared in this scope
/home/user/crtmpserver/3rdparty/tinyxml/tinyxmlparser.cpp::: note: suggested alternatives:
/usr/include/c++/4.6/i686-linux-gnu/./bits/c++config.h::: note: 'std::ptrdiff_t'
/usr/include/c++/4.6/i686-linux-gnu/./bits/c++config.h::: note: 'std::ptrdiff_t'
/home/user/crtmpserver/3rdparty/tinyxml/tinyxmlparser.cpp::: error: expected ';' before 'delta'
/home/user/crtmpserver/3rdparty/tinyxml/tinyxmlparser.cpp::: error: 'delta' was not declared in this scope
/home/user/crtmpserver/3rdparty/tinyxml/tinyxmlparser.cpp::: error: 'delta' was not declared in this scope
/home/user/crtmpserver/3rdparty/tinyxml/tinyxmlparser.cpp::: error: 'delta' was not declared in this scope
make[]: *** [tinyxml/CMakeFiles/tinyxml.dir/home/user/crtmpserver/3rdparty/tinyxml/tinyxmlparser.cpp.o] Error
make[]: *** [tinyxml/CMakeFiles/tinyxml.dir/all] Error
make: *** [all] Error
将ptrdiff_t delta = 0;改成std::ptrdiff_t delta = 0;
不容易,终于ok了。
运行:
./crtmpserver/crtmpserver ./crtmpserver/crtmpserver.lua
。。。。
+-----------------------------------------------------------------------------+
| Services|
+---+---------------+-----+-------------------------+-------------------------+
| c | ip | port| protocol stack name | application name |
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 1112| inboundJsonCli| admin|
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 1935| inboundRtmp| appselector|
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 8081| inboundRtmps| appselector|
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 8080| inboundRtmpt| appselector|
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 6666| inboundLiveFlv| flvplayback|
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 9999| inboundTcpTs| flvplayback|
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 6665| inboundLiveFlv| proxypublish|
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 8989| httpEchoProtocol| samplefactory|
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 8988| echoProtocol| samplefactory|
+---+---------------+-----+-------------------------+-------------------------+
|tcp| 0.0.0.0| 1111| inboundHttpXmlVariant| vptests|
+---+---------------+-----+-------------------------+-------------------------+
/home/user/crtmpserver/sources/crtmpserver/src/crtmpserver.cpp:258 GO! GO! GO! (20498)
发布流
工具:Flash Media Live Encoder 3.2
填上相应的内容,最后绿色start即可。显示摄像头视频

接收显示流
工具:https://code.google.com/p/android-recorder/downloads/list ,A simple player from red5 可用于点播流媒体服务器上flv文件的播放器,flvPlayer.exe
填上对应的ip,name等就好。

测试ok,能看到摄像头视频,但有大约2s左右的延迟。
rtmpdump使用
./rtmpdump -r "rtmp://192.168.1.103/live/livestream" -v -o .flv
保存到1.flv中,能正常播放。
crtmpserver的安装,摄像头视频测试的更多相关文章
- Android IOS WebRTC 音视频开发总结(八十五)-- 使用WebRTC广播网络摄像头视频(下)
本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...
- Android IOS WebRTC 音视频开发总结(八十三)-- 使用WebRTC广播网络摄像头视频(上)
本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...
- javacv开发详解之1:调用本机摄像头视频(建议使用javaCV1.3版本)
javaCV系列文章: javacv开发详解之1:调用本机摄像头视频 javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG.j ...
- 如何用FFmpeg API采集摄像头视频和麦克风音频,并实现录制文件的功能
之前一直用Directshow技术采集摄像头数据,但是觉得涉及的细节比较多,要开发者比较了解Directshow的框架知识,学习起来有一点点难度.最近发现很多人问怎么用FFmpeg采集摄像头图像,事实 ...
- javacv开发详解之1:调用本机摄像头视频(建议使用javaCV最新版本)
javaCV系列文章: javacv开发详解之1:调用本机摄像头视频 javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG.j ...
- javacv开发详解之1:调用本机摄像头视频
前言:javacv开发包是用于支持java多媒体开发的一套开发包,可以适用于本地多媒体(音视频)调用以及音视频,图片等文件后期操作(图片修改,音视频解码剪辑等等功能),这里只使用最简单的本地摄像头调用 ...
- 在Jetson TX2上显示摄像头视频并使用python进行caffe推理
参考文章:How to Capture Camera Video and Do Caffe Inferencing with Python on Jetson TX2 与参考文章大部分都是相似的,如果 ...
- 在Jetson TX2上捕获、显示摄像头视频
参考文章:How to Capture and Display Camera Video with Python on Jetson TX2 与参考文章大部分都是相似的,如果不习惯看英文,可以看看我下 ...
- Flex(flash)检测摄像头的3种状态(是否被占用,没安装摄像头,正常)
在视频程序的编写过程中,我们经常要使用摄像头,在使用摄像头前有必要对摄像头的现有状态做个检测: 1.被占用 2.没安装摄像头 3.正常 camera=Camera.getCamera(); ...
随机推荐
- 生成MD5的方法
1.需要一个字符串,接受md5值 2.创建一个MD5实例,获得md5.Create()方法. //使用using 3.将字符串.文件流进行计算.返回二进制数组,Encoding.UTF8.GetByt ...
- [Android]应用的前后台运行
在开发中,你是不是没有抽象一个出常用的类,那你可能要为你的懒惰付出很大的代价.要时刻记得自己的工具箱,不断往里面添加一些小小玩意.今天就给大家带来一个很有意思的例子.前后台运行!! 在Android开 ...
- git 在windows上 生成ssh公钥
今天上传代码到服务器时,报如下错误: 上网搜了一下,应该是ssh过期了.我们就来生成新的ssh公钥吧. 1. 打开git bash 2. 输入命令: ssh-keygen -t rsa ...
- linux安装
1.rpm: • RPM是软件包管理工具,是Redhat Package Manager的缩写,最早由redhat公司引入的,现在已经成为公认的行业标准了.• 什么是package• 简单地说就是归档 ...
- 关于MapReduce单词统计的例子:
要统计的文件的文件名为hello hello中的内容如下 hello you hello me 通过MapReduce程序统计出文件中的各个单词出现了几次.(两个单词之间通过tab键进行的分割) im ...
- 【概率dp,难度3颗星】hdu-5001(2014鞍山网络赛)
给你一个连通的无向图,等概率随机选取一个起点,走d步,每一步等概率走到相邻的点.问走完d步之后,每个点没有被经过的概率. 推状态的关键当然就是对这个“从任意起点走完d步点node没被经过的概率”的理解 ...
- java按行读取txt并按行写入
IO流想必大家都很熟悉了,本次实现的需求是按行读取文件内容并且按行写入,代码如下: try { String encoding="utf-8"; //设定自己需要的字符编码集 Fi ...
- 关于Could not parse configuration: /hibernate.cfg.xml的问题
第一次在eclipse上配置hibernate,问题百出啊,比如下面的org.hibernate.HibernateException: Could not parse configuration: ...
- Ehcache(2.9.x) - API Developer Guide, Cache Loaders
About Cache Loaders A CacheLoader is an interface that specifies load() and loadAll() methods with a ...
- 每天一道LeetCode--172. Factorial Trailing Zeroes
Given an integer n, return the number of trailing zeroes in n!. Note: Your solution should be in log ...