rtsp转码服务器原理,通过http转码rtsp

在我解释我的问题之前:对不好的英语感到抱歉,如果你想要,你也可以帮我解决我的拼写问题。通过http转码rtsp

我有一个低成本的IP摄像头谁给只有RTSP链接: 192.168.XX/onvif2 它并不需要身份验证,看视频......我的路由器没有开放的端口^^

我想转码rtsp(因为html无法播放它)与FFMPEG发送它在服务器node.js(快速)和index.html播放视频标记流中:

Server.js:

var express = require('express');

var path = require('path');

var app = express();

var server = require('http').Server(app);

var io = require('socket.io')(server);

app.use(express.static(path.join(__dirname, 'public')));

app.get('/', function (req, res) {

res.sendFile(__dirname + '/index.html');

});

server.listen(8080);

console.log("server run at 127.0.0.1:8080");

io.on('connection',function(socket){

socket.emit('hello','hello user');

});

and index.html:

var socket = io.connect();

socket.on('hello',function(data){

console.log(data);

});

ffmpeg -i rtsp://192.168.x.x/onvif2 -crf 30 -preset ultrafast -acodec aac -strict experimental -ar 44100 -ac 2 -b:a 96k -vcodec libx264 -r 25 -b:v 500k -f flv http://127.0.0.1:xx/vid2.mp4

摄像机开始,但我无法找到vid2.mp4

我如何与节点服务器(HTTP代替ffserver的? udp?)

2016-11-24

NikiDon

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、支持国标GB28181平台、国标GB28181 IPC和国标GB28181 NVR设备同时接入 (支持GB28181-2011版本和GB28181-2016版本)     2、支持国标GB28181设备注册和注销,对所有设备进行管理,获取资源 对资源列表进行管理     3、支持国标GB28181的目录订阅,对接收的订阅通知进行处理     4、支持国标GB28181实时视频请求(支持UDP、TCP主动(tcpactive)、TCP被动(tcppassive))     5、支持国标GB28181 PTZ控制     6、支持国标GB28181 录像查询     7、支持国标GB28181 历史视频点播 (支持UDP、TCP主动(tcpactive)、TCP被动(tcppassive))     8、支持国标GB28181 历史视频下载 (支持UDP、TCP主动(tcpactive)、TCP被动(tcppassive))     9、支持对接收的国标实时视频码流和历史视频码流进行管理     10、支持将国标的PS码流转换成ES码流     11、支持丢包打印和断流打印     13、支持RTSP服务和RTSP会话管理     14、支持RTSP客户端 UDP传输和TCP传输     15、支持国标GB28181设备5000路左右的接入管理,支持国标请求视频在100路左右     16、支持国标28181设备和通道写入mysql数据库      17、支持设备的云台PTZ控制,控制类型:上"up",下"down",左"left",右"right",左上"leftup",左下"leftdown",右上"rightup",右下"rightdown",镜头近"zoomin",镜头远"zoomout", 焦距远"focusfar",焦距近"focusnear", 设置预置位"setpos",调预置位"callpos"     18、支持历史视频的查询和历史视频的点播控制     19、支持对国标设备的控制,"record":录像开启和停止-通道id "guard":布放和撤防-报警通道id "reboot":设备重启-设备id "keyfame":强制关键帧-通道id     20、支持对实时视频的图片截图,通过http直接访问图片    21、支持rtmp和hls会话一直保留    22、支持报警消息(设备上线、下线和设备端报警)通过httpclient方式主动通知    23、支持公网和局域网同时存在
使用 ffmpeg 工具进行 RTSP 转码可以使用以下命令格式: ``` ffmpeg -rtsp_transport tcp -i {RTSP_URL} -c:v {VIDEO_CODEC} -preset {VIDEO_PRESET} -b:v {VIDEO_BITRATE} -r {VIDEO_FRAMERATE} -s {VIDEO_SIZE} -c:a {AUDIO_CODEC} -ar {AUDIO_SAMPLERATE} -ac {AUDIO_CHANNELS} -b:a {AUDIO_BITRATE} {OUTPUT_FILE} ``` 其中,各个参数的含义如下: - `-rtsp_transport tcp`:表示使用 TCP 传输 RTSP 流; - `-i {RTSP_URL}`:表示输入的 RTSP 流地址; - `-c:v {VIDEO_CODEC}`:表示视频编码器,常用的有 H.264、H.265、MPEG-4 等; - `-preset {VIDEO_PRESET}`:表示视频编码速度和质量的预设值,常用的有 ultrafast、superfast、veryfast、faster、fast、medium、slow、slower、veryslow 等; - `-b:v {VIDEO_BITRATE}`:表示视频的码率,单位为比特率(bps),常用的有 500k、1M、2M、4M 等; - `-r {VIDEO_FRAMERATE}`:表示视频的帧率,常用的有 25、30、60 等; - `-s {VIDEO_SIZE}`:表示视频的分辨率,常用的有 640x480、1280x720、1920x1080 等; - `-c:a {AUDIO_CODEC}`:表示音频编码器,常用的有 AAC、MP3 等; - `-ar {AUDIO_SAMPLERATE}`:表示音频的采样率,常用的有 44100、48000 等; - `-ac {AUDIO_CHANNELS}`:表示音频的声道数,常用的有 1、2 等; - `-b:a {AUDIO_BITRATE}`:表示音频的码率,单位为比特率(bps),常用的有 64k、128k、192k 等; - `{OUTPUT_FILE}`:表示输出文件的路径和文件名,常用的有 MP4、FLV、AVI 等格式。 例如,以下命令可以将 RTSP转码为 H.264 编码、分辨率为 640x480、帧率为 25 帧/秒、码率为 1Mbps 的 MP4 文件: ``` ffmpeg -rtsp_transport tcp -i rtsp://192.168.1.2:554/Streaming/Channels/1 -c:v libx264 -preset ultrafast -b:v 1M -r 25 -s 640x480 -c:a aac -ar 44100 -ac 2 -b:a 128k output.mp4 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值