diff --git a/dll/dll/steam_video.h b/dll/dll/steam_video.h index 49db2a77..39785a8e 100644 --- a/dll/dll/steam_video.h +++ b/dll/dll/steam_video.h @@ -21,7 +21,8 @@ #include "base.h" class Steam_Video : -public ISteamVideo +public ISteamVideo, +public ISteamVideo001 { public: diff --git a/dll/flat.cpp b/dll/flat.cpp index 8e9ece76..77032e2f 100644 --- a/dll/flat.cpp +++ b/dll/flat.cpp @@ -5413,6 +5413,11 @@ STEAMAPI_API steam_bool SteamAPI_ISteamInventory_InspectItem( ISteamInventory* s return (ptr)->InspectItem(pResultHandle, pchItemToken); } +STEAMAPI_API ISteamVideo *SteamAPI_SteamVideo_v001() +{ + return get_steam_client()->GetISteamVideo(flat_hsteamuser(), flat_hsteampipe(), "STEAMVIDEO_INTERFACE_V001"); +} + STEAMAPI_API ISteamVideo *SteamAPI_SteamVideo_v002() { return get_steam_client()->GetISteamVideo(flat_hsteamuser(), flat_hsteampipe(), "STEAMVIDEO_INTERFACE_V002"); diff --git a/dll/steam_client_interface_getter.cpp b/dll/steam_client_interface_getter.cpp index df4b8cd4..1190e286 100644 --- a/dll/steam_client_interface_getter.cpp +++ b/dll/steam_client_interface_getter.cpp @@ -782,7 +782,10 @@ ISteamVideo *Steam_Client::GetISteamVideo( HSteamUser hSteamuser, HSteamPipe hSt PRINT_DEBUG("%s", pchVersion); if (!steam_pipes.count(hSteamPipe) || !hSteamuser) return NULL; - if (strcmp(pchVersion, STEAMVIDEO_INTERFACE_VERSION) == 0) { + if (strcmp(pchVersion, "STEAMVIDEO_INTERFACE_V00") == 0) { + return reinterpret_cast(static_cast(steam_video)); + } + else if (strcmp(pchVersion, STEAMVIDEO_INTERFACE_VERSION) == 0) { return reinterpret_cast(static_cast(steam_video)); } diff --git a/sdk/steam/isteamvideo001.h b/sdk/steam/isteamvideo001.h new file mode 100644 index 00000000..03a92d6f --- /dev/null +++ b/sdk/steam/isteamvideo001.h @@ -0,0 +1,18 @@ +#ifndef ISTEAMVIDEO001_H +#define ISTEAMVIDEO001_H +#ifdef _WIN32 +#pragma once +#endif + +class ISteamVideo001 +{ +public: + + // Get a URL suitable for streaming the given Video app ID's video + virtual void GetVideoURL( AppId_t unVideoAppID ) = 0; + + // returns true if user is uploading a live broadcast + virtual bool IsBroadcasting( int *pnNumViewers ) = 0; +}; + +#endif // ISTEAMVIDEO001_H \ No newline at end of file diff --git a/sdk/steam/steam_api.h b/sdk/steam/steam_api.h index 1eb81755..cf25ffd7 100644 --- a/sdk/steam/steam_api.h +++ b/sdk/steam/steam_api.h @@ -177,6 +177,7 @@ #include "isteaminventory001.h" #include "isteaminventory002.h" #include "isteamvideo.h" +#include "isteamvideo001.h" #include "isteamparentalsettings.h" #include "isteamgamecoordinator.h" #include "isteammasterserverupdater.h"