dss和vlc和mp4creator,自己搭建rtp的cs框架

来源:互联网 发布:公共英语网络培训 编辑:程序博客网 时间:2024/05/29 14:13

最近在研究RTSP协议,因此,基于Ubuntu系统,利用Darwin Streaming Server搭建了一个RTSP服务器。其实很简单。

1、将DarwinStreamingSrvr5.5.5-Linux.tar.gz解压缩:

tarx zvf DarwinStreamingSrvr5.5.5-Linux.tar.gz

2、在DarwinStreamingSrvrlinux-Linux目录下运行./Install,在安装过程中提示设置admin账号以及密码,使用这个帐号可以通过网页对DSS的配置进行管理

3、安装完之后通过http://<IPaddress>:1220可以访问DSS的配置页面,Streaming的文件默认位于server/usr/local/movies目录下


测试可以使用它自带的测试文件。把文件拷贝到/usr/local/movies下面。

可以利用vlc打开"网络串流"测试一下服务器能否正常工作:

rtsp://192.168.56.128/java.mp4


开始打开失败,wireshark抓包发现是rstp(vlc(windows上)和Dss(linux上) 之间)协商失败,错误码是415:Media type not supported.


网上所搜索发现是缺少对视频文件java.mp4进行"后处理"

下载mp4creator-win32-1.6.1e-pre.zip,解压得到MP4creator.exe,将这个文件拷贝到c:\windows路径下面.

开启windows的cmd


E:\install_software>mp4creator -v //检查MP4creator的可用性usage: mp4creator  <options> <mp4-file>  Options:  -aac-old-file-format    Use old file format with 58 bit adts headers  -aac-profile=[2|4]      Force AAC to mpeg2 or mpeg4 profile  -allow-avi-files        Allow avi files  -calcH263Bitrates       Calculate and add bitrate information  -create=<input-file>    Create track from <input-file>    input files can be of type: .263 .aac .ac3 .amr .mp3 .divx .mp4v .m4v .cmp .xvid .chap  -encrypt[=<track-id>]   Encrypt a track, also -E  -extract=<track-id>     Extract a track  -delete=<track-id>      Delete a track  -force3GPCompliance     Force making the file 3GP compliant. This disables ISMA compliance.  -forceH263Profile=<profile> Force using H.263 Profile <profile> (default is 0)  -forceH263Level=<level>     Force using H.263 level <level> (default is 10)  -H263CbrTolerance=<value>   Define H.263 CBR tolerance of [value] (default: 10%)  -hint[=<track-id>]      Create hint track, also -H  -interleave             Use interleaved audio payload format, also -I  -list                   List tracks in mp4 file  -make-isma-10-compliant Insert bifs and od tracks required for some ISMA players (also -i)  -mpeg4-video-profile=<level> Mpeg4 video profile override  -mtu=<size>             Maximum Payload size for RTP packets in hint track  -optimize               Optimize mp4 file layout  -payload=<payload>      Rtp payload type                          (use 3119 or mpa-robust for mp3 rfc 3119 support)  -rate=<fps>             Video frame rate, e.g. 30 or 29.97  -qth=<height>           Set a new height for QuickTime display  -qtw=<width>            Set a new width for QuickTime display  -timescale=<ticks>      Time scale (ticks per second)  -use64bits              Use for large files  -use64bitstime          Use for 64 Bit times (not QT player compatible)  -variable-frame-rate    Enable variable frame rate for mpeg4 video  -verbose[=[1-5]]        Enable debug messages  -version                Display version informationE:\install_software>mp4creator -list java.mp4// 查看原来的文件信息Track   Type    Info1       video   H264 Baseline@3.1, 421.166 secs, 397 kbps, 1024x768 @ 30.000047fps2       audio   MPEG-4 AAC LC, 421.209 secs, 126 kbps, 44100 HzE:\install_software>mp4creator -hint=1 java.mp4// hint 1MP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[0].mdia.minf.stbl.stsd.*.esds.decConfigDescr.objectTypeIdMP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[2].mdia.minf.stbl.stsd.*.esds.decConfigDescr.objectTypeIdE:\install_software>mp4creator -hint=2 java.mp4 // hint 2MP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[0].mdia.minf.stbl.stsd.*.esds.decConfigDescr.objectTypeIdMP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[2].mdia.minf.stbl.stsd.*.esds.decConfigDescr.objectTypeIdMP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[3].mdia.minf.stbl.stsd.*.esds.decConfigDescr.objectTypeIdE:\install_software>mp4creator -list java.mp4 // 虽然前面两次hint都报错了,但是还是发现文件多了两个track,大功告成Track   Type    Info1       video   H264 Baseline@3.1, 421.166 secs, 397 kbps, 1024x768 @ 30.000047fps2       audio   MPEG-4 AAC LC, 421.209 secs, 126 kbps, 44100 Hz3       hint    Payload H264 for track 14       hint    Payload mpeg4-generic for track 2E:\install_software>

在把处理过的java.mp4拷贝到linux的/usr/local/movies目录下,,,在vlc(windows)中可以播放了...


原创粉丝点击