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

最近在研究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 ISM
A 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 playe
rs (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 information




E:\install_software>mp4creator -list java.mp4// 查看原来的文件信息
Track   Type    Info
1       video   H264 Baseline@3.1, 421.166 secs, 397 kbps, 1024x768 @ 30.000047
fps
2       audio   MPEG-4 AAC LC, 421.209 secs, 126 kbps, 44100 Hz


E:\install_software>mp4creator -hint=1 java.mp4// hint 1
MP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[0].mdia.min
f.stbl.stsd.*.esds.decConfigDescr.objectTypeId
MP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[2].mdia.min
f.stbl.stsd.*.esds.decConfigDescr.objectTypeId


E:\install_software>mp4creator -hint=2 java.mp4 // hint 2
MP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[0].mdia.min
f.stbl.stsd.*.esds.decConfigDescr.objectTypeId
MP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[2].mdia.min
f.stbl.stsd.*.esds.decConfigDescr.objectTypeId
MP4ERROR: MP4File::FindIntegerProperty: no such property - moov.trak[3].mdia.min
f.stbl.stsd.*.esds.decConfigDescr.objectTypeId


E:\install_software>mp4creator -list java.mp4 // 虽然前面两次hint都报错了,但是还是发现文件多了两个track,大功告成
Track   Type    Info
1       video   H264 Baseline@3.1, 421.166 secs, 397 kbps, 1024x768 @ 30.000047
fps
2       audio   MPEG-4 AAC LC, 421.209 secs, 126 kbps, 44100 Hz
3       hint    Payload H264 for track 1
4       hint    Payload mpeg4-generic for track 2


E:\install_software>

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


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值