on_record_done
`on_record_done` 指令允许您指定在流录制完成时执行的回调函数。
NGINX RTMP module
语法on_record_done command;
默认值none
上下文
参数1
说明
on_record_done 指令是 NGINX RTMP 模块的一部分,该模块提供直播流和各种媒体处理操作的能力。当您在服务器配置中启用此指令时,它需要一个参数,该参数指定在流录制完成后要执行的命令或脚本。这在需要在流录制结束后执行后处理任务(例如转码、归档或发送通知)的场景中特别有用。
on_record_done 传入的参数必须是 NGINX 可访问的有效可执行命令或脚本,该命令将以与直播流相同的上下文执行。请确保该命令在 NGINX 建立的权限和环境中能够正确运行,不当的配置可能导致命令执行失败。该功能通过集成外部处理工具增强了对已录制流的管理灵活性,允许在媒体处理流程中实现工作流自动化。
要使用 on_record_done 指令,应将其放在管理流的适当上下文中,例如处理 RTMP 流的 application 块内。该指令将针对该上下文中发生的任何已完成录制执行操作,帮助管理员高效地管理录制内容。
配置示例
application live {
live on;
record all;
record_path /tmp/recordings;
on_record_done /usr/local/bin/post_process_script.sh;
}⚠
确保所指定的命令具有正确的权限和环境以正常执行。
⚠
如果该命令有依赖(例如脚本或可执行文件),请确认这些依赖对 NGINX 用户可访问。
⚠
在未对输出进行适当处理的情况下使用复杂命令,可能导致意外结果或失败。注意可能影响脚本执行的输出缓冲问题。