nginx 实时自适应比特率流媒体:- 无法手动切换质量?
nginx live adaptive bitrate streaming:- not able to switch quality manuallly?
我正在使用 Nginx 进行实时自适应比特率流传输。我的直播工作正常。
此外,正在创建块,也正在创建主播放列表,如您在此图像中所见。
我的配置
application live {
live on; # Allows live input
exec_push /usr/bin/ffmpeg -i rtmp://localhost:1935/$app/$name
-force_key_frames "expr:gte(t,n_forced*3)" -c:v libx264 -vprofile baseline -vlevel 3.1 -s 640x360 -b:v 1200k -strict -2 -c:a aac -ar 44100 -ac 2 -b:a 96k -f flv rtmp://localhost/show/$name_hi
-force_key_frames "expr:gte(t,n_forced*3)" -c:v libx264 -vprofile baseline -vlevel 3.1 -s 240x360 -b:v 1200k -strict -2 -c:a aac -ar 44100 -ac 2 -b:a 96k -f flv rtmp://localhost/show/$name_low;
}
这是我的主播放列表
这是我每个播放列表的m3u8文件
但是当我将主播放列表指向添加的 videojs (hlsjs) 时,它显示了质量
- 自动
- undefinedp
但是当我使用其他在线测试流时,它会向我显示所有可用质量
使用我使用 nginx ffmpeg 生成的直播流
使用其他直播
您需要将 RESOLUTION
属性添加到 EXT-X-STREAM-INF
标签中的主播放列表。这在 https://www.rfc-editor.org/rfc/rfc8216#section-4.3.4.2 中是可选的,但它是质量选择器 UI 插件所必需的。
参见:https://github.com/chrisboustead/videojs-hls-quality-selector/issues/8
Nginx RTMP 模块配置示例:
hls_variant <variant_name> BANDWIDTH=<bandwidth>,RESOLUTION=<resolution>;
我正在使用 Nginx 进行实时自适应比特率流传输。我的直播工作正常。 此外,正在创建块,也正在创建主播放列表,如您在此图像中所见。
我的配置
application live {
live on; # Allows live input
exec_push /usr/bin/ffmpeg -i rtmp://localhost:1935/$app/$name
-force_key_frames "expr:gte(t,n_forced*3)" -c:v libx264 -vprofile baseline -vlevel 3.1 -s 640x360 -b:v 1200k -strict -2 -c:a aac -ar 44100 -ac 2 -b:a 96k -f flv rtmp://localhost/show/$name_hi
-force_key_frames "expr:gte(t,n_forced*3)" -c:v libx264 -vprofile baseline -vlevel 3.1 -s 240x360 -b:v 1200k -strict -2 -c:a aac -ar 44100 -ac 2 -b:a 96k -f flv rtmp://localhost/show/$name_low;
}
这是我的主播放列表
这是我每个播放列表的m3u8文件
但是当我将主播放列表指向添加的 videojs (hlsjs) 时,它显示了质量
- 自动
- undefinedp
但是当我使用其他在线测试流时,它会向我显示所有可用质量
使用我使用 nginx ffmpeg 生成的直播流
使用其他直播
您需要将 RESOLUTION
属性添加到 EXT-X-STREAM-INF
标签中的主播放列表。这在 https://www.rfc-editor.org/rfc/rfc8216#section-4.3.4.2 中是可选的,但它是质量选择器 UI 插件所必需的。
参见:https://github.com/chrisboustead/videojs-hls-quality-selector/issues/8
Nginx RTMP 模块配置示例:
hls_variant <variant_name> BANDWIDTH=<bandwidth>,RESOLUTION=<resolution>;