PS2 / PSP模拟器+游戏播放流(YouTube,Facebook,Twitch)=新版本的Omega Red

各位读者好!

我将继续介绍适用于PlayStation 2和PlayStation Portable-Omega Red的软件仿真器的主题。 更多详细信息:


我写这本书是与我添加到项目中的新功能有关的-从仿真器到著名的流Internet服务的实时视频和音频游戏过程的流广播。
欢迎来到吉。


首先,我要注意以下几点-集成对Internet广播的支持的想法来自我的另一个项目-CaptureManager SDK 。 我尝试通过网络摄像头进行广播,并获得了可行的代码。 而“想法”的想法-将此代码嵌入到游戏机模拟器中!

该任务在以下几个方面很有趣:捕获视频和音频。 从摄像机捕获非常简单,但是从仿真器的渲染器捕获视频该怎么办! 您可以找到捕获整个桌面的代码-太简单了。 如果直接从图形渲染器捕获图形,该怎么办! 与音频捕获类似的想法-通常是从系统混音器执行音频捕获,这是将音频流复制到扬声器。 而且,如果您在系统混音器之前直接从音频渲染器捕获音频,该怎么办!

有趣! 原创!

实现方式:在DirectX 11渲染器和DirectSound渲染器中添加了捕获代码。 渲染图形的结果通过DirectX 11视频纹理直接传输到H264视频编码器-这使您可以在图形加速器上使用硬件加速的视频编码。 音频流被路由到Windows内置的AAC音频编码器。

捕获控件包括两个部分:

  • 设置用于直播视频的流媒体Internet服务的编码和选择;
  • 混合器设置-将实时视频与其他来源(网络摄像头,JPG / PNG / GIF(动画)文件)混合。

编码设置:


流设置首先从选择捕获模式-“流”开始。 在此模式下,您可以根据可用的Internet连接速度调整视频和音频流的数据速率。 另外,您可以选择流媒体服务或检索流媒体服务器的MANUAL全地址,例如,基于MonaServer的 OWN OWN服务器。 重要的是要注意,不仅支持开放连接,而且还支持安全连接(SSL)! 流媒体服务Facebook(是的,有一个)发布了以下公告:

“从2019年11月1日起,我们将停止支持RTMP服务器URL。 此后,不受保护的URL不能用于视频广播。 更新视频编码设备的设置并使用安全的RTMPS URL,“我认为RTMPS支持是有希望的,并花了一些时间”将“ OpenSSL”连接到RTMP库。 和代码工作! Facebook通过安全连接获取信息流!

流通过按“记录/流”按钮开始:


录制/流媒体开始后,混音器设置变为可用:



在“媒体”面板上,“媒体源”选项卡变为可用-此选项卡包括可用于混合的视频和音频流的源。 除了网络摄像头和麦克风之外,您还可以添加JPG / PNG / GIF(动画)文件。

对于麦克风,您可以控制混合音频流的比例。 通过单击检查按钮选择麦克风,并通过滑块执行混音控制。


对于视频源,您可以控制视频流的混合。 通过单击复选按钮选择摄像机,然后通过下拉菜单选择摄像机的图像尺寸。



可以通过单独的滑块控制混合的透明度(或非透明性)。


混合视频流的位置和大小可以在流期间随时更改:


流演示:





目前,该程序可从以下网址获得: Omega Red,并在GitHub上提供: OmegaRed

PS流上的视频质量是无花果-我有ADSL Internet-YouTube上的稳定流只有在高达256 Kbit的视频流速度下-您不需要在屏幕上吐痰-这无济于事。

Source: https://habr.com/ru/post/zh-CN456842/


All Articles