问题标签 [obs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2816 浏览

c - 如何使用 LUA 脚本发送击键?

如何使用 .lua 脚本发送击键?即触发F7按键(或任何键)。

我的特定环境是 Windows 64 位并在 OBS Studio 中运行 lua 脚本(但我猜环境并不重要)。

0 投票
0 回答
198 浏览

c++ - 从 OBS dshow 过滤器捕获

我是一名 C++ 开发人员,致力于开发第 3 方 Windows 软件。我的软件来自网络摄像头、采集卡和外部应用程序 (vmix)。我们的一些客户不想再为 vmix 许可证付费,而是希望在我们的软件中使用 OBS(作为摄像头)而不是 vmix。

我正在努力制作一个从 OBS dshow 源过滤器捕获音频和视频帧的代码。我只是没有框架。是否有任何可用的 c++ 示例代码显示 3rd 方应用程序如何以与 vmix 相同的方式从 OBS 捕获?

只是补充......问题是当尝试使用directshow api(样本采集器过滤器)从dshow音频过滤器捕获音频样本时不会出现。方法:

STDMETHODIMP CapDShowBase::SampleCB( double sampleTime, IMediaSample * pSample)

永远不会使用音频样本调用。视频样本正常出现。我已经尝试了几乎所有...

我认为 OBS dshow 音频过滤器实现中存在错误。

链接到 OBS 论坛主题: https ://obsproject.com/forum/threads/capture-from-obs-dshow-filters.114452/

非常感谢,丹尼尔

0 投票
1 回答
248 浏览

azure-media-services - azure 媒体服务直播中的 Stream Key

我在 azure 媒体服务中创建了频道和节目。两者都在运行,我有摄取 URL。但是 OBS Studio 要求我提供“流密钥”。我尝试按照“ https://medium.com/@dsayed/live-streaming-with-microsoft-azure-eb6408d31ed ”中的建议提供“默认” ,但它不起作用。如果我遗漏任何内容或如何在 azure 中获取流密钥,请告诉我。

问候, 纳瓦尼思

0 投票
1 回答
1181 浏览

c# - 使用 JSON 数据向 websocket 服务器发送请求

0 投票
1 回答
9616 浏览

nginx - 如何使用 FFmpeg 和 NGINX RTMP 进行流式传输

我正在尝试从我的 Windows PC 上的 OBS(开放广播软件)流式传输到同样安装在同一台 PC 上的 NGINX+RTMP。我在 OBS 中设置了 20,000Kbps 的比特率,这将是我打算在 NGINX 中设置的多个流的基础比特率。

我希望能够流式传输到 NGINX,然后即时使用 FFmpeg 对流进行转码,以符合我打算广播到的流媒体站点,例如 Twitch.tv。

如果我使用网络路径 rtmp://localhost/live/test,我可以通过 VLC 查看我的流。但是,当我在 Twitch 的检查员网站上查看我的直播是否结束时,我什么也没有收到。我不知道我的 FFmpeg 是否正常工作,或者下面的 NGINX 配置有问题。

如果有人可以阐明我可能会出错的地方,那将不胜感激。

nginx.conf

非常感谢

更新 1

为简单起见,我在同一台物理计算机(Windows PC)上测试 OBS、NGINX 和 FFmpeg。一旦一切正常,我会将 NGINX 和 FFmpeg 移植到我的 Linux PC。

我正在使用带有 RTMP 模块的 NGINX 的预编译版本。我还下载了最新的 FFmpeg 库,我在 Windows 中设置了路径环境变量,以便可以在 CommandPrompt/PowerShell 中调用 FFmpeg 命令。

这是我要走的路:-

OBS 以 20,000Kbps 的速度对 x264 进行编码,它的目标是 NGINX 中称为“实时”的 RTMP 应用程序。从这里我想将来自 OBS 的一个流编码成几个更小的带宽流,以便我可以满足流媒体服务的要求,例如 Twitch 和 Mixer。

在 FFmpeg 参数结束时,我是直接将输出推送到 Twitch 还是将 FFmpeg 的输出发送回 NGINX 上的第二个 RTMP 应用程序,然后再推送到 Twitch?

在转到外部流服务之前将 FFmpeg 的输出推回 NGINX 的一个优点是,我可以通过支持 RTMP 的播放器(例如 VLC)打开 FFmpeg 转码流,从而允许我查看压缩输出。

我的另一个问题是,FFmpeg 参数可以放在单独的行中还是必须全部放在一行中?

这是一个非常好的网站,我一直在回顾

https://blog.twitch.tv/en/2017/10/10/live-video-transmuxing-transcoding-f-fmpeg-vs-twitch-transcoder-part-i-489c1c125f28/

0 投票
1 回答
682 浏览

python - OBS Studio 如何以编程方式设置选项

为 OBS Studio 编写插件,我一直在尝试使用 luaobs 或 obspython 设置录制文件名/路径

我将如何以编程方式设置这些设置?

0 投票
0 回答
1487 浏览

streaming - 使用 OBS 和 ffmpeg 串流多个 RTMP IP 摄像机

我在运行 CentOS 7 的 VPS 上使用 Nginx 和 RMTP 模块创建了一个流媒体服务器。我正在尝试使用 OBS 流式传输多个 IP 摄像机来广播流。我的问题是如何使用 nginx.conf 文件中的不同应用程序为每个摄像头创建多个 m3u8 流文件。我尝试使用多个 OBS 实例来实现这一点,但我的 CPU 能力已经耗尽。我发现通过使用 ffmpeg 可以流式传输多个流,但我不知道确切的命令。每台摄像机用于广播的比特率约为 512Kbps-1024Kbps。我的 nginx.conf 如下:

使用 2 个具有不同流名称的 OBS 实例,我能够同时流式传输 2 个摄像头,但我想流式传输 50 多个摄像头,而使用这种方法是不可能的。我认为这可以用ffmpeg完成。RTSP 流的格式是 rtsp://username:password@hostname:port 但我需要一些命令帮助。任何帮助,将不胜感激。提前致谢。

0 投票
0 回答
25 浏览

.net - windows 多显示器系统,将 .net 屏幕映射到 DirectX 显示器 #

我将描述需求:

出于报告错误的目的,我们在应用程序中包含了一种用于屏幕视频捕获的方法。

为此,我们使用了一个名为OBS studio的开源库。

在多显示器设置中(几乎 100% 的客户群),我们需要告诉 OBS 要捕获哪个显示器。OBS 使用 DirectX,它可以索引监视器,从 0 开始编号。

我们的应用程序是一个 .net 应用程序。看起来相关的 2 个 API 调用是:

这些静态调用返回一个 Screen 对象或一组屏幕对象(.NET 文档)。

现在的问题:

  • 如何找到我的应用程序主窗口的 DirectX 监视器编号(给定 .net“屏幕”),以便我可以要求 OBS 记录它?
  • 换句话说,如何从 .NET 映射 AllScreens 数组以监控 DirectX 理解的索引?

和平。

0 投票
1 回答
1207 浏览

nginx - 如何使用 ffmpeg/OBS 生成 HTTP/rtmp 输出(URL)并使用该 URL 在媒体播放设备上播放?

我尝试使用 ffmpeg -i inputsource http://IP/live甚至尝试通过推送 rtmp://IP 来修改我的 nginx 文件夹中的 win.conf 文件,但是当我在媒体播放设备中使用 http 或 rtmp URL 时,我不断得到错误。

0 投票
1 回答
1190 浏览

ubuntu - NGINX 流式 RTMP:没有接受的连接,没有错误

我正在尝试通过 RTMP 从 OBS 工作室将视频流发送到 VPS 上的 nginx 服务器 问题:nginx 似乎不接受 URL 上的输入,OBS 在发送时超时

我已按照本教程确保 nginx 拥有所需的一切:https ://www.vultr.com/docs/setup-nginx-rtmp-on-ubuntu-14-04#Configuring_Software_to_Work_with_Nginx_RTMP

我在运行默认配置文件的 VCS(Ubuntu)上安装了 nginx 1.17.9,并添加了以下 RTMP:

我已经尝试让 OBS 流到其中一个 rtmp://IP:1935/hlslivertmp://IP:1935/live- 我收到一条错误消息,指出尝试超时。我可以访问http://IP/就好了。我可以测试配置文件并且它通过了。有关如何排除故障的任何建议?

UFW 状态被禁用,OBS 可以流式传输到其他服务器。