ref: 3d47b7847d6e8a6f5c186f87d40058c839234995
parent: e5ee43173d25a4ffbe92d22d23822018266853b0
parent: e8ecee26163f5d98a261d30d0e6b312573b4415e
author: Ethan Hugg <ethanhugg@gmail.com>
date: Thu Feb 27 05:52:14 EST 2014
Merge pull request #358 from volvet/add_ios_encDemo add encode test for iOS
--- a/codec/build/android/enc/jni/myjni.cpp
+++ b/codec/build/android/enc/jni/myjni.cpp
@@ -6,7 +6,7 @@
#define LOG_TAG "welsdec"
#define LOGI(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)
-extern int EncMain (int argc, char* argv[]);
+extern "C" int EncMain (int argc, char* argv[]);
extern "C"
JNIEXPORT void JNICALL Java_com_wels_enc_WelsEncTest_DoEncoderTest
(JNIEnv* env, jobject thiz, jstring jsFileNameIn) {
--- a/codec/build/iOS/.gitignore
+++ b/codec/build/iOS/.gitignore
@@ -1,2 +1,3 @@
project.xcworkspace
xcuserdata
+.DS_Store
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo.xcodeproj/project.pbxproj
@@ -1,0 +1,597 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 46;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ FAA3D9D318BD729500BCD52D /* welsenc_ios.cfg in Resources */ = {isa = PBXBuildFile; fileRef = FAA3D9D218BD729500BCD52D /* welsenc_ios.cfg */; };
+ FAA3D9D818BD777100BCD52D /* CiscoVT2people_320x192_12fps.yuv in Resources */ = {isa = PBXBuildFile; fileRef = FAA3D9D718BD777100BCD52D /* CiscoVT2people_320x192_12fps.yuv */; };
+ FAA3D9DD18BD8A5600BCD52D /* layer2.cfg in Resources */ = {isa = PBXBuildFile; fileRef = FAA3D9DC18BD8A5600BCD52D /* layer2.cfg */; };
+ FAFB4FA918BC8DD700315438 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAFB4FA818BC8DD700315438 /* Foundation.framework */; };
+ FAFB4FAB18BC8DD700315438 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAFB4FAA18BC8DD700315438 /* CoreGraphics.framework */; };
+ FAFB4FAD18BC8DD700315438 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAFB4FAC18BC8DD700315438 /* UIKit.framework */; };
+ FAFB4FB318BC8DD700315438 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = FAFB4FB118BC8DD700315438 /* InfoPlist.strings */; };
+ FAFB4FB518BC8DD700315438 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = FAFB4FB418BC8DD700315438 /* main.m */; };
+ FAFB4FB918BC8DD700315438 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = FAFB4FB818BC8DD700315438 /* AppDelegate.m */; };
+ FAFB4FBC18BC8DD700315438 /* Main_iPhone.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FAFB4FBA18BC8DD700315438 /* Main_iPhone.storyboard */; };
+ FAFB4FBF18BC8DD700315438 /* Main_iPad.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FAFB4FBD18BC8DD700315438 /* Main_iPad.storyboard */; };
+ FAFB4FC218BC8DD700315438 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = FAFB4FC118BC8DD700315438 /* ViewController.m */; };
+ FAFB4FC418BC8DD700315438 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FAFB4FC318BC8DD700315438 /* Images.xcassets */; };
+ FAFB500318BC8F0D00315438 /* libcommon.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FAFB4FF118BC8E8600315438 /* libcommon.a */; };
+ FAFB500418BC8F1100315438 /* libprocessing.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FAFB4FFA18BC8E9A00315438 /* libprocessing.a */; };
+ FAFB500518BC8F1500315438 /* libwelsenc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FAFB4FE818BC8E7D00315438 /* libwelsenc.a */; };
+ FAFB500B18BC8F6C00315438 /* welsenc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FAFB500A18BC8F6C00315438 /* welsenc.cpp */; };
+ FAFB502F18BCA50900315438 /* read_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FAFB502E18BCA50900315438 /* read_config.cpp */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXContainerItemProxy section */
+ FAFB4FE718BC8E7D00315438 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FAFB4FE218BC8E7C00315438 /* welsenc.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = 4CE4431118B6FFA00017DF25;
+ remoteInfo = welsenc;
+ };
+ FAFB4FE918BC8E7D00315438 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FAFB4FE218BC8E7C00315438 /* welsenc.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = 4CE4432118B6FFA00017DF25;
+ remoteInfo = welsencTests;
+ };
+ FAFB4FF018BC8E8600315438 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FAFB4FEB18BC8E8600315438 /* common.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = 4CE443D518B722CD0017DF25;
+ remoteInfo = common;
+ };
+ FAFB4FF218BC8E8600315438 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FAFB4FEB18BC8E8600315438 /* common.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = 4CE443E518B722CD0017DF25;
+ remoteInfo = commonTests;
+ };
+ FAFB4FF918BC8E9A00315438 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = 4CE4443118B724B60017DF25;
+ remoteInfo = processing;
+ };
+ FAFB4FFB18BC8E9A00315438 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = 4CE4444118B724B60017DF25;
+ remoteInfo = processingTests;
+ };
+ FAFB4FFD18BC8EAA00315438 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FAFB4FEB18BC8E8600315438 /* common.xcodeproj */;
+ proxyType = 1;
+ remoteGlobalIDString = 4CE443D418B722CD0017DF25;
+ remoteInfo = common;
+ };
+ FAFB4FFF18BC8EAF00315438 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */;
+ proxyType = 1;
+ remoteGlobalIDString = 4CE4443018B724B60017DF25;
+ remoteInfo = processing;
+ };
+ FAFB500118BC8EB200315438 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FAFB4FE218BC8E7C00315438 /* welsenc.xcodeproj */;
+ proxyType = 1;
+ remoteGlobalIDString = 4CE4431018B6FFA00017DF25;
+ remoteInfo = welsenc;
+ };
+/* End PBXContainerItemProxy section */
+
+/* Begin PBXFileReference section */
+ FAA3D9D218BD729500BCD52D /* welsenc_ios.cfg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = welsenc_ios.cfg; path = ../../../../../../testbin/welsenc_ios.cfg; sourceTree = "<group>"; };
+ FAA3D9D718BD777100BCD52D /* CiscoVT2people_320x192_12fps.yuv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = CiscoVT2people_320x192_12fps.yuv; path = ../../../../../../res/CiscoVT2people_320x192_12fps.yuv; sourceTree = "<group>"; };
+ FAA3D9DC18BD8A5600BCD52D /* layer2.cfg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = layer2.cfg; path = ../../../../../../testbin/layer2.cfg; sourceTree = "<group>"; };
+ FAFB4FA518BC8DD700315438 /* encDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = encDemo.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ FAFB4FA818BC8DD700315438 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
+ FAFB4FAA18BC8DD700315438 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
+ FAFB4FAC18BC8DD700315438 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
+ FAFB4FB018BC8DD700315438 /* encDemo-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "encDemo-Info.plist"; sourceTree = "<group>"; };
+ FAFB4FB218BC8DD700315438 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+ FAFB4FB418BC8DD700315438 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
+ FAFB4FB618BC8DD700315438 /* encDemo-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "encDemo-Prefix.pch"; sourceTree = "<group>"; };
+ FAFB4FB718BC8DD700315438 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
+ FAFB4FB818BC8DD700315438 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
+ FAFB4FBB18BC8DD700315438 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main_iPhone.storyboard; sourceTree = "<group>"; };
+ FAFB4FBE18BC8DD700315438 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main_iPad.storyboard; sourceTree = "<group>"; };
+ FAFB4FC018BC8DD700315438 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; };
+ FAFB4FC118BC8DD700315438 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = "<group>"; };
+ FAFB4FC318BC8DD700315438 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
+ FAFB4FCA18BC8DD700315438 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
+ FAFB4FE218BC8E7C00315438 /* welsenc.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = welsenc.xcodeproj; path = ../welsenc/welsenc.xcodeproj; sourceTree = "<group>"; };
+ FAFB4FEB18BC8E8600315438 /* common.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = common.xcodeproj; path = ../../common/common.xcodeproj; sourceTree = "<group>"; };
+ FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = processing.xcodeproj; path = ../../../../processing/build/iOS/processing.xcodeproj; sourceTree = "<group>"; };
+ FAFB500918BC8F6600315438 /* read_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = read_config.h; sourceTree = "<group>"; };
+ FAFB500A18BC8F6C00315438 /* welsenc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = welsenc.cpp; sourceTree = "<group>"; };
+ FAFB502E18BCA50900315438 /* read_config.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = read_config.cpp; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ FAFB4FA218BC8DD700315438 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ FAFB500518BC8F1500315438 /* libwelsenc.a in Frameworks */,
+ FAFB500418BC8F1100315438 /* libprocessing.a in Frameworks */,
+ FAFB500318BC8F0D00315438 /* libcommon.a in Frameworks */,
+ FAFB4FAB18BC8DD700315438 /* CoreGraphics.framework in Frameworks */,
+ FAFB4FAD18BC8DD700315438 /* UIKit.framework in Frameworks */,
+ FAFB4FA918BC8DD700315438 /* Foundation.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ FAFB4F9C18BC8DD700315438 = {
+ isa = PBXGroup;
+ children = (
+ FAFB4FAE18BC8DD700315438 /* encDemo */,
+ FAFB4FA718BC8DD700315438 /* Frameworks */,
+ FAFB4FA618BC8DD700315438 /* Products */,
+ );
+ sourceTree = "<group>";
+ };
+ FAFB4FA618BC8DD700315438 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ FAFB4FA518BC8DD700315438 /* encDemo.app */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ FAFB4FA718BC8DD700315438 /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */,
+ FAFB4FEB18BC8E8600315438 /* common.xcodeproj */,
+ FAFB4FE218BC8E7C00315438 /* welsenc.xcodeproj */,
+ FAFB4FA818BC8DD700315438 /* Foundation.framework */,
+ FAFB4FAA18BC8DD700315438 /* CoreGraphics.framework */,
+ FAFB4FAC18BC8DD700315438 /* UIKit.framework */,
+ FAFB4FCA18BC8DD700315438 /* XCTest.framework */,
+ );
+ name = Frameworks;
+ sourceTree = "<group>";
+ };
+ FAFB4FAE18BC8DD700315438 /* encDemo */ = {
+ isa = PBXGroup;
+ children = (
+ FAFB500618BC8F2800315438 /* console */,
+ FAFB4FB718BC8DD700315438 /* AppDelegate.h */,
+ FAFB4FB818BC8DD700315438 /* AppDelegate.m */,
+ FAFB4FBA18BC8DD700315438 /* Main_iPhone.storyboard */,
+ FAFB4FBD18BC8DD700315438 /* Main_iPad.storyboard */,
+ FAFB4FC018BC8DD700315438 /* ViewController.h */,
+ FAFB4FC118BC8DD700315438 /* ViewController.m */,
+ FAFB4FC318BC8DD700315438 /* Images.xcassets */,
+ FAFB4FAF18BC8DD700315438 /* Supporting Files */,
+ );
+ path = encDemo;
+ sourceTree = "<group>";
+ };
+ FAFB4FAF18BC8DD700315438 /* Supporting Files */ = {
+ isa = PBXGroup;
+ children = (
+ FAA3D9DC18BD8A5600BCD52D /* layer2.cfg */,
+ FAA3D9D718BD777100BCD52D /* CiscoVT2people_320x192_12fps.yuv */,
+ FAA3D9D218BD729500BCD52D /* welsenc_ios.cfg */,
+ FAFB4FB018BC8DD700315438 /* encDemo-Info.plist */,
+ FAFB4FB118BC8DD700315438 /* InfoPlist.strings */,
+ FAFB4FB418BC8DD700315438 /* main.m */,
+ FAFB4FB618BC8DD700315438 /* encDemo-Prefix.pch */,
+ );
+ name = "Supporting Files";
+ sourceTree = "<group>";
+ };
+ FAFB4FE318BC8E7C00315438 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ FAFB4FE818BC8E7D00315438 /* libwelsenc.a */,
+ FAFB4FEA18BC8E7D00315438 /* welsencTests.xctest */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ FAFB4FEC18BC8E8600315438 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ FAFB4FF118BC8E8600315438 /* libcommon.a */,
+ FAFB4FF318BC8E8600315438 /* commonTests.xctest */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ FAFB4FF518BC8E9A00315438 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ FAFB4FFA18BC8E9A00315438 /* libprocessing.a */,
+ FAFB4FFC18BC8E9A00315438 /* processingTests.xctest */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ FAFB500618BC8F2800315438 /* console */ = {
+ isa = PBXGroup;
+ children = (
+ FAFB500818BC8F4E00315438 /* inc */,
+ FAFB500718BC8F4500315438 /* src */,
+ );
+ name = console;
+ path = ../../../../../console/enc;
+ sourceTree = "<group>";
+ };
+ FAFB500718BC8F4500315438 /* src */ = {
+ isa = PBXGroup;
+ children = (
+ FAFB502E18BCA50900315438 /* read_config.cpp */,
+ FAFB500A18BC8F6C00315438 /* welsenc.cpp */,
+ );
+ path = src;
+ sourceTree = "<group>";
+ };
+ FAFB500818BC8F4E00315438 /* inc */ = {
+ isa = PBXGroup;
+ children = (
+ FAFB500918BC8F6600315438 /* read_config.h */,
+ );
+ path = inc;
+ sourceTree = "<group>";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ FAFB4FA418BC8DD700315438 /* encDemo */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = FAFB4FDA18BC8DD700315438 /* Build configuration list for PBXNativeTarget "encDemo" */;
+ buildPhases = (
+ FAFB4FA118BC8DD700315438 /* Sources */,
+ FAFB4FA218BC8DD700315438 /* Frameworks */,
+ FAFB4FA318BC8DD700315438 /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ FAFB500218BC8EB200315438 /* PBXTargetDependency */,
+ FAFB500018BC8EAF00315438 /* PBXTargetDependency */,
+ FAFB4FFE18BC8EAA00315438 /* PBXTargetDependency */,
+ );
+ name = encDemo;
+ productName = encDemo;
+ productReference = FAFB4FA518BC8DD700315438 /* encDemo.app */;
+ productType = "com.apple.product-type.application";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ FAFB4F9D18BC8DD700315438 /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ LastUpgradeCheck = 0500;
+ ORGANIZATIONNAME = video;
+ };
+ buildConfigurationList = FAFB4FA018BC8DD700315438 /* Build configuration list for PBXProject "encDemo" */;
+ compatibilityVersion = "Xcode 3.2";
+ developmentRegion = English;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ Base,
+ );
+ mainGroup = FAFB4F9C18BC8DD700315438;
+ productRefGroup = FAFB4FA618BC8DD700315438 /* Products */;
+ projectDirPath = "";
+ projectReferences = (
+ {
+ ProductGroup = FAFB4FEC18BC8E8600315438 /* Products */;
+ ProjectRef = FAFB4FEB18BC8E8600315438 /* common.xcodeproj */;
+ },
+ {
+ ProductGroup = FAFB4FF518BC8E9A00315438 /* Products */;
+ ProjectRef = FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */;
+ },
+ {
+ ProductGroup = FAFB4FE318BC8E7C00315438 /* Products */;
+ ProjectRef = FAFB4FE218BC8E7C00315438 /* welsenc.xcodeproj */;
+ },
+ );
+ projectRoot = "";
+ targets = (
+ FAFB4FA418BC8DD700315438 /* encDemo */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXReferenceProxy section */
+ FAFB4FE818BC8E7D00315438 /* libwelsenc.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libwelsenc.a;
+ remoteRef = FAFB4FE718BC8E7D00315438 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ FAFB4FEA18BC8E7D00315438 /* welsencTests.xctest */ = {
+ isa = PBXReferenceProxy;
+ fileType = wrapper.cfbundle;
+ path = welsencTests.xctest;
+ remoteRef = FAFB4FE918BC8E7D00315438 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ FAFB4FF118BC8E8600315438 /* libcommon.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libcommon.a;
+ remoteRef = FAFB4FF018BC8E8600315438 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ FAFB4FF318BC8E8600315438 /* commonTests.xctest */ = {
+ isa = PBXReferenceProxy;
+ fileType = wrapper.cfbundle;
+ path = commonTests.xctest;
+ remoteRef = FAFB4FF218BC8E8600315438 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ FAFB4FFA18BC8E9A00315438 /* libprocessing.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libprocessing.a;
+ remoteRef = FAFB4FF918BC8E9A00315438 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ FAFB4FFC18BC8E9A00315438 /* processingTests.xctest */ = {
+ isa = PBXReferenceProxy;
+ fileType = wrapper.cfbundle;
+ path = processingTests.xctest;
+ remoteRef = FAFB4FFB18BC8E9A00315438 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+/* End PBXReferenceProxy section */
+
+/* Begin PBXResourcesBuildPhase section */
+ FAFB4FA318BC8DD700315438 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ FAFB4FBF18BC8DD700315438 /* Main_iPad.storyboard in Resources */,
+ FAA3D9D318BD729500BCD52D /* welsenc_ios.cfg in Resources */,
+ FAFB4FC418BC8DD700315438 /* Images.xcassets in Resources */,
+ FAFB4FBC18BC8DD700315438 /* Main_iPhone.storyboard in Resources */,
+ FAA3D9DD18BD8A5600BCD52D /* layer2.cfg in Resources */,
+ FAA3D9D818BD777100BCD52D /* CiscoVT2people_320x192_12fps.yuv in Resources */,
+ FAFB4FB318BC8DD700315438 /* InfoPlist.strings in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ FAFB4FA118BC8DD700315438 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ FAFB4FC218BC8DD700315438 /* ViewController.m in Sources */,
+ FAFB502F18BCA50900315438 /* read_config.cpp in Sources */,
+ FAFB500B18BC8F6C00315438 /* welsenc.cpp in Sources */,
+ FAFB4FB918BC8DD700315438 /* AppDelegate.m in Sources */,
+ FAFB4FB518BC8DD700315438 /* main.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXTargetDependency section */
+ FAFB4FFE18BC8EAA00315438 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ name = common;
+ targetProxy = FAFB4FFD18BC8EAA00315438 /* PBXContainerItemProxy */;
+ };
+ FAFB500018BC8EAF00315438 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ name = processing;
+ targetProxy = FAFB4FFF18BC8EAF00315438 /* PBXContainerItemProxy */;
+ };
+ FAFB500218BC8EB200315438 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ name = welsenc;
+ targetProxy = FAFB500118BC8EB200315438 /* PBXContainerItemProxy */;
+ };
+/* End PBXTargetDependency section */
+
+/* Begin PBXVariantGroup section */
+ FAFB4FB118BC8DD700315438 /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ FAFB4FB218BC8DD700315438 /* en */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "<group>";
+ };
+ FAFB4FBA18BC8DD700315438 /* Main_iPhone.storyboard */ = {
+ isa = PBXVariantGroup;
+ children = (
+ FAFB4FBB18BC8DD700315438 /* Base */,
+ );
+ name = Main_iPhone.storyboard;
+ sourceTree = "<group>";
+ };
+ FAFB4FBD18BC8DD700315438 /* Main_iPad.storyboard */ = {
+ isa = PBXVariantGroup;
+ children = (
+ FAFB4FBE18BC8DD700315438 /* Base */,
+ );
+ name = Main_iPad.storyboard;
+ sourceTree = "<group>";
+ };
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+ FAFB4FD818BC8DD700315438 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ ARCHS = "$(ARCHS_STANDARD)";
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ "/Applications/Xcode\\ 5.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include",
+ "\"$(SRCROOT)/../../../../api/svc\"",
+ "\"$(SRCROOT)/../../../../common\"",
+ "\"$(SRCROOT)/../../../../processing/interface\"",
+ "\"$(SRCROOT)/../../../../encoder/core/inc\"",
+ );
+ IPHONEOS_DEPLOYMENT_TARGET = 7.0;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = Debug;
+ };
+ FAFB4FD918BC8DD700315438 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ ARCHS = "$(ARCHS_STANDARD)";
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+ COPY_PHASE_STRIP = YES;
+ ENABLE_NS_ASSERTIONS = NO;
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ "/Applications/Xcode\\ 5.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include",
+ "\"$(SRCROOT)/../../../../api/svc\"",
+ "\"$(SRCROOT)/../../../../common\"",
+ "\"$(SRCROOT)/../../../../processing/interface\"",
+ "\"$(SRCROOT)/../../../../encoder/core/inc\"",
+ );
+ IPHONEOS_DEPLOYMENT_TARGET = 7.0;
+ SDKROOT = iphoneos;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ VALIDATE_PRODUCT = YES;
+ };
+ name = Release;
+ };
+ FAFB4FDB18BC8DD700315438 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD)";
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
+ GCC_PREPROCESSOR_DEFINITIONS = APPLE_IOS;
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ "/Applications/Xcode\\ 5.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include",
+ "\"$(SRCROOT)/../../../../api/svc\"",
+ "\"$(SRCROOT)/../../../../common\"",
+ "$(SRCROOT)/../../../../processing/interface\" $(SRCROOT)/../../../../encoder/core/inc\"",
+ );
+ INFOPLIST_FILE = "encDemo/encDemo-Info.plist";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ WRAPPER_EXTENSION = app;
+ };
+ name = Debug;
+ };
+ FAFB4FDC18BC8DD700315438 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD)";
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
+ GCC_PREPROCESSOR_DEFINITIONS = APPLE_IOS;
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ "/Applications/Xcode\\ 5.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include",
+ "\"$(SRCROOT)/../../../../api/svc\"",
+ "\"$(SRCROOT)/../../../../common\"",
+ "$(SRCROOT)/../../../../processing/interface\" $(SRCROOT)/../../../../encoder/core/inc\"",
+ );
+ INFOPLIST_FILE = "encDemo/encDemo-Info.plist";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ WRAPPER_EXTENSION = app;
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ FAFB4FA018BC8DD700315438 /* Build configuration list for PBXProject "encDemo" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ FAFB4FD818BC8DD700315438 /* Debug */,
+ FAFB4FD918BC8DD700315438 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ FAFB4FDA18BC8DD700315438 /* Build configuration list for PBXNativeTarget "encDemo" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ FAFB4FDB18BC8DD700315438 /* Debug */,
+ FAFB4FDC18BC8DD700315438 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = FAFB4F9D18BC8DD700315438 /* Project object */;
+}
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/AppDelegate.h
@@ -1,0 +1,39 @@
+/*!
+ * \copy
+ * Copyright (c) 2013, Cisco Systems
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#import <UIKit/UIKit.h>
+
+@interface AppDelegate : UIResponder <UIApplicationDelegate>
+
+@property (strong, nonatomic) UIWindow *window;
+
+@end
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/AppDelegate.m
@@ -1,0 +1,63 @@
+
+/*!
+ * \copy
+ * Copyright (c) 2013, Cisco Systems
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#import "AppDelegate.h"
+
+@implementation AppDelegate
+
+- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
+{
+ return YES;
+}
+
+- (void)applicationWillResignActive:(UIApplication *)application
+{
+}
+
+- (void)applicationDidEnterBackground:(UIApplication *)application
+{
+}
+
+- (void)applicationWillEnterForeground:(UIApplication *)application
+{
+}
+
+- (void)applicationDidBecomeActive:(UIApplication *)application
+{
+}
+
+- (void)applicationWillTerminate:(UIApplication *)application
+{
+}
+
+@end
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/Base.lproj/Main_iPad.storyboard
@@ -1,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="4510" systemVersion="12F45" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" useAutolayout="YES" initialViewController="BYZ-38-t0r">
+ <dependencies>
+ <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3742"/>
+ </dependencies>
+ <scenes>
+ <!--View Controller-->
+ <scene sceneID="tne-QT-ifu">
+ <objects>
+ <viewController id="BYZ-38-t0r" customClass="ViewController" sceneMemberID="viewController">
+ <layoutGuides>
+ <viewControllerLayoutGuide type="top" id="AP8-8w-0De"/>
+ <viewControllerLayoutGuide type="bottom" id="c8g-3k-wFn"/>
+ </layoutGuides>
+ <view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
+ <rect key="frame" x="0.0" y="0.0" width="768" height="1024"/>
+ <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+ <subviews>
+ <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="zxO-df-3Nm">
+ <rect key="frame" x="205" y="483" width="142" height="30"/>
+ <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+ <state key="normal" title="Simple Encoder Test">
+ <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
+ </state>
+ <connections>
+ <action selector="buttonPressed:" destination="BYZ-38-t0r" eventType="touchUpInside" id="pzf-mY-PCn"/>
+ </connections>
+ </button>
+ <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="Status:" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Mpw-Vf-v58">
+ <rect key="frame" x="205" y="401" width="221" height="21"/>
+ <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+ <fontDescription key="fontDescription" type="system" pointSize="17"/>
+ <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
+ </view>
+ <connections>
+ <outlet property="statusText" destination="Mpw-Vf-v58" id="BbS-da-1lz"/>
+ </connections>
+ </viewController>
+ <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
+ </objects>
+ </scene>
+ </scenes>
+ <simulatedMetricsContainer key="defaultSimulatedMetrics">
+ <simulatedStatusBarMetrics key="statusBar" statusBarStyle="blackOpaque"/>
+ <simulatedOrientationMetrics key="orientation"/>
+ <simulatedScreenMetrics key="destination"/>
+ </simulatedMetricsContainer>
+</document>
\ No newline at end of file
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/Base.lproj/Main_iPhone.storyboard
@@ -1,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="4510" systemVersion="12F45" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" initialViewController="vXZ-lx-hvc">
+ <dependencies>
+ <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3742"/>
+ </dependencies>
+ <scenes>
+ <!--View Controller-->
+ <scene sceneID="ufC-wZ-h7g">
+ <objects>
+ <viewController id="vXZ-lx-hvc" customClass="ViewController" sceneMemberID="viewController">
+ <layoutGuides>
+ <viewControllerLayoutGuide type="top" id="DZT-bO-vZS"/>
+ <viewControllerLayoutGuide type="bottom" id="mJc-f0-9sv"/>
+ </layoutGuides>
+ <view key="view" contentMode="scaleToFill" id="kh9-bI-dsS">
+ <rect key="frame" x="0.0" y="0.0" width="320" height="568"/>
+ <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+ <subviews>
+ <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="Status:" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="HvX-56-M19">
+ <rect key="frame" x="93" y="336" width="55" height="21"/>
+ <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+ <fontDescription key="fontDescription" type="system" pointSize="17"/>
+ <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="SXI-db-Dpk">
+ <rect key="frame" x="93" y="379" width="136" height="30"/>
+ <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+ <state key="normal" title="Simple Encode Test">
+ <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
+ </state>
+ <connections>
+ <action selector="buttonPressed:" destination="vXZ-lx-hvc" eventType="touchUpInside" id="1uY-7J-edO"/>
+ </connections>
+ </button>
+ </subviews>
+ <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
+ </view>
+ <connections>
+ <outlet property="statusText" destination="HvX-56-M19" id="KxK-QZ-DTo"/>
+ </connections>
+ </viewController>
+ <placeholder placeholderIdentifier="IBFirstResponder" id="x5A-6p-PRh" sceneMemberID="firstResponder"/>
+ </objects>
+ </scene>
+ </scenes>
+ <simulatedMetricsContainer key="defaultSimulatedMetrics">
+ <simulatedStatusBarMetrics key="statusBar"/>
+ <simulatedOrientationMetrics key="orientation"/>
+ <simulatedScreenMetrics key="destination" type="retina4"/>
+ </simulatedMetricsContainer>
+</document>
\ No newline at end of file
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/Images.xcassets/AppIcon.appiconset/Contents.json
@@ -1,0 +1,53 @@
+{
+ "images" : [
+ {
+ "idiom" : "iphone",
+ "size" : "29x29",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "iphone",
+ "size" : "40x40",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "iphone",
+ "size" : "60x60",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "29x29",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "29x29",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "40x40",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "40x40",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "76x76",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "76x76",
+ "scale" : "2x"
+ }
+ ],
+ "info" : {
+ "version" : 1,
+ "author" : "xcode"
+ }
+}
\ No newline at end of file
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/Images.xcassets/LaunchImage.launchimage/Contents.json
@@ -1,0 +1,51 @@
+{
+ "images" : [
+ {
+ "orientation" : "portrait",
+ "idiom" : "iphone",
+ "extent" : "full-screen",
+ "minimum-system-version" : "7.0",
+ "scale" : "2x"
+ },
+ {
+ "orientation" : "portrait",
+ "idiom" : "iphone",
+ "subtype" : "retina4",
+ "extent" : "full-screen",
+ "minimum-system-version" : "7.0",
+ "scale" : "2x"
+ },
+ {
+ "orientation" : "portrait",
+ "idiom" : "ipad",
+ "extent" : "full-screen",
+ "minimum-system-version" : "7.0",
+ "scale" : "1x"
+ },
+ {
+ "orientation" : "landscape",
+ "idiom" : "ipad",
+ "extent" : "full-screen",
+ "minimum-system-version" : "7.0",
+ "scale" : "1x"
+ },
+ {
+ "orientation" : "portrait",
+ "idiom" : "ipad",
+ "extent" : "full-screen",
+ "minimum-system-version" : "7.0",
+ "scale" : "2x"
+ },
+ {
+ "orientation" : "landscape",
+ "idiom" : "ipad",
+ "extent" : "full-screen",
+ "minimum-system-version" : "7.0",
+ "scale" : "2x"
+ }
+ ],
+ "info" : {
+ "version" : 1,
+ "author" : "xcode"
+ }
+}
\ No newline at end of file
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/ViewController.h
@@ -1,0 +1,44 @@
+/*!
+ * \copy
+ * Copyright (c) 2013, Cisco Systems
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#import <UIKit/UIKit.h>
+
+@interface ViewController : UIViewController {
+ UILabel * statusText_;
+}
+
+@property (retain, nonatomic) IBOutlet UILabel * statusText;
+
+-(IBAction) buttonPressed:(id)sender;
+
+
+@end
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/ViewController.m
@@ -1,0 +1,87 @@
+/*!
+ * \copy
+ * Copyright (c) 2013, Cisco Systems
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+extern int EncMain(int argc, char **argv);
+
+#import "ViewController.h"
+
+
+@interface ViewController ()
+
+@end
+
+@implementation ViewController
+@synthesize statusText=statusText_;
+
+- (void)viewDidLoad
+{
+ [super viewDidLoad];
+ statusText_.text = @"Status: Ready for Go";
+}
+
+- (void)didReceiveMemoryWarning
+{
+ [super didReceiveMemoryWarning];
+}
+
+- (IBAction) buttonPressed:(id)sender
+{
+ NSBundle * bundle = [NSBundle mainBundle];
+ NSString * encCfg = [bundle pathForResource:@"welsenc_ios" ofType:@"cfg"];
+ NSString * dlayerCfg = [bundle pathForResource:@"layer2" ofType:@"cfg"];
+ NSString * yuvFile = [bundle pathForResource:@"CiscoVT2people_320x192_12fps" ofType:@"yuv"];
+ NSString * bsfile = [NSString stringWithFormat:@"%@/%@", [self getPathForWrite], @"test.264"];
+ NSLog(@"WELS_INFO: enc config file: %@, yuv file %@", encCfg, yuvFile);
+ const char * argv[] = {
+ "dummy",
+ [encCfg UTF8String],
+ "-org",
+ [yuvFile UTF8String],
+ "-bf",
+ [bsfile UTF8String],
+ "-numl",
+ "1",
+ [dlayerCfg UTF8String],
+ };
+ NSLog(@"WELS_INFO: enc config file: %@", encCfg);
+ EncMain(sizeof(argv)/sizeof(argv[0]), (char**)&argv[0]);
+ statusText_.text = @"Status: Test Over";
+}
+
+- (NSString*) getPathForWrite {
+ NSArray * pathes = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
+ NSString * documentDirectory = [pathes objectAtIndex:0];
+ return documentDirectory;
+}
+
+
+@end
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/en.lproj/InfoPlist.strings
@@ -1,0 +1,2 @@
+/* Localized versions of Info.plist keys */
+
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/encDemo-Info.plist
@@ -1,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>en</string>
+ <key>CFBundleDisplayName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundleExecutable</key>
+ <string>${EXECUTABLE_NAME}</string>
+ <key>CFBundleIdentifier</key>
+ <string>cisco.${PRODUCT_NAME:rfc1034identifier}</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>1.0</string>
+ <key>LSRequiresIPhoneOS</key>
+ <true/>
+ <key>UIMainStoryboardFile</key>
+ <string>Main_iPhone</string>
+ <key>UIMainStoryboardFile~ipad</key>
+ <string>Main_iPad</string>
+ <key>UIRequiredDeviceCapabilities</key>
+ <array>
+ <string>armv7</string>
+ </array>
+ <key>UISupportedInterfaceOrientations</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+ <key>UISupportedInterfaceOrientations~ipad</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationPortraitUpsideDown</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+</dict>
+</plist>
--- /dev/null
+++ b/codec/build/iOS/enc/encDemo/encDemo/main.m
@@ -1,0 +1,43 @@
+/*!
+ * \copy
+ * Copyright (c) 2013, Cisco Systems
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+
+#import <UIKit/UIKit.h>
+
+#import "AppDelegate.h"
+
+int main(int argc, char * argv[])
+{
+ @autoreleasepool {
+ return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
+ }
+}
--- a/codec/build/iOS/enc/welsenc/welsenc.xcodeproj/project.pbxproj
+++ b/codec/build/iOS/enc/welsenc/welsenc.xcodeproj/project.pbxproj
@@ -603,9 +603,11 @@
DSTROOT = /tmp/welsenc.dst;
GCC_C_LANGUAGE_STANDARD = "compiler-default";
GCC_OPTIMIZATION_LEVEL = 3;
+ GCC_PREPROCESSOR_DEFINITIONS = "";
"GCC_PREPROCESSOR_DEFINITIONS[sdk=iphoneos*]" = (
APPLE_IOS,
HAVE_NEON,
+ NO_DYNAMIC_VP,
);
"GCC_PREPROCESSOR_DEFINITIONS[sdk=iphonesimulator*]" = APPLE_IOS;
HEADER_SEARCH_PATHS = (
@@ -631,9 +633,11 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
DSTROOT = /tmp/welsenc.dst;
GCC_C_LANGUAGE_STANDARD = "compiler-default";
+ GCC_PREPROCESSOR_DEFINITIONS = "";
"GCC_PREPROCESSOR_DEFINITIONS[sdk=iphoneos*]" = (
APPLE_IOS,
HAVE_NEON,
+ NO_DYNAMIC_VP,
);
"GCC_PREPROCESSOR_DEFINITIONS[sdk=iphonesimulator*]" = APPLE_IOS;
HEADER_SEARCH_PATHS = (
--- a/codec/console/enc/src/welsenc.cpp
+++ b/codec/console/enc/src/welsenc.cpp
@@ -502,9 +502,9 @@
if (iLayerRd > 0) {
if (strTag[0].empty())
continue;
- if (strTag[0].compare ("SourceWidth") == 0) {
+ if (strTag[0].compare ("FrameWidth") == 0) {
pDLayer->iVideoWidth = atoi (strTag[1].c_str());
- } else if (strTag[0].compare ("SourceHeight") == 0) {
+ } else if (strTag[0].compare ("FrameHeight") == 0) {
pDLayer->iVideoHeight = atoi (strTag[1].c_str());
} else if (strTag[0].compare ("FrameRateOut") == 0) {
pDLayer->fFrameRate = (float)atof (strTag[1].c_str());
@@ -1150,8 +1150,8 @@
/****************************************************************************
* main:
****************************************************************************/
-#if defined(ANDROID_NDK)
-int EncMain(int argc, char **argv)
+#if defined(ANDROID_NDK) || defined(APPLE_IOS)
+extern "C" int EncMain(int argc, char **argv)
#else
int main (int argc, char** argv)
#endif
--- a/codec/processing/build/iOS/.gitignore
+++ b/codec/processing/build/iOS/.gitignore
@@ -1,2 +1,3 @@
project.xcworkspace
xcuserdata
+.DS_Store
--- /dev/null
+++ b/testbin/welsenc_ios.cfg
@@ -1,0 +1,67 @@
+# Cisco Scalable H.264/AVC Extension Encoder Configuration File
+
+#============================== GENERAL ==============================
+SourceWidth 320 #input video width
+SourceHeight 192 #input video height
+InputFile ../res/CiscoVT2people_320x192_12fps.yuv # Input file
+OutputFile test.264 # Bitstream file
+MaxFrameRate 30 # Maximum frame rate [Hz]
+FramesToBeEncoded -1 # Number of frames (at input frame rate)
+
+TemporalLayerNum 3 # temporal layer number(1--4)
+IntraPeriod 0 # Intra Period ( multipler of GoP size or -1)
+EnableSpsPpsIDAddition 1
+
+EnableFrameCropping 1 # enable frame cropping flag
+
+#============================== LOOP FILTER ==============================
+LoopFilterDisableIDC 0 # Loop filter idc (0: on, 1: off,
+ # 2: on except for slice boundaries,
+ # 3: two stage. slice boundries on in second stage
+ # 4: Luma on but Chroma off (w.r.t. idc=0)
+ # 5: Luma on except on slice boundaries, but Chroma off in enh. layer (w.r.t. idc=2)
+ # 6: Luma on in two stage. slice boundries on in second stage, but Chroma off (w.r.t. idc=3)
+LoopFilterAlphaC0Offset 0 # AlphaOffset(-6..+6): valid range
+LoopFilterBetaOffset 0 # BetaOffset (-6..+6): valid range
+
+InterLayerLoopFilterDisableIDC 0 # filter idc for inter-layer deblocking (0: on, 1: off,
+ # 2: on except for slice boundaries,
+ # 3: two stage. slice boundries on in second stage
+ # 4: Luma on but Chroma off in enh. layer (w.r.t. idc=0)
+ # 5: Luma on except on slice boundaries, but Chroma off in enh. layer (w.r.t. idc=2)
+ # 6: Luma on in two stage. slice boundries on in second stage, but Chroma off (w.r.t. idc=3)
+InterLayerLoopFilterAlphaC0Offset 0 # AlphaOffset for inter-layer deblocking
+InterLayerLoopFilterBetaOffset 0 # BetaOffset for inter-layer deblocking
+
+#============================== SOFTWARE IMPLEMENTATION ==============================
+MultipleThreadIdc 1 # 0: auto(dynamic imp. internal encoder); 1: multiple threads imp. disabled; > 1: count number of threads;
+
+#============================== RATE CONTROL ==============================
+EnableRC 1 # ENABLE RC
+TargetBitrate 5000 # Unit: kbps, controled by EnableRC also
+EnableFrameSkip 1 #Enable Frame Skip
+
+#============================== DENOISE CONTROL ==============================
+EnableDenoise 0 # Enable Denoise (1: enable, 0: disable)
+
+#============================== SCENE CHANGE DETECTION CONTROL =======================
+EnableSceneChangeDetection 1 # Enable Scene Change Detection (1: enable, 0: disable)
+
+#============================== BACKGROUND DETECTION CONTROL ==============================
+EnableBackgroundDetection 1 # BGD control(1: enable, 0: disable)
+
+#============================== ADAPTIVE QUANTIZATION CONTROL =======================
+EnableAdaptiveQuantization 1 # Enable Adaptive Quantization (1: enable, 0: disable)
+
+#============================== LONG TERM REFERENCE CONTROL ==============================
+EnableLongTermReference 0 # Enable Long Term Reference (1: enable, 0: disable)
+LtrMarkPeriod 30 # Long Term Reference Marking Period
+
+#============================== LAYER DEFINITION ==============================
+PrefixNALAddingCtrl 0 # Control flag of adding prefix unit (0: off, 1: on)
+ # It shall always be on in SVC contexts (i.e. when there are CGS/MGS/spatial enhancement layers)
+ # Can be disabled when no inter spatial layer prediction in case of its value as 0
+//NumLayers 1 # Number of layers
+//LayerCfg layer0.cfg # Layer 0 configuration file
+//LayerCfg layer1.cfg # Layer 1 configuration file
+//LayerCfg layer2.cfg # Layer 2 configuration file