
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
$ git clone https://github.com/iizukanao/node-rtsp-rtmp-server.git $ cd node-rtsp-rtmp-server $ npm install -d
Edit config.coffee.
$ cd node-rtsp-rtmp-server $ sudo coffee server.coffee
or use Node.js directly:
$ cd node-rtsp-rtmp-server $ coffee -c . $ sudo node server.js
If both serverPort and rtmpServerPort are above 1023 in config.coffee, you can omit sudo.
If you would prefer building and executing this code in a docker container, you can do so by first building the container and then running it.
$ make build $ make console
You may also want to use just make run to run the container as a daemon. If you fiddle with the ports, you'll need to update the values in the Makefile as well to expose the desired ports to your system.
MP4 files in file directory will be accessible at either:
For example, file/video.mp4 is available at rtmp://localhost/file/mp4:video.mp4
From Flash Media Live Encoder
Flash Media Live Encoder is a free live encoder from Adobe.
In the Encoding Options panel, check "Stream to Flash Media Server" and set the URL to:
Press the "Connect" button. Set the video format to H.264, and the audio format to AAC. Press the "Start" button.
When you watch the stream over RTSP or RTMP, use the stream name specified above.
From FFmpeg
If you have an MP4 file with H.264 video and AAC audio:
$ ffmpeg -re -i input.mp4 -c:v copy -c:a copy -f flv rtmp://localhost/live/STREAM_NAME
Or if you have an MP4 file that is encoded in other audio/video format:
$ ffmpeg -re -i input.mp4 -c:v libx264 -preset fast -c:a libfdk_aac -ab 128k -ar 44100 -f flv rtmp://localhost/live/STREAM_NAME
Replace input.mp4 with live audio/video sources.
From RTSP client
You can publish streams from RTSP client such as FFmpeg.
$ ffmpeg -re -i input.mp4 -c:v libx264 -preset fast -c:a libfdk_aac -ab 128k -ar 44100 -f rtsp rtsp://localhost:80/live/STREAM_NAME
Or you can publish it over TCP instead of UDP, by specifying -rtsp_transport tcp option. TCP is favorable if you publish large data from FFmpeg.
$ ffmpeg -re -i input.mp4 -c:v libx264 -preset fast -c:a libfdk_aac -ab 128k -ar 44100 -f rtsp -rtsp_transport tcp rtsp://localhost:80/live/STREAM_NAME
From GStreamer
For an MP4 file with H.264 video and AAC audio:
$ gst-launch-0.10 filesrc location=input.mp4 ! qtdemux name=demux ! \ flvmux name=mux streamable=true ! queue ! \ rtmpsink location='rtmp://localhost/live/STREAM_NAME' demux. ! \ multiqueue name=mq ! h264parse ! mux. demux. ! mq. mq. ! aacparse ! mux.
Replace input.mp4 with live audio/video sources.
Via RTSP
RTSP stream is for VLC media player or Android's VideoView.
RTSP URL: rtsp://localhost:80/live/STREAM_NAME
Note that the RTSP server runs on port 80 by default.
Via RTMP
RTMP stream is for Flash Player. Flowplayer and JW Player are both good free players.
RTMP URL: rtmp://localhost/live/STREAM_NAME
If you have rtmpdump installed, you can record the video with:
$ rtmpdump -v -r rtmp://localhost/live/STREAM_NAME -o dump.flv
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务