Preliminary PS5 Streaming

This commit is contained in:
Florian Märkl 2020-12-16 18:47:50 +01:00
commit aa9939e93c
No known key found for this signature in database
GPG key ID: 125BC8A5A6A1E857
11 changed files with 848 additions and 32 deletions

View file

@ -45,6 +45,7 @@ struct StreamSessionConnectInfo
QString audio_out_device;
uint32_t log_level_mask;
QString log_file;
ChiakiTarget target;
QString host;
QByteArray regist_key;
QByteArray morning;
@ -53,7 +54,7 @@ struct StreamSessionConnectInfo
bool fullscreen;
bool enable_keyboard;
StreamSessionConnectInfo(Settings *settings, QString host, QByteArray regist_key, QByteArray morning, bool fullscreen);
StreamSessionConnectInfo(Settings *settings, ChiakiTarget target, QString host, QByteArray regist_key, QByteArray morning, bool fullscreen);
};
class StreamSession : public QObject

View file

@ -11,7 +11,8 @@ RegisteredHost::RegisteredHost()
}
RegisteredHost::RegisteredHost(const RegisteredHost &o)
: ap_ssid(o.ap_ssid),
: target(o.target),
ap_ssid(o.ap_ssid),
ap_bssid(o.ap_bssid),
ap_key(o.ap_key),
ap_name(o.ap_name),

View file

@ -162,7 +162,8 @@ int real_main(int argc, char *argv[])
return 1;
}
}
StreamSessionConnectInfo connect_info(&settings, host, regist_key, morning, parser.isSet(fullscreen_option));
// TODO: target here
StreamSessionConnectInfo connect_info(&settings, CHIAKI_TARGET_PS4_10, host, regist_key, morning, parser.isSet(fullscreen_option));
return RunStream(app, connect_info);
}
#ifdef CHIAKI_ENABLE_CLI

View file

@ -248,7 +248,7 @@ void MainWindow::ServerItemWidgetTriggered()
}
QString host = server.GetHostAddr();
StreamSessionConnectInfo info(settings, host, server.registered_host.GetRPRegistKey(), server.registered_host.GetRPKey(), false);
StreamSessionConnectInfo info(settings, server.registered_host.GetTarget(), host, server.registered_host.GetRPRegistKey(), server.registered_host.GetRPKey(), false);
new StreamWindow(info);
}
else

View file

@ -14,7 +14,7 @@
#define SETSU_UPDATE_INTERVAL_MS 4
StreamSessionConnectInfo::StreamSessionConnectInfo(Settings *settings, QString host, QByteArray regist_key, QByteArray morning, bool fullscreen)
StreamSessionConnectInfo::StreamSessionConnectInfo(Settings *settings, ChiakiTarget target, QString host, QByteArray regist_key, QByteArray morning, bool fullscreen)
: settings(settings)
{
key_map = settings->GetControllerMappingForDecoding();
@ -24,6 +24,7 @@ StreamSessionConnectInfo::StreamSessionConnectInfo(Settings *settings, QString h
log_level_mask = settings->GetLogLevelMask();
log_file = CreateLogFilename();
video_profile = settings->GetVideoProfile();
this->target = target;
this->host = host;
this->regist_key = regist_key;
this->morning = morning;
@ -86,6 +87,7 @@ StreamSession::StreamSession(const StreamSessionConnectInfo &connect_info, QObje
QByteArray host_str = connect_info.host.toUtf8();
ChiakiConnectInfo chiaki_connect_info;
chiaki_connect_info.ps5 = chiaki_target_is_ps5(connect_info.target);
chiaki_connect_info.host = host_str.constData();
chiaki_connect_info.video_profile = connect_info.video_profile;