Linux Camera Streaming by using live555, x264, V4L2 and ffmpeg
来源:互联网 发布:全站简繁体转换js代码 编辑:程序博客网 时间:2024/06/07 02:09
Get source from: live555-for-win32 on Google code. http://code.google.com/p/live555-for-win32/
svn checkout http://live555-for-win32.googlecode.com/svn/trunk/ live555-for-win32-read-only
There is a blog on CSDN:
http://blog.csdn.net/sunkwei/article/details/6605314
The code change I did to make it work on my box is changing the video source from video1 to video0
mp_capture = capture_open("/dev/video0", VIDEO_WIDTH, VIDEO_HEIGHT, PIX_FMT_YUV420P);
Set port = 1234
RTSPServer *rtspServer = RTSPServer::createNew(*_env, port);
I also changed the Makefile to let it include the ffmpeg and x264 as I didn't install them in /usr/local/lib. My folder layout looks like these:
LIVE555= ../live
FFMPEG=../ffmpeg
X264 = ../x264
INCLUDES= ... -I$(FFMPEG) -I$(X264)
EXLIB = -L$(FFMPEG)/libavcodec -L$(FFMPEG)/libswscale -L$(FFMPEG)/libavutil -L$(X264)
$(CXX) -o $@ $^ -fPIC -L/usr/local/lib $(EXLIB) -lavcodec -lswscale -lavutil -lx264 -g3 -O0 -lpthread
$(CXX) -o $@ $^ -fPIC -L/usr/local/lib $(EXLIB) -lavcodec -lswscale -lavutil -lx264 -lpthread
To play it, mplayer2 is used on linux on the same machine:
mplayer rtsp://192.168.1.5:1234/webcam
It can continue play without problem.
While when play it on Windows XP on another machine using VLC, it only played the first several frames then stopped there.
To install x264:
First to get the source:
git clone git://git.videolan.org/x264.git
As this version need yasm-1.2.0, so I have to get it from:
wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
tar -xvzf yasm-1.2.0.tar.gz
cd yasm-1.2.0
./configure
make
sudo make install #Install to system folder
Then go to x264 folder:
cd ../x264/
./configure --enable-shared
make # I leave the x264 in its folder, not install to system folder
To install ffmpeg:
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
./configure
make
To install live555:
Go to live555 web side to download the tar file from http://www.live555.com/liveMedia/
I downloaded this file: live.2013.02.11.tar.gz
tar -xvzf live.2013.02.11.tar.gz
cd live
./genMakefiles linux
make
- Linux Camera Streaming by using live555, x264, V4L2 and ffmpeg
- ubuntu12.04上live555+v4l2+ffmpeg+x264开发环境的搭建
- V4L2+swscale+X264+live555实现流媒体服务端
- FFmpeg and x264 Encoding
- V4L2+FFMPEG+live555实现流媒体服务端
- Real time H.264 Encoding and Decoding-Using FFmpeg and x264
- ffmpeg x264 linux
- FFmpeg and x264 Encoding Guide
- FFmpeg and x264 Encoding Guide
- FFmpeg and x264 Encoding Guide
- Linux下Camera编程--V4L2
- linux camera V4L2框架(一)
- live555接实时视频流+ffmpeg解+x264再编
- arm mini2440 基于v4l2 ffmpeg x264的视频远程监控
- 基于v4l2 ffmpeg x264的视频远程监控
- arm mini2440 基于v4l2 ffmpeg x264的视频远程监控 .
- 2440 基于v4l2 ffmpeg x264的视频远程监控
- mini2440 基于v4l2 ffmpeg x264的视频远程监控
- VC6.0中如何彻底删除一个已经添加的类
- ArcGlobe更改缓存路径报错。
- 浅谈Linux下CPU利用率和CPU负载及其代码实现原理
- JAVA 模板方法模式
- Android开发_libgdx游戏引擎教程 性能优良的游戏引擎—libgdx (五)
- Linux Camera Streaming by using live555, x264, V4L2 and ffmpeg
- ListView中Item布局示例二
- C++中类型转化
- 大学太短了啊!!!
- 与文件系统有关的 windows API
- 有用的grep
- Android UI开发第二十六篇——Fragment间的通信
- Java Socket网络编程
- 知识和机会