Open Tempest82 opened 8 years ago
Thinking about performance and c# I'm not certain if .Net is the way to go for the stream download. I'm investigating libcurl as an http library to gain the stream.
Unable to locate a stream API Open source C++ library. Considering it as a build option and a positive way to get into C++.
Working with libCurl VS 2013 instructions at http://stackoverflow.com/questions/20171165/getting-libcurl-to-work-with-visual-studio-2013
Modified for VS 2015 A. Build libcurl static library 1.Download the latest curl generic source from: http://curl.haxx.se/latest.cgi?curl=tar.gz 2.Extract the source to a local directory (we'll be using C:\libcurl) 3.Open a command prompt 4."C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\vcvars32.bat" To initialize your VC environment variables (adjust your VS 2015 installation directory as needed) 5.cd C:\libcurl\winbuild 6.nmake /f Makefile.vc mode=static VC=14 7.The build should appear in C:\libcurl\builds\libcurl-vc14-x86-release-static-ipv6-sspi-winssl
B. Link Against libcurl in Visual Studio 1.In Visual Studio, right click your project in Solution Explorer, then click "Properties" 2.Configuration Properties > C/C++ > General > Additional Include Directories: add C:\libcurl\builds\libcurl-vc12-x86-release-static-ipv6-sspi-winssl\include 3.Configuration Properties > C/C++ > Preprocessor > Preprocessor Definitions: add CURL_STATICLIB 4.Configuration Properties > Linker > General > Additional Library Directories: add C:\libcurl\builds\libcurl-vc12-x86-release-static-ipv6-sspi-winssl\lib 5.Configuration Properties > Linker > Input > Additional Dependencies: add libcurl_a.lib
C. Call libcurl from Your Project
The following sample shows a call to libcurl:
void main(int argc, char* argv[]) { CURL *curl = curl_easy_init(); if (curl) printf("curl_easy_init() succeeded!\n"); else fprintf(stderr, "Error calling curl_easy_init().\n"); }
Possibly use Tweetinvi https://tweetinvi.codeplex.com/, otherwise might need to build our own api streaming method. Performance may necessitate a custom method to interact with the Steam API.