节点媒体服务器:强制 480p 视频流
Node Media Server: Force 480p on Video Streaming
我正在使用 Node Media Server 包开发一个用 node.js 编写的直播应用程序。效果很好!问题是,我们可以强制视频流式传输或播放(录制)为 480p 吗?
我的假设,在下面的配置中我们可以看到:
const config = {
rtmp: {
...
},
http: {
...
},
trans: {
ffmpeg: "/usr/local/bin/ffmpeg",
tasks: [
{
app: 'live',
vc: "copy",
vcParam: [],
ac: "aac",
acParam: ['-ab', '64k', '-ac', '1', '-ar', '44100'],
rtmp: true,
rtmpApp: 'live-ac',
hls: true,
hlsFlags: '[hls_time=2:hls_list_size=3:hls_flags=delete_segments]',
mp4: true,
mp4Flags: '[movflags=faststart]',
}
]
}
};
同时 acParam
收到了一些编解码器和比特率的参数。 vcParam
也应该带参数来控制视频的编码。
我试图寻找一些关于转码和某种配置的相关文章。我发现一些使用 nginx 但这不符合我对 node.js
的要求
同样,我们可以强制视频流式传输或播放(录制)为 480p 吗?提前致谢!
您使用了 vc 副本。这意味着它将始终使用视频的原始编解码器而不是对其进行转码。
您可以尝试添加:
vcParams: [
'-vf',
"'scale=854:-1'",
'-b:v',
'1400k',
'-preset',
'fast',
'-profile:v',
'baseline',
'-bufsize',
'2100k',
'-tune',
'zerolatency',
],
我正在使用 Node Media Server 包开发一个用 node.js 编写的直播应用程序。效果很好!问题是,我们可以强制视频流式传输或播放(录制)为 480p 吗?
我的假设,在下面的配置中我们可以看到:
const config = {
rtmp: {
...
},
http: {
...
},
trans: {
ffmpeg: "/usr/local/bin/ffmpeg",
tasks: [
{
app: 'live',
vc: "copy",
vcParam: [],
ac: "aac",
acParam: ['-ab', '64k', '-ac', '1', '-ar', '44100'],
rtmp: true,
rtmpApp: 'live-ac',
hls: true,
hlsFlags: '[hls_time=2:hls_list_size=3:hls_flags=delete_segments]',
mp4: true,
mp4Flags: '[movflags=faststart]',
}
]
}
};
同时 acParam
收到了一些编解码器和比特率的参数。 vcParam
也应该带参数来控制视频的编码。
我试图寻找一些关于转码和某种配置的相关文章。我发现一些使用 nginx 但这不符合我对 node.js
的要求同样,我们可以强制视频流式传输或播放(录制)为 480p 吗?提前致谢!
您使用了 vc 副本。这意味着它将始终使用视频的原始编解码器而不是对其进行转码。
您可以尝试添加:
vcParams: [
'-vf',
"'scale=854:-1'",
'-b:v',
'1400k',
'-preset',
'fast',
'-profile:v',
'baseline',
'-bufsize',
'2100k',
'-tune',
'zerolatency',
],