使用VLC1.0.5进行RTSP2TS转码
一、 编译安装VLC
使用vlc-1.0.5.tar.bz2 + live555-2010.01.tar.gz
export MYDIR=/root/lf
将live555-2010.01.tar.gz和vlc-1.0.5.tar.bz2放置在$MYDIR下
cd $MYDIR
(一) 编译liveMedia
tar xvfz live555-2010.01.tar.gz
cd live
./genMakefiles linux
make
(二) 安装libdvbpsi
rpm -hiv libdvbpsi-0.1.7-1.el4.rf.i386.rpm
rpm -hiv libdvbpsi-devel-0.1.7-1.el4.rf.i386.rpm
需要什么rpm可到http://apt.sw.be/redhat/el4/en/i386/rpmforge/RPMS/中下载
(三) 编译VLC
1. configure
./configure --prefix=/usr --enable-debug --disable-avcodec --disable-hal --disable-avformat --disable-swscale --disable-a52 --disable-x11 --disable-sdl --disable-fribidi --disable-dbus --disable-libgcrypt --disable-gnutls --disable-remoteosd --disable-skins2 --disable-qt4 --disable-libxml2 --disable-lua --disable-xcb --disable-alsa --disable-v4l2 --disable-qt --enable-run-as-root --enable-live555 --with-live555-tree=$MYDIR/live --disable-mad --disable-postproc --enable-dvbpsi --enable-x264
2. make
3. 出现错误error: syntax error before "vlc_spinlock_t":
../include/vlc_threads.h:240: error: syntax error before "vlc_spinlock_t"
……
make[4]: *** [control/libvlc_la-vlm.lo] Error 1
make[4]: Leaving directory `/root/lf/vlc-1.0.5/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/root/lf/vlc-1.0.5/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/root/lf/vlc-1.0.5/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/lf/vlc-1.0.5'
make: *** [all] Error 2
通过以下命令解决:
sed -e 's/define\s*_POSIX_SPIN_LOCKS\s*/define _POSIX_SPIN_LOCKS -1 \/\/ wrong: /g' -i /usr/include/bits/posix_opt.h
4. 重试make出现error: `AFS_SUPER_MAGIC' undeclared:
file.c:52:28: linux/magic.h: No such file or directory
file.c: In function `IsRemote':
file.c:141: error: `AFS_SUPER_MAGIC' undeclared (first use in this function)
file.c:141: error: (Each undeclared identifier is reported only once
file.c:141: error: for each function it appears in.)
file.c:142: error: `CODA_SUPER_MAGIC' undeclared (first use in this function)
file.c:143: error: `NCP_SUPER_MAGIC' undeclared (first use in this function)
file.c:144: error: `NFS_SUPER_MAGIC' undeclared (first use in this function)
file.c:145: error: `SMB_SUPER_MAGIC' undeclared (first use in this function)
make[5]: *** [libaccess_file_plugin_la-file.lo] Error 1
make[5]: Leaving directory `/root/lf/vlc-1.0.5/modules/access'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/root/lf/vlc-1.0.5/modules/access'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/root/lf/vlc-1.0.5/modules/access'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/lf/vlc-1.0.5/modules'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/lf/vlc-1.0.5'
make: *** [all] Error 2
将下面的magic.h文件复制到/usr/include/linux/目录下
5. make install
6. 检查
vlc -l | grep access_output
access_output_udp UDP stream output
access_output_http HTTP stream output
access_output_file File stream output
access_output_dummy Dummy stream output
access_output_rtmp RTMP stream output
vlc -l | grep dvbpsi
mux_ts TS muxer (libdvbpsi)
(四) 进行RTSP To TS转码:
不经视音频重编码的直接转码:
vlc rtsp://172.17.0.219:8554/1 --sout '#standard{access=http, mux=ts, dst=172.17.0.100:1234}'
注:黑体部分为本机IP和端口,不能是127.0.0.1
vlc rtsp://172.17.0.219:8554/1 --sout '#duplicate{dst="std{access=udp, mux=ts, dst=172.17.1.116:1234}"}'
vlc rtsp://172.17.0.219:8554/1 --sout '#duplicate{dst="std{access=http, mux=ts, dst=172.17.0.100:1234}"}'
二、 视音频重编码的VLC编译安装
(一) 需要编译安装ffmpeg
./configure --prefix=/usr --enable-libfaac --enable-libx264 --enable-pthreads --disable-ffserver --disable-ffplay --enable-gpl --enable-nonfree
[root@localhost ffmpeg-0.6.7]# make
common.mak:28: *** unterminated call to function `foreach': missing `)'. Stop.
出现上面错误需要更新Make版本,使用make-3.81.tar.gz
./configure --prefix=/usr;make;make install
In file included from libavdevice/v4l.c:33:
/usr/include/linux/videodev.h:56: error: syntax error before "ulong"
/usr/include/linux/videodev.h:72: error: syntax error before '}' token
编辑/usr/include/linux/videodev.h第56行,把ulong改为 unsigned long
(二) 编译VLC
./configure --prefix=/usr --enable-debug --enable-avcodec --disable-hal --disable-avformat --disable-swscale --disable-a52 --disable-x11 --disable-sdl --disable-fribidi --disable-dbus --disable-libgcrypt --disable-gnutls --disable-remoteosd --disable-skins2 --disable-qt4 --disable-libxml2 --disable-lua --disable-xcb --disable-alsa --disable-v4l2 --disable-qt --enable-run-as-root --enable-live555 --with-live555-tree=$MYDIR/live --disable-mad --disable-postproc --enable-dvbpsi --enable-x264
没有--enable-avcodec运行VLC转码会出现"cannot find video decoder"的错误。
(三) 进行RTSP To TS转码:
vlc tcp://172.17.0.199:7799 --sout '#duplicate{dst="transcode{venc=x264{profile=baseline},vcodec=h264,acodec=mpga,vb=644,ab=56}:std{access=udp,mux=ts,dst=172.17.0.219:1234}"}'
使用VLC转时,不要激活转码
可正常工作的选项:
:sout=#http{mux=ts,dst=:8080/1} :sout-keep
:sout=#udp{mux=ts,dst=172.17.1.116:1234} :sout-keep
http://www.videolan.org/doc/videolan-howto/en/ch09.html
ffmpeg -i "rtsp://172.17.0.219:8554/1" -acodec libfaac -vcodec libx264 -vpre default -f mpegts -async 1 udp://127.0.0.1:3344
./configure --prefix=/usr --enable-libfaac --enable-libx264 --enable-pthreads --disable-ffserver --disable-ffplay --enable-gpl --enable-nonfree
转码
ffmpeg -i "rtsp://172.17.0.219:8080/1" -acodec libfaac -vcodec libx264 -vpre default -f mpegts -async 1 udp://172.17.0.219:3344
SNMP网管学习笔记
一、 Net-SNMP的编译及安装
二、 MIB文件的编写
三、 将MIB文件转换成.c和.h
四、 Agent代理工程
五、 Trap
DirectShow开发指南 陆其明 附书源码
DirectShow开发指南 陆其明 附书源码
DirectShow实务精选源码
DirectShow实务精选一书的源码 DirectShow实务精选一书的源码
DirectShow开发指南.zip.002 陆其明
DirectShow开发指南.zip.002 陆其明DirectShow开发指南.zip.002 陆其明
DirectShow开发指南.zip.001 陆其明
DirectShow开发指南.zip.001 陆其明 DirectShow开发指南.zip.001 陆其明
DirectShow实务精选
DirectShow实务精选.pdf DirectShow实务精选.pdf DirectShow实务精选.pdf DirectShow实务精选.pdf
FFMpeg+SDK+开发手册.pdf
FFMpeg SDK 开发手册.pdf
FFMpeg SDK 开发手册.pdf
Nullsoft.WinAmp.Pro.v5.541.2189
Nullsoft.WinAmp.Pro.v5.541.2189
Magic.ISO.Maker.v5.5.272.
Magic.ISO.Maker.v5.5.272
ScanPort1.2
ScanPort1.2 扫描端口最好用的软件
Bitcrowd.NetMAC.v1.1
Bitcrowd.NetMAC.v1.1改IP和MAC的首选软件
极点五笔64_full
极点五笔 用着还可以,速度快,还可用拼音,输入繁体字
最新GSM短消息规范03.38.rar
最新 GSM 短消息规范 03.38
最新 GSM 短消息规范 03.38
02-GSM Rec.07.07标准AT命令.pdf
02-GSM Rec.07.07标准AT命令.pdf
Apache内存池概述
Apache内存池概述及内幕
1. 内存池概述 2
2. 内存池分配结点 3
3. 内存池分配子ALLOCATOR 6
3.1. 分配子概述 6
3.2. 分配子创建与销毁 8
3.3. 分配子内存分配 10
3.4. 分配子内存释放 13
3.5. 分配子内存管理流程 15
4. 内存池 16
4.1. 内存池概述 16
4.2. 内存池的初始化 19
5. APACHE内存池中分配结点补充说明 20
6. 内存池中CURRENT_FREE_INDEX的作用的解释 23
7. 内存分配子的CURRENT_FREE_INDEX成员作用 24
7.1. 背景 24
7.2. 历史 24
7.3. CURRENT_FREE_INDEX与MAX_FREE_INDEX的作用 24
7.4. 关于CURRENT_FREE_INDEX溢出的问题 25
7.5. 溢出问题的解决 27
8. 简单应用 27