NGINX RTMP module
118 — 所有核心与模块指令——语法、默认值、上下文与真实配置示例。
access_log
NGINX RTMP 模块中的 `access_log` 指令启用对访问请求的日志记录到指定的日志文件,从而便于运维监控和调试。
ack_window
'ack_window' 指令定义了 RTMP 流会话的软件确认窗口大小。
allow
NGINX RTMP 模块中的 'allow' 指令通过允许特定 IP 地址来限制流媒体访问。
application
NGINX RTMP 模块中的 'application' 指令定义了一个用于处理媒体流的流应用上下文。
buffer
`buffer` 指令控制 NGINX RTMP 模块中用于 DASH 流的内部缓冲区大小。
buflen
'buflen' 指令指定 NGINX RTMP 模块中 RTMP 流的缓冲区长度。
busy
NGINX RTMP 模块中的 'busy' 指令控制在高负载期间对同时连接的处理。
chunk_size
`chunk_size` 指令指定用于流式传输的 RTMP 分块大小。
dash
'dash' 指令在 NGINX RTMP 应用中启用对 MPEG-DASH 的支持。
dash_cleanup
dash_cleanup 指令在播放完成后启用对旧的 MPEG-DASH 片段的清理。
dash_fragment
`dash_fragment` 指令为流媒体应用设置每个 DASH 片段的长度(以毫秒为单位)。
dash_nested
'dash_nested' 指令启用或禁用用于流媒体应用的嵌套 DASH 打包。
dash_path
'dash_path' 指令定义了 DASH 流式传输文件的存储路径。
dash_playlist_length
指令 `dash_playlist_length` 定义了 DASH 播放列表的最大时长,单位为毫秒。
deny
NGINX RTMP 模块中的 `deny` 指令根据客户端 IP 地址限制发布流的访问。
drop_idle_publisher
指令 `drop_idle_publisher` 允许 NGINX 在指定的超时时间后断开空闲发布者与 RTMP 服务器的连接。
exec
NGINX RTMP 模块中的 `exec` 指令允许在发生某些流媒体事件时执行外部命令或脚本。
exec_block
`exec_block` 指令允许在特定的 RTMP 事件发生时执行外部命令。
exec_kill_signal
exec_kill_signal 指令允许在 NGINX RTMP module 中配置在终止流时发送给进程的信号。
exec_options
NGINX RTMP 模块中的 exec_options 指令指定用于直播和录制事件的执行选项。
exec_play
NGINX RTMP 模块中的 exec_play 指令允许在流播放时执行外部程序。
exec_play_done
在 RTMP 应用中回放完成时执行指定的外部命令/脚本。
exec_publish
NGINX RTMP 模块中的 exec_publish 指令允许在流发布时执行外部命令。
exec_publish_done
exec_publish_done 指令允许在 NGINX RTMP 模块成功发布流之后执行指定的命令。
exec_pull
exec_pull 指令允许在特定 RTMP 事件触发时集成外部脚本或命令。
exec_push
NGINX RTMP 模块中的 exec_push 指令允许在某些流事件发生时执行外部命令。
exec_record_done
exec_record_done 指令在 NGINX RTMP 模块中指定在录制会话完成时要执行的命令。
exec_static
exec_static 指令允许 NGINX RTMP 模块在特定流媒体事件发生时执行外部程序。
hls
在 NGINX RTMP 模块中启用对 MPEG-DASH 实时流媒体的支持。
hls_audio_buffer_size
在 NGINX RTMP 模块中为实时音频流设置音频缓冲区大小。
hls_base_url
`hls_base_url` 指令设置由 NGINX RTMP 模块生成的 HLS (HTTP Live Streaming) 分段的基础 URL。
hls_cleanup
hls_cleanup 指令控制在回放结束后是否自动清理 HLS 片段。
hls_continuous
指令 `hls_continuous` 用于在 NGINX RTMP 模块中启用或禁用连续的 HLS 流式传输。
hls_fragment
为流媒体应用设置每个 HLS 片段的持续时间(以毫秒为单位)。
hls_fragment_naming
设置由 NGINX RTMP 模块生成的 HLS 片段文件的命名方案。
hls_fragment_naming_granularity
`hls_fragment_naming_granularity` 指令指定 NGINX RTMP 模块中 HLS 片段的命名粒度。
hls_fragment_slicing
在 NGINX RTMP 模块中,hls_fragment_slicing 指令可对 HLS 片段进行切片,以优化流媒体性能。
hls_fragments_per_key
指令 `hls_fragments_per_key` 指定为每个加密密钥生成的 HLS 片段数量。
hls_key_path
'hls_key_path' 指令指定用于 HLS 流媒体加密密钥的路径。
hls_key_url
`hls_key_url` 指令指定用于检索 HLS 流的加密密钥的 URL。
hls_keys
`hls_keys` 指令将 HLS 播放列表配置为使用特定密钥来加密媒体分段。
hls_max_audio_delay
指令 `hls_max_audio_delay` 在使用 NGINX RTMP 模块进行 HLS 内容流式传输时设置允许的最大音频延迟。
hls_max_fragment
`hls_max_fragment` 指令设置每个 HLS 片段的最大持续时间,单位为毫秒。
hls_muxdelay
`hls_muxdelay` 指令控制在流式传输时生成新 HLS 段之前的最大等待时间。
hls_nested
'hls_nested' 指令用于在 NGINX RTMP 模块中启用或禁用 HLS 嵌套播放列表功能。
hls_path
'hls_path' 指令指定由 NGINX RTMP module 生成的 HLS segments 和 playlists 的文件路径。
hls_playlist_length
为 RTMP 模块中的流媒体应用设置 HLS 播放列表的最大长度。
hls_sync
`hls_sync` 指令在 NGINX RTMP 模块中配置 HLS 输出流的同步设置。
hls_type
'hls_type' 指令在 NGINX RTMP 模块中指定 HLS (HTTP Live Streaming) 的分片类型,用于决定媒体分片的打包方式。
hls_variant
`hls_variant` 指令用于在 NGINX RTMP 模块中为 HLS (HTTP Live Streaming) 指定变体流。
idle_streams
NGINX RTMP 模块中的 'idle_streams' 指令会在自动关闭流之前维持流的不活动状态一段指定的时间。
interleave
对于支持该功能的客户端,`interleave` 指令可启用交错的 RTMP 流,从而优化带宽使用。
listen
NGINX RTMP 模块中的 'listen' 指令配置 RTMP 流媒体的监听地址和端口。
live
'live' 指令在 NGINX RTMP 模块中为特定应用启用直播功能。
log_format
NGINX RTMP 模块中的 `log_format` 指令定义了用于记录 RTMP 流事件的格式。
max_connections
指令 `max_connections` 限制对 RTMP 应用的最大同时连接数。
max_message
`max_message` 指令限制 NGINX RTMP 模块中消息的最大大小。
max_streams
'max_streams' 指令限制 NGINX RTMP 模块中 RTMP 应用可处理的并发流最大数量。
meta
NGINX RTMP 模块中的 'meta' 指令可以向多媒体流添加元数据。
netcall_buffer
netcall_buffer 指令指定用于 NGINX RTMP 模块的 netcall 通信的缓冲区大小,从而优化音视频流媒体传输。
netcall_timeout
netcall_timeout 指令在 NGINX RTMP 模块中设置等待网络调用的最长时间。
notify_method
`notify_method` 指令在 NGINX RTMP 模块中配置用于通知的回调方法。
notify_relay_redirect
`notify_relay_redirect` 指令为 NGINX RTMP 模块中与流重定向相关的所有通知指定新的目标。
notify_update_strict
NGINX RTMP 模块中的 `notify_update_strict` 指令在更新期间确保严格遵守流通知协议。
notify_update_timeout
指定在 NGINX RTMP module 中向客户端通知更新的超时时间。
on_connect
NGINX RTMP 模块中的 'on_connect' 指令允许指定在客户端连接到流媒体服务器时要执行的回调函数。
on_disconnect
`on_disconnect` 指令允许指定在客户端从 RTMP 流断开连接时要执行的操作。
on_done
NGINX RTMP 模块中的 'on_done' 指令用于指定在直播流发布完成后执行的回调函数。
on_play
NGINX RTMP 模块中的 `on_play` 指令定义了在流被播放时调用的回调函数。
on_play_done
`on_play_done` 指令指定在播放结束时由 NGINX RTMP 模块调用的自定义 HTTP 回调端点。
on_publish
NGINX RTMP 模块中的 `on_publish` 指令允许您指定一个在流发布时触发的回调函数。
on_publish_done
`on_publish_done` 指令允许您指定一个回调函数,当发布操作在 NGINX RTMP 模块中完成时触发。
on_record_done
`on_record_done` 指令允许您指定在流录制完成时执行的回调函数。
on_update
'on_update' 指令允许定义一个回调 URL,当流更新发生时触发该回调。
out_cork
'out_cork' 指令控制 NGINX RTMP 模块中 RTMP 流的输出缓冲。
out_queue
NGINX RTMP 模块中的 `out_queue` 指令控制可以排队用于输出流的最大帧数。
ping
NGINX RTMP 模块中的 'ping' 指令用于通过向已连接的客户端定期发送信号来监控 RTMP 流媒体服务器的健康状态。
ping_timeout
`ping_timeout` 指令定义了在 NGINX RTMP 模块中检测非活动客户端连接的超时时间。
play
NGINX RTMP 模块中的 `play` 指令用于启用音频和视频流的播放。
play_local_path
'play_local_path' 指令指定 NGINX RTMP 模块中用于媒体播放的本地文件系统路径。
play_restart
play_restart 指令允许在流媒体播放过程中满足某些条件时,使观众的视频播放从头重新开始。
play_temp_path
NGINX RTMP 模块中的 `play_temp_path` 指令指定了播放过程中媒体文件的临时存储路径。
play_time_fix
The `play_time_fix` 指令调整 NGINX RTMP 模块中的播放时长,以确保更流畅的流媒体播放。
publish_notify
`publish_notify` 指令用于配置在 RTMP 上下文中当有新流发布时发送的通知。
publish_time_fix
`publish_time_fix` 指令调整 RTMP 流的发布时间戳。
pull
\"pull\" 指令允许 NGINX 从指定的 RTMP 源拉取流。
pull_reconnect
pull_reconnect 指令用于指定在 NGINX RTMP 模块拉取流时是否启用连接重试。
push
NGINX RTMP 模块中的 `push` 指令用于将流从 RTMP 服务器推送到指定的目标 URL。
push_reconnect
push_reconnect 指令在 NGINX RTMP 模块中配置直播推流客户端的自动重新连接行为。
record
NGINX RTMP 模块中的 `record` 指令用于将直播流录制下来以便存储或稍后回放。
record_append
在 NGINX RTMP 模块中,`record_append` 指令用于控制是否将新内容追加到现有的已录制流文件中。
record_interval
在 NGINX RTMP module 中,'record_interval' 指令指定创建流录制片段的间隔。
record_lock
record_lock 指令在 NGINX RTMP 模块中控制录制流的文件访问,确保在流录制期间具有独占写入权限。
record_max_frames
在 NGINX RTMP 模块中,`record_max_frames` 指令限制了直播流录制的最大帧数。
record_max_size
在 NGINX RTMP 模块中设置录制 RTMP 流的最大文件大小。
record_notify
'record_notify' 指令启用服务器对流录制事件的通知。
record_path
在使用 NGINX RTMP 模块时,'record_path' 指令指定保存录制流的目录路径。
record_suffix
`record_suffix` 指令在 NGINX RTMP 模块中指定一个后缀,用于根据当前时间戳追加到录制的视频文件上。
record_unique
NGINX RTMP 模块中的 'record_unique' 指令会在录制的流文件名中追加唯一的时间戳,从而防止被覆盖。
recorder
NGINX RTMP 模块中的 'recorder' 指令用于配置用于录制直播流的块。
relay_buffer
relay_buffer 指令指定 NGINX RTMP 模块中用于流式视频数据的缓冲区大小。
respawn
The 'respawn' directive in NGINX is used to automatically restart streaming…
respawn_timeout
NGINX RTMP 模块中的 'respawn_timeout' 指令用于配置在流失败后在尝试 respawn 该流之前应等待的时间长度。
rtmp
'rtmp' 指令在 NGINX 中启用 RTMP (Real-Time Messaging Protocol) 服务器配置,用于直播流。
main
rtmp_auto_push
指令 `rtmp_auto_push` 启用跨多个 NGINX 工作进程的自动流推送,以便实现多工作进程的实时直播。
main
rtmp_auto_push_reconnect
当连接中断时,'rtmp_auto_push_reconnect' 指令启用对 RTMP 推流的自动重连尝试。
main
rtmp_control
rtmp_control 指令用于在 NGINX 的 RTMP 模块中配置 RTMP 流的控制设置。
httpserverlocation
rtmp_socket_dir
`rtmp_socket_dir` 指令指定用于存储由 NGINX RTMP 模块使用的 RTMP 套接字文件的目录。
main
rtmp_stat
'rtmp_stat' 指令在响应 Web 请求时生成 RTMP 流媒体统计信息。
httpserverlocation
rtmp_stat_stylesheet
指令 `rtmp_stat_stylesheet` 设置用于美化 RTMP 服务器统计输出的 XML 样式表的 URL。
httpserverlocation
server
NGINX RTMP 模块中的 'server' 指令定义了一个用于处理 RTMP 协议流媒体配置的 server 块。
session_relay
'session_relay' 指令用于在 NGINX RTMP 模块中为 RTMP 流启用会话中继。
so_keepalive
指令 `so_keepalive` 用于为 RTMP 连接启用或禁用 TCP keepalive 功能。
stream_buckets
`stream_buckets` 指令用于配置 NGINX RTMP 模块中流缓冲使用的桶数量。
sync
'sync' 指令控制 DASH 流应用中片段时间戳的同步。
timeout
NGINX RTMP 模块中的 `timeout` 指令定义了在因闲置而关闭流会话之前等待的最长持续时间。
wait_key
在 NGINX RTMP 模块中,wait_key 指令用于指定客户端在开始流媒体传输前建立连接的等待时间。
wait_video
NGINX RTMP 模块中的 `wait_video` 指令控制客户端在访问视频流前必须等待的时长。