diff --git a/Limelight.xcodeproj/project.pbxproj b/Limelight.xcodeproj/project.pbxproj index 45affd9..3dc3fdd 100644 --- a/Limelight.xcodeproj/project.pbxproj +++ b/Limelight.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + 98A03B4D19F352EB00861ACA /* liblimelight-common.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 98A03B4A19F3514B00861ACA /* liblimelight-common.a */; }; FB290CF219B2C406004C83CF /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB290CF119B2C406004C83CF /* Foundation.framework */; }; FB290CF419B2C406004C83CF /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB290CF319B2C406004C83CF /* CoreGraphics.framework */; }; FB290CF619B2C406004C83CF /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB290CF519B2C406004C83CF /* UIKit.framework */; }; @@ -30,7 +31,6 @@ FB290D3C19B2C6E3004C83CF /* VideoDecoder.m in Sources */ = {isa = PBXBuildFile; fileRef = FB290D3219B2C6E3004C83CF /* VideoDecoder.m */; }; FB290D3D19B2C6E3004C83CF /* VideoDepacketizer.m in Sources */ = {isa = PBXBuildFile; fileRef = FB290D3419B2C6E3004C83CF /* VideoDepacketizer.m */; }; FB290D3E19B2C6E3004C83CF /* VideoRenderer.m in Sources */ = {isa = PBXBuildFile; fileRef = FB290D3619B2C6E3004C83CF /* VideoRenderer.m */; }; - FB290DB519B2C814004C83CF /* liblimelight-common.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FB290DAB19B2C814004C83CF /* liblimelight-common.a */; }; FB290DB719B2C870004C83CF /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = FB290DB619B2C870004C83CF /* libz.dylib */; }; FB290DB919B2C877004C83CF /* libbz2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = FB290DB819B2C877004C83CF /* libbz2.dylib */; }; FB290DC219B2E966004C83CF /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FB290DC119B2E966004C83CF /* libopus.a */; }; @@ -56,6 +56,20 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ + 98A03B4919F3514B00861ACA /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 98A03B4519F3514B00861ACA /* limelight-common.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = FB290E2E19B37A4E004C83CF; + remoteInfo = "limelight-common"; + }; + 98A03B4B19F3517100861ACA /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 98A03B4519F3514B00861ACA /* limelight-common.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = FB290E2D19B37A4E004C83CF; + remoteInfo = "limelight-common"; + }; FB290D1419B2C406004C83CF /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = FB290CE619B2C406004C83CF /* Project object */; @@ -73,6 +87,7 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 98A03B4519F3514B00861ACA /* limelight-common.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "limelight-common.xcodeproj"; path = "limelight-common-c/limelight-common.xcodeproj"; sourceTree = ""; }; FB290CEE19B2C406004C83CF /* Limelight.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Limelight.app; sourceTree = BUILT_PRODUCTS_DIR; }; FB290CF119B2C406004C83CF /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; FB290CF319B2C406004C83CF /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; @@ -310,6 +325,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 98A03B4D19F352EB00861ACA /* liblimelight-common.a in Frameworks */, FBCC0E9B19EF9703009729EB /* libssl.a in Frameworks */, FB7E794419C8B71B00A15F68 /* libiconv.dylib in Frameworks */, FB290DC419B2E98F004C83CF /* libxml2.dylib in Frameworks */, @@ -323,7 +339,6 @@ FB290DC219B2E966004C83CF /* libopus.a in Frameworks */, FB290CF819B2C406004C83CF /* CoreData.framework in Frameworks */, FBCC0E9A19EF9703009729EB /* libcrypto.a in Frameworks */, - FB290DB519B2C814004C83CF /* liblimelight-common.a in Frameworks */, FBD8B40B19C906230032E027 /* libswresample.a in Frameworks */, FBD8B40819C906230032E027 /* libavformat.a in Frameworks */, FBD8B40519C906230032E027 /* libavcodec.a in Frameworks */, @@ -347,9 +362,18 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 98A03B4619F3514B00861ACA /* Products */ = { + isa = PBXGroup; + children = ( + 98A03B4A19F3514B00861ACA /* liblimelight-common.a */, + ); + name = Products; + sourceTree = ""; + }; FB290CE519B2C406004C83CF = { isa = PBXGroup; children = ( + 98A03B4519F3514B00861ACA /* limelight-common.xcodeproj */, FB290CF919B2C406004C83CF /* Limelight */, FB290D1619B2C406004C83CF /* LimelightTests */, FB290CF019B2C406004C83CF /* Frameworks */, @@ -845,6 +869,7 @@ buildRules = ( ); dependencies = ( + 98A03B4C19F3517100861ACA /* PBXTargetDependency */, ); name = Limelight; productName = Limelight; @@ -894,6 +919,10 @@ productRefGroup = FB290CEF19B2C406004C83CF /* Products */; projectDirPath = ""; projectReferences = ( + { + ProductGroup = 98A03B4619F3514B00861ACA /* Products */; + ProjectRef = 98A03B4519F3514B00861ACA /* limelight-common.xcodeproj */; + }, { ProductGroup = FBC8622F19F346A60087327B /* Products */; ProjectRef = FBC8622E19F346A60087327B /* limelight-common.xcodeproj */; @@ -908,6 +937,13 @@ /* End PBXProject section */ /* Begin PBXReferenceProxy section */ + 98A03B4A19F3514B00861ACA /* liblimelight-common.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "liblimelight-common.a"; + remoteRef = 98A03B4919F3514B00861ACA /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; FBC8623319F346A60087327B /* liblimelight-common.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; @@ -974,6 +1010,11 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ + 98A03B4C19F3517100861ACA /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "limelight-common"; + targetProxy = 98A03B4B19F3517100861ACA /* PBXContainerItemProxy */; + }; FB290D1519B2C406004C83CF /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = FB290CED19B2C406004C83CF /* Limelight */; @@ -1083,14 +1124,14 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(PROJECT_DIR)/libs/**", + "$(PROJECT_DIR)/limelight-common-c/limelight-common", "$(SDKROOT)/usr/include/libxml2/**", + "$(PROJECT_DIR)/libs/**", ); INFOPLIST_FILE = "Limelight/Limelight-Info.plist"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/libs/FFmpeg/lib", - "$(PROJECT_DIR)/libs/limelight-common/lib", "$(PROJECT_DIR)/libs/opus/lib", "$(PROJECT_DIR)/libs/openssl/lib", ); @@ -1109,14 +1150,14 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(PROJECT_DIR)/libs/**", + "$(PROJECT_DIR)/limelight-common-c/limelight-common", "$(SDKROOT)/usr/include/libxml2/**", + "$(PROJECT_DIR)/libs/**", ); INFOPLIST_FILE = "Limelight/Limelight-Info.plist"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/libs/FFmpeg/lib", - "$(PROJECT_DIR)/libs/limelight-common/lib", "$(PROJECT_DIR)/libs/opus/lib", "$(PROJECT_DIR)/libs/openssl/lib", ); diff --git a/libs/limelight-common/include/Limelight.h b/libs/limelight-common/include/Limelight.h deleted file mode 100644 index 19dc49d..0000000 --- a/libs/limelight-common/include/Limelight.h +++ /dev/null @@ -1,136 +0,0 @@ -#pragma once - -#ifdef __cplusplus -extern "C" { -#endif - -#define IP_ADDRESS unsigned int - -typedef struct _STREAM_CONFIGURATION { - int width; - int height; - int fps; - int bitrate; - int packetSize; - char remoteInputAesKey[16]; - char remoteInputAesIv[16]; -} STREAM_CONFIGURATION, *PSTREAM_CONFIGURATION; - -typedef struct _LENTRY { - struct _LENTRY *next; - char* data; - int length; -} LENTRY, *PLENTRY; - -typedef struct _DECODE_UNIT { - int fullLength; - PLENTRY bufferList; -} DECODE_UNIT, *PDECODE_UNIT; - -typedef void(*DecoderRendererSetup)(int width, int height, int redrawRate, void* context, int drFlags); -typedef void(*DecoderRendererStart)(void); -typedef void(*DecoderRendererStop)(void); -typedef void(*DecoderRendererRelease)(void); -typedef void(*DecoderRendererSubmitDecodeUnit)(PDECODE_UNIT decodeUnit); - -typedef struct _DECODER_RENDERER_CALLBACKS { - DecoderRendererSetup setup; - DecoderRendererStart start; - DecoderRendererStop stop; - DecoderRendererRelease release; - DecoderRendererSubmitDecodeUnit submitDecodeUnit; -} DECODER_RENDERER_CALLBACKS, *PDECODER_RENDERER_CALLBACKS; - -typedef void(*AudioRendererInit)(void); -typedef void(*AudioRendererStart)(void); -typedef void(*AudioRendererStop)(void); -typedef void(*AudioRendererRelease)(void); -typedef void(*AudioRendererDecodeAndPlaySample)(char* sampleData, int sampleLength); - -typedef struct _AUDIO_RENDERER_CALLBACKS { - AudioRendererInit init; - AudioRendererStart start; - AudioRendererStop stop; - AudioRendererRelease release; - AudioRendererDecodeAndPlaySample decodeAndPlaySample; -} AUDIO_RENDERER_CALLBACKS, *PAUDIO_RENDERER_CALLBACKS; - -// Subject to change in future releases -// Use LiGetStageName() for stable stage names -#define STAGE_NONE 0 -#define STAGE_PLATFORM_INIT 1 -#define STAGE_RTSP_HANDSHAKE 2 -#define STAGE_CONTROL_STREAM_INIT 3 -#define STAGE_VIDEO_STREAM_INIT 4 -#define STAGE_AUDIO_STREAM_INIT 5 -#define STAGE_INPUT_STREAM_INIT 6 -#define STAGE_CONTROL_STREAM_START 7 -#define STAGE_VIDEO_STREAM_START 8 -#define STAGE_AUDIO_STREAM_START 9 -#define STAGE_INPUT_STREAM_START 10 -#define STAGE_MAX 11 - -typedef void(*ConnListenerStageStarting)(int stage); -typedef void(*ConnListenerStageComplete)(int stage); -typedef void(*ConnListenerStageFailed)(int stage, int errorCode); - -typedef void(*ConnListenerConnectionStarted)(void); -typedef void(*ConnListenerConnectionTerminated)(int errorCode); - -typedef void(*ConnListenerDisplayMessage)(char* message); -typedef void(*ConnListenerDisplayTransientMessage)(char* message); - -typedef struct _CONNECTION_LISTENER_CALLBACKS { - ConnListenerStageStarting stageStarting; - ConnListenerStageComplete stageComplete; - ConnListenerStageFailed stageFailed; - ConnListenerConnectionStarted connectionStarted; - ConnListenerConnectionTerminated connectionTerminated; - ConnListenerDisplayMessage displayMessage; - ConnListenerDisplayTransientMessage displayTransientMessage; -} CONNECTION_LISTENER_CALLBACKS, *PCONNECTION_LISTENER_CALLBACKS; - -int LiStartConnection(IP_ADDRESS host, PSTREAM_CONFIGURATION streamConfig, PCONNECTION_LISTENER_CALLBACKS clCallbacks, - PDECODER_RENDERER_CALLBACKS drCallbacks, PAUDIO_RENDERER_CALLBACKS arCallbacks, void* renderContext, int drFlags); -void LiStopConnection(void); -const char* LiGetStageName(int stage); - -int LiSendMouseMoveEvent(short deltaX, short deltaY); - -#define BUTTON_ACTION_PRESS 0x07 -#define BUTTON_ACTION_RELEASE 0x08 -#define BUTTON_LEFT 0x01 -#define BUTTON_MIDDLE 0x02 -#define BUTTON_RIGHT 0x03 -int LiSendMouseButtonEvent(char action, int button); - -#define KEY_ACTION_DOWN 0x03 -#define KEY_ACTION_UP 0x04 -#define MODIFIER_SHIFT 0x01 -#define MODIFIER_CTRL 0x02 -#define MODIFIER_ALT 0x04 -int LiSendKeyboardEvent(short keyCode, char keyAction, char modifiers); - -#define A_FLAG 0x1000 -#define B_FLAG 0x2000 -#define X_FLAG 0x4000 -#define Y_FLAG 0x8000 -#define UP_FLAG 0x0001 -#define DOWN_FLAG 0x0002 -#define LEFT_FLAG 0x0004 -#define RIGHT_FLAG 0x0008 -#define LB_FLAG 0x0100 -#define RB_FLAG 0x0200 -#define PLAY_FLAG 0x0010 -#define BACK_FLAG 0x0020 -#define LS_CLK_FLAG 0x0040 -#define RS_CLK_FLAG 0x0080 -#define SPECIAL_FLAG 0x0400 -int LiSendControllerEvent(short buttonFlags, char leftTrigger, char rightTrigger, - short leftStickX, short leftStickY, short rightStickX, short rightStickY); - -int LiSendScrollEvent(char scrollClicks); - -#ifdef __cplusplus -} -#endif \ No newline at end of file diff --git a/libs/limelight-common/lib/liblimelight-common.a b/libs/limelight-common/lib/liblimelight-common.a deleted file mode 100644 index 6a9f065..0000000 Binary files a/libs/limelight-common/lib/liblimelight-common.a and /dev/null differ