+
19
-

回答

nodejs视频流转换

const NodeMediaServer = require('node-media-server');

const config = {
    rtmp: {
        port: 1935,
        chunk_size: 60000,
        gop_cache: true,
        ping: 30,
        ping_timeout: 60
    },
    http: {
        port: 8000,
        allow_origin: '*'
    }
};

const nms = new NodeMediaServer(config);
nms.run();

// 使用FFmpeg将RTSP推送到RTMP
// ffmpeg -i rtsp://your-rtsp-url -c copy -f flv rtmp://localhost/live/stream

前端播放

<!DOCTYPE html>
<html>
<head>
    <title>RTSP转WebSocket播放</title>
    <script src="https://cdn.jsdelivr.net/npm/flv.js@1.6.2/dist/flv.min.js"></script>
</head>
<body>
    <video id="videoElement" controls width="800" height="600"></video>
    
    <script>
        if (flvjs.isSupported()) {
            const videoElement = document.getElementById('videoElement');
            const flvPlayer = flvjs.createPlayer({
                type: 'flv',
                url: 'http://localhost:8000/live/stream.flv'
            });
            flvPlayer.attachMediaElement(videoElement);
            flvPlayer.load();
            flvPlayer.play();
        }
    </script>
</body>
</html>

网友回复

我知道答案,我要回答