FFMPEG & MistServer: RTMP Input/Output 错误
FFMPEG & MistServer: RTMP Input/Output error
我有一个 IP 摄像机,它输出一个 RTSP 流,我正试图用它在我的网站上显示实时源。这是一个只有我妻子和我会访问的小网站,所以我正在尝试使用免费的流媒体服务。出于这个原因,我决定尝试 MistServer 的开源选项。
我目前已经下载了 MistServer 并在 mac (sudo ./MistController
) 上安装 运行。使用 MistServer 运行,我设置了流并配置了默认协议。流配置如下:
stream name: ipcam
source: push://
配置页面为我提供了以下要推送到的源:
RTMP full url: rtmp://127.0.0.1/live/ipcam
RTMP url: rtmp://127.0.0.1/live/
RTMP stream key: ipcam
在流视图中,流的状态不可用,但我假设这是因为它没有接收到输入。我无法通过文档确认这一点。
这是我使用的 FFMPEG 命令 运行 和我遇到的错误:
ffmpeg -rtsp_transport tcp -i rtsp://<user>:@<camera_ip>:554/live0.264 -acodec copy -vcodec copy -f flv rtmp://127.0.0.1/live/ipcam
ffmpeg version 3.3.3 Copyright (c) 2000-2017 the FFmpeg developers
built with Apple LLVM version 8.1.0 (clang-802.0.42)
configuration: --prefix=/usr/local/Cellar/ffmpeg/3.3.3 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-vda
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
Guessed Channel Layout for Input Stream #0.1 : mono
Input #0, rtsp, from 'rtsp://<user>:@<camera_ip>:554/live0.264':
Metadata:
title : Session Streamed by LIBZRTSP
comment : live0.264
Duration: N/A, start: 0.242000, bitrate: N/A
Stream #0:0: Video: h264 (Main), yuv420p(progressive), 1280x720, 25 fps, 24.83 tbr, 90k tbn, 50 tbc
Stream #0:1: Audio: pcm_mulaw, 8000 Hz, mono, s16, 64 kb/s
rtmp://127.0.0.1/live/ipcam: Input/output error
我无法从此错误确定问题是出在 FFMPEG 命令还是我的 MistServer 配置上。
我联系了 MistServer,他们推荐 运行 非 osx 机器上的服务器。所以我在我的 raspberry pi 上设置了所有内容,流现在可以使用上述命令为我工作。我想 OS X 没有定期测试,所以它不太稳定。
我与 MistServer 团队进行了更多通信,他们的电子邮件支持非常棒。特别是因为我使用的是他们的开源版本。
我有一个 IP 摄像机,它输出一个 RTSP 流,我正试图用它在我的网站上显示实时源。这是一个只有我妻子和我会访问的小网站,所以我正在尝试使用免费的流媒体服务。出于这个原因,我决定尝试 MistServer 的开源选项。
我目前已经下载了 MistServer 并在 mac (sudo ./MistController
) 上安装 运行。使用 MistServer 运行,我设置了流并配置了默认协议。流配置如下:
stream name: ipcam
source: push://
配置页面为我提供了以下要推送到的源:
RTMP full url: rtmp://127.0.0.1/live/ipcam
RTMP url: rtmp://127.0.0.1/live/
RTMP stream key: ipcam
在流视图中,流的状态不可用,但我假设这是因为它没有接收到输入。我无法通过文档确认这一点。
这是我使用的 FFMPEG 命令 运行 和我遇到的错误:
ffmpeg -rtsp_transport tcp -i rtsp://<user>:@<camera_ip>:554/live0.264 -acodec copy -vcodec copy -f flv rtmp://127.0.0.1/live/ipcam
ffmpeg version 3.3.3 Copyright (c) 2000-2017 the FFmpeg developers
built with Apple LLVM version 8.1.0 (clang-802.0.42)
configuration: --prefix=/usr/local/Cellar/ffmpeg/3.3.3 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-vda
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
Guessed Channel Layout for Input Stream #0.1 : mono
Input #0, rtsp, from 'rtsp://<user>:@<camera_ip>:554/live0.264':
Metadata:
title : Session Streamed by LIBZRTSP
comment : live0.264
Duration: N/A, start: 0.242000, bitrate: N/A
Stream #0:0: Video: h264 (Main), yuv420p(progressive), 1280x720, 25 fps, 24.83 tbr, 90k tbn, 50 tbc
Stream #0:1: Audio: pcm_mulaw, 8000 Hz, mono, s16, 64 kb/s
rtmp://127.0.0.1/live/ipcam: Input/output error
我无法从此错误确定问题是出在 FFMPEG 命令还是我的 MistServer 配置上。
我联系了 MistServer,他们推荐 运行 非 osx 机器上的服务器。所以我在我的 raspberry pi 上设置了所有内容,流现在可以使用上述命令为我工作。我想 OS X 没有定期测试,所以它不太稳定。
我与 MistServer 团队进行了更多通信,他们的电子邮件支持非常棒。特别是因为我使用的是他们的开源版本。