From 506bceade981796cfbc9b5a3f8715d4807428b1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D0=B5=D0=BC=20=D0=A1=D0=B5=D1=80=D0=B1?= =?UTF-8?q?=D0=B8=D0=BD?= < serbinartem@gmail.com> Date: Wed, 24 Jul 2013 14:44:45 +0300 Subject: [PATCH 1/5] Build Proj --- VideoPlayerKitSampleProject/.bundle/config | 3 + VideoPlayerKitSampleProject/Podfile | 2 +- VideoPlayerKitSampleProject/Podfile.lock | 45 +++++---- .../project.pbxproj | 66 +++++++++++++- .../xcschemes/VideoPlayerSample.xcscheme | 86 ++++++++++++++++++ .../xcschemes/VideoPlayerSample.xcscheme | 86 ++++++++++++++++++ .../xcschemes/xcschememanagement.plist | 27 ++++++ .../contents.xcworkspacedata | 1 + .../UserInterfaceState.xcuserstate | Bin 0 -> 21112 bytes .../xcdebugger/Breakpoints.xcbkptlist | 5 + 10 files changed, 292 insertions(+), 29 deletions(-) create mode 100644 VideoPlayerKitSampleProject/.bundle/config create mode 100644 VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcshareddata/xcschemes/VideoPlayerSample.xcscheme create mode 100644 VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcuserdata/aserbin.xcuserdatad/xcschemes/VideoPlayerSample.xcscheme create mode 100644 VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcuserdata/aserbin.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/contents.xcworkspacedata create mode 100644 VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist diff --git a/VideoPlayerKitSampleProject/.bundle/config b/VideoPlayerKitSampleProject/.bundle/config new file mode 100644 index 0000000..0fe692f --- /dev/null +++ b/VideoPlayerKitSampleProject/.bundle/config @@ -0,0 +1,3 @@ +--- +BUNDLE_DISABLE_SHARED_GEMS: "1" +BUNDLE_PATH: /Users/aserbin/Documents/Work/VideoPlayerKitMyGit/VideoPlayerKitSampleProject/cache diff --git a/VideoPlayerKitSampleProject/Podfile b/VideoPlayerKitSampleProject/Podfile index f8e6662..26ea323 100644 --- a/VideoPlayerKitSampleProject/Podfile +++ b/VideoPlayerKitSampleProject/Podfile @@ -2,4 +2,4 @@ platform :ios, '5.0' inhibit_all_warnings! -pod "VideoPlayerKit", :git => 'https://github.com/ign/VideoPlayerKit.git' \ No newline at end of file +pod "VideoPlayerKit", :git => 'https://github.com/aserbin/VideoPlayerKit.git' \ No newline at end of file diff --git a/VideoPlayerKitSampleProject/Podfile.lock b/VideoPlayerKitSampleProject/Podfile.lock index e449e81..5dd50a0 100644 --- a/VideoPlayerKitSampleProject/Podfile.lock +++ b/VideoPlayerKitSampleProject/Podfile.lock @@ -1,30 +1,29 @@ +PODS: + - cocoa-oauth (0.0.1): + - NSData+Base64 (~> 1.0) + - Facebook-iOS-SDK (3.1.1) + - NSData+Base64 (1.0.0) + - REComposeViewController (0.0.1) + - ShareThis (1.0.0): + - cocoa-oauth (= 0.0.1) + - Facebook-iOS-SDK (= 3.1.1) + - REComposeViewController (= 0.0.1) + - VideoPlayerKit (1.0.0): + - ShareThis (= 1.0.0) -COCOAPODS: 0.16.1 +DEPENDENCIES: + - VideoPlayerKit (from `https://github.com/aserbin/VideoPlayerKit.git`) -DEPENDENCIES: -- VideoPlayerKit (from `https://github.com/ign/VideoPlayerKit.git') +EXTERNAL SOURCES: + VideoPlayerKit: + :git: https://github.com/aserbin/VideoPlayerKit.git -PODS: -- Facebook-iOS-SDK (3.1.1) -- NSData+Base64 (1.0.0) -- REComposeViewController (0.0.1) -- ShareThis (1.0.0): - - Facebook-iOS-SDK (= 3.1.1) - - REComposeViewController (= 0.0.1) - - cocoa-oauth (= 0.0.1) -- VideoPlayerKit (1.0.0): - - ShareThis (= 1.0.0) -- cocoa-oauth (0.0.1): - - NSData+Base64 (~> 1.0) - -SPEC CHECKSUMS: - NSData+Base64: 8b910cb8a64f45daec6fb15936c36a9a911c57ca - Facebook-iOS-SDK: 5fc068ebfd8c8c9b0fad476bc36dbbf1fffeebc8 +SPEC CHECKSUMS: cocoa-oauth: 8f4c8b77c77ac660de37f8125557c4ec09b0118a + Facebook-iOS-SDK: 5fc068ebfd8c8c9b0fad476bc36dbbf1fffeebc8 + NSData+Base64: 36c4e5b6479259c1a68866ccd2a8dd385c9744f7 REComposeViewController: 346eb738a68ddcce77b3d771695a91c7af1a5701 ShareThis: 9df4a93ea65a676c9e852588d98d35e4831b7636 - VideoPlayerKit: df22855ccb0a286e7b9c20a439ebd73b7c78d00c + VideoPlayerKit: 8fd3d6feb81303cf971426aff830c1e9a6984247 -EXTERNAL SOURCES: - VideoPlayerKit: - :git: https://github.com/ign/VideoPlayerKit.git +COCOAPODS: 0.22.2 diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/project.pbxproj b/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/project.pbxproj index 20dbcdf..3ecf91d 100644 --- a/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/project.pbxproj +++ b/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/project.pbxproj @@ -19,6 +19,19 @@ 76D67AF5165419CA00CAC69A /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 76D67AF4165419CA00CAC69A /* Default@2x.png */; }; 76D67AF7165419CA00CAC69A /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 76D67AF6165419CA00CAC69A /* Default-568h@2x.png */; }; 76D67B0216541A0200CAC69A /* VideoPlayerSampleViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 76D67B0116541A0200CAC69A /* VideoPlayerSampleViewController.m */; }; + EBB14C79170BB6730007249C /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C78170BB6730007249C /* AVFoundation.framework */; }; + EBB14C7B170BB67A0007249C /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C7A170BB67A0007249C /* AudioToolbox.framework */; }; + EBB14C7D170BB6890007249C /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C7C170BB6890007249C /* CoreLocation.framework */; }; + EBB14C7F170BB6930007249C /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C7E170BB6930007249C /* CoreMedia.framework */; }; + EBB14C81170BB69B0007249C /* MediaPlayer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C80170BB69B0007249C /* MediaPlayer.framework */; }; + EBB14C83170BB6A10007249C /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C82170BB6A10007249C /* MessageUI.framework */; }; + EBB14C85170BB6A70007249C /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C84170BB6A70007249C /* QuartzCore.framework */; }; + EBB14C87170BB6AC0007249C /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C86170BB6AC0007249C /* Security.framework */; }; + EBB14C89170BB6B10007249C /* Twitter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C88170BB6B10007249C /* Twitter.framework */; }; + EBB14C8B170BB6B70007249C /* Accounts.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C8A170BB6B70007249C /* Accounts.framework */; }; + EBB14C8D170BB6BC0007249C /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C8C170BB6BC0007249C /* AdSupport.framework */; }; + EBB14C8F170BB6C30007249C /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C8E170BB6C30007249C /* Social.framework */; }; + EBB14C91170BB6D90007249C /* libsqlite3.0.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = EBB14C90170BB6D90007249C /* libsqlite3.0.dylib */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -40,6 +53,19 @@ 76D67AF6165419CA00CAC69A /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = ""; }; 76D67B0016541A0200CAC69A /* VideoPlayerSampleViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VideoPlayerSampleViewController.h; sourceTree = ""; }; 76D67B0116541A0200CAC69A /* VideoPlayerSampleViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VideoPlayerSampleViewController.m; sourceTree = ""; }; + EBB14C78170BB6730007249C /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; + EBB14C7A170BB67A0007249C /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; + EBB14C7C170BB6890007249C /* CoreLocation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = System/Library/Frameworks/CoreLocation.framework; sourceTree = SDKROOT; }; + EBB14C7E170BB6930007249C /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; }; + EBB14C80170BB69B0007249C /* MediaPlayer.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MediaPlayer.framework; path = System/Library/Frameworks/MediaPlayer.framework; sourceTree = SDKROOT; }; + EBB14C82170BB6A10007249C /* MessageUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MessageUI.framework; path = System/Library/Frameworks/MessageUI.framework; sourceTree = SDKROOT; }; + EBB14C84170BB6A70007249C /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + EBB14C86170BB6AC0007249C /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; }; + EBB14C88170BB6B10007249C /* Twitter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Twitter.framework; path = System/Library/Frameworks/Twitter.framework; sourceTree = SDKROOT; }; + EBB14C8A170BB6B70007249C /* Accounts.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accounts.framework; path = System/Library/Frameworks/Accounts.framework; sourceTree = SDKROOT; }; + EBB14C8C170BB6BC0007249C /* AdSupport.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdSupport.framework; path = System/Library/Frameworks/AdSupport.framework; sourceTree = SDKROOT; }; + EBB14C8E170BB6C30007249C /* Social.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Social.framework; path = System/Library/Frameworks/Social.framework; sourceTree = SDKROOT; }; + EBB14C90170BB6D90007249C /* libsqlite3.0.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libsqlite3.0.dylib; path = usr/lib/libsqlite3.0.dylib; sourceTree = SDKROOT; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -47,9 +73,22 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + EBB14C91170BB6D90007249C /* libsqlite3.0.dylib in Frameworks */, + EBB14C8F170BB6C30007249C /* Social.framework in Frameworks */, + EBB14C8D170BB6BC0007249C /* AdSupport.framework in Frameworks */, + EBB14C8B170BB6B70007249C /* Accounts.framework in Frameworks */, + EBB14C89170BB6B10007249C /* Twitter.framework in Frameworks */, + EBB14C87170BB6AC0007249C /* Security.framework in Frameworks */, + EBB14C85170BB6A70007249C /* QuartzCore.framework in Frameworks */, + EBB14C83170BB6A10007249C /* MessageUI.framework in Frameworks */, + EBB14C81170BB69B0007249C /* MediaPlayer.framework in Frameworks */, + EBB14C7F170BB6930007249C /* CoreMedia.framework in Frameworks */, + EBB14C7D170BB6890007249C /* CoreLocation.framework in Frameworks */, + 76D67AE5165419CA00CAC69A /* CoreGraphics.framework in Frameworks */, + EBB14C7B170BB67A0007249C /* AudioToolbox.framework in Frameworks */, + EBB14C79170BB6730007249C /* AVFoundation.framework in Frameworks */, 76D67AE1165419CA00CAC69A /* UIKit.framework in Frameworks */, 76D67AE3165419CA00CAC69A /* Foundation.framework in Frameworks */, - 76D67AE5165419CA00CAC69A /* CoreGraphics.framework in Frameworks */, 44545B2C7C044D2C94C8F495 /* libPods.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -60,6 +99,19 @@ 76D67AD1165419CA00CAC69A = { isa = PBXGroup; children = ( + EBB14C90170BB6D90007249C /* libsqlite3.0.dylib */, + EBB14C8E170BB6C30007249C /* Social.framework */, + EBB14C8C170BB6BC0007249C /* AdSupport.framework */, + EBB14C8A170BB6B70007249C /* Accounts.framework */, + EBB14C88170BB6B10007249C /* Twitter.framework */, + EBB14C86170BB6AC0007249C /* Security.framework */, + EBB14C84170BB6A70007249C /* QuartzCore.framework */, + EBB14C82170BB6A10007249C /* MessageUI.framework */, + EBB14C80170BB69B0007249C /* MediaPlayer.framework */, + EBB14C7E170BB6930007249C /* CoreMedia.framework */, + EBB14C7C170BB6890007249C /* CoreLocation.framework */, + EBB14C7A170BB67A0007249C /* AudioToolbox.framework */, + EBB14C78170BB6730007249C /* AVFoundation.framework */, 76D67AE6165419CA00CAC69A /* VideoPlayerSample */, 76D67ADF165419CA00CAC69A /* Frameworks */, 76D67ADD165419CA00CAC69A /* Products */, @@ -240,6 +292,9 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 6.0; + LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/Pods/build/Debug-iphonesimulator\""; + PODS_BUILD_HEADERS_SEARCH_PATHS = "\"${PODS_ROOT}/BuildHeaders\" \"${PODS_ROOT}/BuildHeaders/Facebook-iOS-SDK\" \"${PODS_ROOT}/BuildHeaders/Facebook-iOS-SDK/FacebookSDK\" \"${PODS_ROOT}/BuildHeaders/NSData+Base64\" \"${PODS_ROOT}/BuildHeaders/REComposeViewController\" \"${PODS_ROOT}/BuildHeaders/ShareThis\" \"${PODS_ROOT}/BuildHeaders/VideoPlayerKit\" \"${PODS_ROOT}/BuildHeaders/cocoa-oauth\""; + PODS_ROOT = "${SRCROOT}/pods"; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; }; @@ -261,7 +316,10 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 6.0; + LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/Pods/build/Debug-iphonesimulator\""; OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; + PODS_BUILD_HEADERS_SEARCH_PATHS = "\"${PODS_ROOT}/BuildHeaders\" \"${PODS_ROOT}/BuildHeaders/Facebook-iOS-SDK\" \"${PODS_ROOT}/BuildHeaders/Facebook-iOS-SDK/FacebookSDK\" \"${PODS_ROOT}/BuildHeaders/NSData+Base64\" \"${PODS_ROOT}/BuildHeaders/REComposeViewController\" \"${PODS_ROOT}/BuildHeaders/ShareThis\" \"${PODS_ROOT}/BuildHeaders/VideoPlayerKit\" \"${PODS_ROOT}/BuildHeaders/cocoa-oauth\""; + PODS_ROOT = "${SRCROOT}/pods"; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; @@ -275,11 +333,10 @@ FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)\"", - "\"$(SRCROOT)/../../../Desktop/Cocoa_StreamStitcherDemo/StreamStitcherDemo\"", ); GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "VideoPlayerSample/VideoPlayerSample-Prefix.pch"; - HEADER_SEARCH_PATHS = "${PODS_HEADERS_SEARCH_PATHS}"; + HEADER_SEARCH_PATHS = "$(PODS_BUILD_HEADERS_SEARCH_PATHS)"; INFOPLIST_FILE = "VideoPlayerSample/VideoPlayerSample-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 5.1; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -295,11 +352,10 @@ FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)\"", - "\"$(SRCROOT)/../../../Desktop/Cocoa_StreamStitcherDemo/StreamStitcherDemo\"", ); GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "VideoPlayerSample/VideoPlayerSample-Prefix.pch"; - HEADER_SEARCH_PATHS = "${PODS_HEADERS_SEARCH_PATHS}"; + HEADER_SEARCH_PATHS = "$(PODS_BUILD_HEADERS_SEARCH_PATHS)"; INFOPLIST_FILE = "VideoPlayerSample/VideoPlayerSample-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 5.1; PRODUCT_NAME = "$(TARGET_NAME)"; diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcshareddata/xcschemes/VideoPlayerSample.xcscheme b/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcshareddata/xcschemes/VideoPlayerSample.xcscheme new file mode 100644 index 0000000..d0f73f8 --- /dev/null +++ b/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcshareddata/xcschemes/VideoPlayerSample.xcscheme @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcuserdata/aserbin.xcuserdatad/xcschemes/VideoPlayerSample.xcscheme b/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcuserdata/aserbin.xcuserdatad/xcschemes/VideoPlayerSample.xcscheme new file mode 100644 index 0000000..d0f73f8 --- /dev/null +++ b/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcuserdata/aserbin.xcuserdatad/xcschemes/VideoPlayerSample.xcscheme @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcuserdata/aserbin.xcuserdatad/xcschemes/xcschememanagement.plist b/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcuserdata/aserbin.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..08eeac0 --- /dev/null +++ b/VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/xcuserdata/aserbin.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,27 @@ + + + + + SchemeUserState + + VideoPlayerSample.xcscheme + + orderHint + 1 + + VideoPlayerSample.xcscheme_^#shared#^_ + + orderHint + 0 + + + SuppressBuildableAutocreation + + 76D67ADB165419CA00CAC69A + + primary + + + + + diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/contents.xcworkspacedata b/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..628a292 --- /dev/null +++ b/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/contents.xcworkspacedata @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/UserInterfaceState.xcuserstate b/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..80e5c4151b6f74ed85ddd72f6fcc467084681310 GIT binary patch literal 21112 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 abkUDRmy50nb{C>3@l&D_KRthouKf>AC|0%r literal 0 HcmV?d00001 diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist b/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist new file mode 100644 index 0000000..5664a6d --- /dev/null +++ b/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist @@ -0,0 +1,5 @@ + + + From ea9147170aab2464138980e2f8a68e2de81e8083 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D0=B5=D0=BC=20=D0=A1=D0=B5=D1=80=D0=B1?= =?UTF-8?q?=D0=B8=D0=BD?= < serbinartem@gmail.com> Date: Wed, 24 Jul 2013 14:48:44 +0300 Subject: [PATCH 2/5] Last --- .DS_Store | Bin 6148 -> 0 bytes VideoPlayerKitSampleProject/.DS_Store | Bin 6148 -> 15364 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 9b8ae31394f4842c396690d290a8e97a7235ce30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHK!AiqG5S?wKCa92$=yCB}q+)A(@DO4Jk3tJQSkZ(O8YoR^QhJEdc<^`p9KXkz z-L+UO^d_P+u>0Qb%p{u!+1&vE;m@N}02cskY=nZy8l&m8u8Ij3h}c{R7wI${Cn1jC zjPJJtt=)o4NFajY*Y$_fahzuL`n#x9t*z}H+i~o@K|h{E$-++;j)q|{ zyHh+1vU%zUGv&DnvJrX|?5yN7w+IIqcOyIIs^-fGorvT@cf3dgn` z_tic)KDoH=1^Hv~^sHqRv|6%#4a@#z$(XPLtN<&(3a|p36fmcWy}K!p{j2~h@b46$ z{Xt?Q^bD37)z*QXDgh8JoK}XMY6;4b20eqNM)aTworh1V^slq{c8o6f$Sb>94V*vOX3*k87wu@Q)phLBl1N+3BnyK@B<2b E06qjl82|tP diff --git a/VideoPlayerKitSampleProject/.DS_Store b/VideoPlayerKitSampleProject/.DS_Store index d2d7ead2635f19231f8b3bd0f84251c5f108b672..9303672fc1e29665331eea0fa8b9f1728bc03851 100644 GIT binary patch literal 15364 zcmeHMTWl0n7(V}Lp))MnDW%e7cX4R}TP$TufmST-(k=+Jq}y&wuh4FHhIU}OQ+Ku( zfoem%MSU?|5?=HHgV6^~3>P02qc$2%jOzu(2Ng9YMvWTcgNgoUX0~p3K`NJo=sC%p z|LplMXU@0hJGUW(K>es(L5P0_^ObL(0hj870xw^ZW3KZTw)S#jqX-$fNNHA@3LL?>Ft{kq8On zGn734+x~t2I@G6VQ+=bN>6=Z0M8~#`fpKGGK+^}X_T_;QO*P^^-^W0+vgggu5kx^) z*xR8-WqrI}AC1aJPiROV52>;;5RUCJ%kgl0)Tj@~OieHxA3}{;Zqs!Q%e}UBhbqU1 z`lP}`hc;AImU%1JRZo_A4^>t9%Dn3n}zUOY=@j0LSOW;G?d_}NSs7dRY_o7;DHEa~j(lcZ5YX;rjv zTpd#a;kaV-Nx24gc}GN#24l*Ys*LwZd6BRd8AT&yi>8ItgNo4+(Y4XxsA(OE>6#YQ z4K=Rn(XP(8G7)DsEYK`fXSbop;ti%_r;70{t3|Ah<`L#>>{en1N>LPF%q{e;TC@Jn z`t8jLDQ{7}qrkDGV@x&F0ZnNiXV7+qjffJJ)#zY1{yovSx=&SNVjh%4{D7`ZFXO}KBKUq2{h>85=MXqAcvSsNWJ&)z6wW1(`^TEWJ!jI78^FYs;V6sO|@&`0Y#H!5u2&m?5eHHH0c<#K$04n zQA5DBwII`|GolXvh_5OguyEwao2 zDE1%jH^*eLzr>V;4L&m!`+ZhHVoR-u_((n3P41ikv2A$h+i2 za+Z8eek4DUU&ycIcL2zNJaED)D1lN~4V7>QG(a;1p#{33ANGR|cS8&eI1ESNF?bxF zfG6Q8cm|$>m*51Pg46ISybf=}2XGcXhjZ`+d<#Fo1^AN^3UmRL=u%orZ>ME+4c$m< z=r$UpEwq*PP?-+XG3(uFl7HRS?_^FVu=F?oj4^u}$*R2s$2z;ZrJjx(mt$vh8M77_ z+_I!_dCA(1n*)ulGvmhOQ0l-pN4GUR&0(AzhH0Z{7ON6A1-(hmr8BD?`JhY)jI>ft z!d+CnV&$?-+9bUtg3NK2u6BFMJmu-31f;M;6HZ@++fnJ+kggVym{L~4Syk=!Y;x43 zs|BQ-G%w+-t#doJI2zK`B9d0hPB^!2b9=TscBZQZ3UjA>!_dB(?;4x_oT6^H_0cveqSo9W-Z*cro{~7 z#zL{Erbh>{mN7IBXBHI~bOo37Abt`E;~b-q7ztr%7-t;(Nbt`~y?7m#`gPT~ysz_B zrZ4q^C{6v_rG5?_oV5uc=RTSnEU6$XcbOo&E)OQ|-zISH#r9AN!W+ZVer>P@#W^bxTKVpBr`Ca^*miO`GS-i8%y6aE@tQ8 o5M%}#1q1@zK*AMd#m2(#%#-<5JV6#RFhMK_xrbqMJkK0v04`J^761SM From 5362a8727f93120321ec3eea32eafea21b3b2cc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D0=B5=D0=BC=20=D0=A1=D0=B5=D1=80=D0=B1?= =?UTF-8?q?=D0=B8=D0=BD?= < serbinartem@gmail.com> Date: Wed, 24 Jul 2013 14:51:24 +0300 Subject: [PATCH 3/5] Implemented frame mode --- Code/VideoPlayerKit.m | 107 ++++++++++++------ .../VideoPlayerSample/VideoPlayerSampleView.h | 4 +- .../VideoPlayerSample/VideoPlayerSampleView.m | 23 +++- .../VideoPlayerSampleViewController.h | 2 + .../VideoPlayerSampleViewController.m | 17 ++- 5 files changed, 108 insertions(+), 45 deletions(-) diff --git a/Code/VideoPlayerKit.m b/Code/VideoPlayerKit.m index f1fa1f7..518d229 100644 --- a/Code/VideoPlayerKit.m +++ b/Code/VideoPlayerKit.m @@ -31,6 +31,7 @@ @interface VideoPlayerKit () @property (nonatomic) CGRect previousBounds; @property (nonatomic) BOOL hideTopViewWithControls; + @end @implementation VideoPlayerKit { @@ -125,6 +126,7 @@ - (void)loadView self.videoPlayerView = [[VideoPlayerView alloc] initWithFrame:CGRectZero]; } self.view = self.videoPlayerView; + self.view.backgroundColor = [UIColor blackColor]; } - (void)viewDidLoad @@ -188,7 +190,7 @@ - (void)shareButtonHandler } } -- (void)playVideoWithTitle:(NSString *)title URL:(NSURL *)url videoID:(NSString *)videoID shareURL:(NSURL *)shareURL isStreaming:(BOOL)streaming playInFullScreen:(BOOL)playInFullScreen +- (void)playVideoWithTitle:(NSString *)title URL:(NSURL *)url videoID:(NSString *)videoID shareURL:(NSURL *)shareURL isStreaming:(BOOL)streaming playInFullScreen:(BOOL)playInFullScreen isAlwaysFullscreen:(BOOL)isAlwaysFullscreen { [self.videoPlayer pause]; @@ -225,10 +227,22 @@ - (void)playVideoWithTitle:(NSString *)title URL:(NSURL *)url videoID:(NSString [self syncPlayPauseButtons]; + self.isAlwaysFullscreen = isAlwaysFullscreen; + if (playInFullScreen) { - self.isAlwaysFullscreen = YES; [self launchFullScreen]; } + else + { + self.fullScreenModeToggled = YES; + self.previousBounds = self.view.bounds; + [self minimizeVideo]; + } +} + +- (void)playVideoWithTitle:(NSString *)title URL:(NSURL *)url videoID:(NSString *)videoID shareURL:(NSURL *)shareURL isStreaming:(BOOL)streaming playInFullScreen:(BOOL)playInFullScreen +{ + [self playVideoWithTitle:title URL:url videoID:videoID shareURL:shareURL isStreaming:streaming playInFullScreen:playInFullScreen isAlwaysFullscreen:YES]; } - (void)showCannotFetchStreamError @@ -264,25 +278,33 @@ - (void)launchFullScreen { if (!self.fullScreenModeToggled) { self.fullScreenModeToggled = YES; - - if (!self.isAlwaysFullscreen) { - [self hideControlsAnimated:YES]; - } + +// //hide controls +// if (!self.isAlwaysFullscreen) { +// [self hideControlsAnimated:YES]; +// } [self syncFullScreenButton:[[UIApplication sharedApplication] statusBarOrientation]]; - if (!self.fullscreenViewController) { - self.fullscreenViewController = [[FullScreenViewController alloc] init]; - self.fullscreenViewController.allowPortraitFullscreen = self.allowPortraitFullscreen; + if (self.isAlwaysFullscreen) + { + if (!self.fullscreenViewController) { + self.fullscreenViewController = [[FullScreenViewController alloc] init]; + self.fullscreenViewController.allowPortraitFullscreen = self.allowPortraitFullscreen; + } + + [self.videoPlayerView setFullscreen:YES]; + [self.fullscreenViewController.view addSubview:self.videoPlayerView]; + } + else + { + [self.videoPlayerView setFullscreen:YES]; } - - [self.videoPlayerView setFullscreen:YES]; - [self.fullscreenViewController.view addSubview:self.videoPlayerView]; if (self.topView) { [self.topView removeFromSuperview]; - [self.fullscreenViewController.view addSubview:self.topView]; + [self.videoPlayerView addSubview:self.topView]; } if (self.isAlwaysFullscreen) { @@ -299,8 +321,9 @@ - (void)launchFullScreen completion:nil]; } - [[UIApplication sharedApplication].keyWindow.rootViewController presentViewController:self.fullscreenViewController animated:YES completion:^{ - if (self.isAlwaysFullscreen) { + if (self.isAlwaysFullscreen) + { + [[UIApplication sharedApplication].keyWindow.rootViewController presentViewController:self.fullscreenViewController animated:YES completion:^{ self.videoPlayerView.frame = CGRectMake(self.videoPlayerView.superview.bounds.size.width / 2, self.videoPlayerView.superview.bounds.size.height / 2, 0, 0); self.previousBounds = CGRectMake(self.videoPlayerView.superview.bounds.size.width / 2, self.videoPlayerView.superview.bounds.size.height / 2, 0, 0); [self.videoPlayerView setCenter:CGPointMake( self.videoPlayerView.superview.bounds.size.width / 2, self.videoPlayerView.superview.bounds.size.height / 2)]; @@ -313,8 +336,18 @@ - (void)launchFullScreen completion:nil]; self.videoPlayerView.frame = self.videoPlayerView.superview.bounds; - } - + + if (self.topView) { + self.topView.frame = CGRectMake(0, 0, self.videoPlayerView.frame.size.width, self.topView.frame.size.height); + } + + if ([self.delegate respondsToSelector:@selector(setFullScreenToggled:)]) { + [self.delegate setFullScreenToggled:self.fullScreenModeToggled]; + } + }]; + } + else + { if (self.topView) { self.topView.frame = CGRectMake(0, 0, self.videoPlayerView.frame.size.width, self.topView.frame.size.height); } @@ -322,7 +355,8 @@ - (void)launchFullScreen if ([self.delegate respondsToSelector:@selector(setFullScreenToggled:)]) { [self.delegate setFullScreenToggled:self.fullScreenModeToggled]; } - }]; + + } } } @@ -331,11 +365,12 @@ - (void)minimizeVideo if (self.fullScreenModeToggled) { self.fullScreenModeToggled = NO; [self.videoPlayerView setFullscreen:NO]; - [self hideControlsAnimated:NO]; +// [self hideControlsAnimated:NO]; [self syncFullScreenButton:self.interfaceOrientation]; if (self.topView) { - [self.containingViewController.view addSubview:self.topView]; + [self.topView removeFromSuperview]; + [self.videoPlayerView addSubview:self.topView]; } if (self.isAlwaysFullscreen) { @@ -353,6 +388,18 @@ - (void)minimizeVideo [self.videoPlayerView removeFromSuperview]; }]; + [[UIApplication sharedApplication].keyWindow.rootViewController dismissViewControllerAnimated:self.isAlwaysFullscreen completion:^{ + + if (!self.isAlwaysFullscreen) { + [self showControls]; + } + [[UIApplication sharedApplication] setStatusBarHidden:NO + withAnimation:UIStatusBarAnimationFade]; + + if ([self.delegate respondsToSelector:@selector(setFullScreenToggled:)]) { + [self.delegate setFullScreenToggled:self.fullScreenModeToggled]; + } + }]; } else { [UIView animateWithDuration:0.45f delay:0.0f @@ -364,25 +411,17 @@ - (void)minimizeVideo if (showShareOptions) { [self presentShareOptions]; } + if (self.topView) { + self.topView.frame = CGRectMake(0, 0, self.videoPlayerView.frame.size.width, self.topView.frame.size.height); + } }]; [self.videoPlayerView removeFromSuperview]; [self.containingViewController.view addSubview:self.videoPlayerView]; } - - - [[UIApplication sharedApplication].keyWindow.rootViewController dismissViewControllerAnimated:self.isAlwaysFullscreen completion:^{ - - if (!self.isAlwaysFullscreen) { - [self showControls]; - } - [[UIApplication sharedApplication] setStatusBarHidden:NO - withAnimation:UIStatusBarAnimationFade]; - - if ([self.delegate respondsToSelector:@selector(setFullScreenToggled:)]) { - [self.delegate setFullScreenToggled:self.fullScreenModeToggled]; - } - }]; + if (self.topView) { + self.topView.frame = CGRectMake(0, 0, self.videoPlayerView.frame.size.width, self.topView.frame.size.height); + } } } diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.h b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.h index 1d238a7..43ec6da 100644 --- a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.h +++ b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.h @@ -4,7 +4,9 @@ @interface VideoPlayerSampleView : UIView -@property (nonatomic, readonly, strong) UIButton *playButton; +@property (nonatomic, readonly, strong) UIButton *playinFullScreenButton; +@property (nonatomic, readonly, strong) UIButton *playInFrameButton; +@property (nonatomic, readonly, strong) UIButton *stopButton; - (id)initWithTopView:(UIView *)topView videoPlayerView:(UIView *)videoPlayerView; @end diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.m b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.m index 1cedac0..020b704 100644 --- a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.m +++ b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.m @@ -6,7 +6,9 @@ @interface VideoPlayerSampleView() @property (nonatomic, weak) UIView *topView; @property (nonatomic, weak) UIView *videoPlayerView; -@property (nonatomic, readwrite, strong) UIButton *playButton; +@property (nonatomic, readwrite, strong) UIButton *playinFullScreenButton; +@property (nonatomic, readwrite, strong) UIButton *playInFrameButton; +@property (nonatomic, readwrite, strong) UIButton *stopButton; @end @@ -15,10 +17,14 @@ @implementation VideoPlayerSampleView - (id)initWithTopView:(UIView *)topView videoPlayerView:(UIView *)videoPlayerView { if ((self = [super init])) { - self.playButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; - [self.playButton setTitle:@"Play Video" forState:UIControlStateNormal]; - [self addSubview:self.playButton]; + self.playinFullScreenButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; + [self.playinFullScreenButton setTitle:@"Full screen" forState:UIControlStateNormal]; + [self addSubview:self.playinFullScreenButton]; self.backgroundColor = [UIColor whiteColor]; + + self.playInFrameButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; + [self.playInFrameButton setTitle:@"In frame" forState:UIControlStateNormal]; + [self addSubview:self.playInFrameButton]; } return self; @@ -28,11 +34,16 @@ - (void)layoutSubviews { [super layoutSubviews]; CGRect bounds = self.bounds; - self.playButton.frame = CGRectMake((bounds.size.width - 100)/2.0, - (bounds.size.height - 50)/2.0, + self.playinFullScreenButton.frame = CGRectMake(bounds.size.width/4.0 - 50, + (bounds.size.height - 150), 100, 50); + self.playInFrameButton.frame = CGRectMake(bounds.size.width/4.0 * 3 - 50, + (bounds.size.height - 150), + 100, + 50); + } @end diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.h b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.h index 929e8ea..f1d3016 100644 --- a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.h +++ b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.h @@ -7,4 +7,6 @@ @property (nonatomic) BOOL fullScreenToggled; +@property NSURL *address; + @end diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.m b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.m index 300b078..eb94c82 100644 --- a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.m +++ b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.m @@ -43,25 +43,34 @@ - (void)fullScreen - (void)loadView { self.videoPlayerSampleView = [[VideoPlayerSampleView alloc] initWithTopView:nil videoPlayerView:nil]; - [self.videoPlayerSampleView.playButton addTarget:self action:@selector(playVideo) forControlEvents:UIControlEventTouchUpInside]; + [self.videoPlayerSampleView.playinFullScreenButton addTarget:self action:@selector(playVideo:) forControlEvents:UIControlEventTouchUpInside]; + [self.videoPlayerSampleView.playInFrameButton addTarget:self action:@selector(playVideo:) forControlEvents:UIControlEventTouchUpInside]; [self setView:self.videoPlayerSampleView]; } -- (void)playVideo +- (void)playVideo:(id)owner { NSURL *url = [NSURL URLWithString:@"http://ignhdvod-f.akamaihd.net/i/assets.ign.com/videos/zencoder/,416/d4ff0368b5e4a24aee0dab7703d4123a-110000,640/d4ff0368b5e4a24aee0dab7703d4123a-500000,640/d4ff0368b5e4a24aee0dab7703d4123a-1000000,960/d4ff0368b5e4a24aee0dab7703d4123a-2500000,1280/d4ff0368b5e4a24aee0dab7703d4123a-3000000,-1354660143-w.mp4.csmil/master.m3u8"]; +// NSURL *url = [NSURL URLWithString:@"http://10.0.0.1/videohog/Ahfuck.mp4"]; + if (!self.videoPlayerViewController) { - self.videoPlayerViewController = [VideoPlayerKit videoPlayerWithContainingViewController:self optionalTopView:_topView hideTopViewWithControls:YES]; + self.videoPlayerViewController = [VideoPlayerKit videoPlayerWithContainingViewController:self optionalTopView:self.topView hideTopViewWithControls:YES]; // Need to set edge inset if top view is inserted [self.videoPlayerViewController setControlsEdgeInsets:UIEdgeInsetsMake(self.topView.frame.size.height, 0, 0, 0)]; self.videoPlayerViewController.delegate = self; self.videoPlayerViewController.allowPortraitFullscreen = YES; } + else + { + [self.videoPlayerViewController.view removeFromSuperview]; + } [self.view addSubview:self.videoPlayerViewController.view]; - [self.videoPlayerViewController playVideoWithTitle:@"Title" URL:url videoID:nil shareURL:nil isStreaming:NO playInFullScreen:YES]; + self.videoPlayerViewController.view.frame = CGRectMake(0, 0, self.view.bounds.size.width , self.view.bounds.size.height/2); + + [self.videoPlayerViewController playVideoWithTitle:@"Title" URL:url videoID:nil shareURL:nil isStreaming:NO playInFullScreen:owner == self.videoPlayerSampleView.playinFullScreenButton isAlwaysFullscreen:owner == self.videoPlayerSampleView.playinFullScreenButton]; } - (void)viewDidLoad From 65325e6c11c9485a4058cbe7aafc52221100b1fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D0=B5=D0=BC=20=D0=A1=D0=B5=D1=80=D0=B1?= =?UTF-8?q?=D0=B8=D0=BD?= < serbinartem@gmail.com> Date: Wed, 24 Jul 2013 15:08:48 +0300 Subject: [PATCH 4/5] Fixed mistake in last commit --- Code/VideoPlayerKit.h | 1 + Code/VideoPlayerKit.m | 6 ------ VideoPlayerKitSampleProject/.DS_Store | Bin 15364 -> 15364 bytes .../UserInterfaceState.xcuserstate | Bin 0 -> 11053 bytes .../UserInterfaceState.xcuserstate | Bin 21112 -> 23353 bytes .../xcdebugger/Breakpoints.xcbkptlist | 9 +++++++++ .../VideoPlayerSample/VideoPlayerSampleView.h | 3 +-- .../VideoPlayerSample/VideoPlayerSampleView.m | 11 +++++------ .../VideoPlayerSampleViewController.m | 4 ++-- 9 files changed, 18 insertions(+), 16 deletions(-) create mode 100644 VideoPlayerKitSampleProject/VideoPlayerSample.xcodeproj/project.xcworkspace/xcuserdata/aserbin.xcuserdatad/UserInterfaceState.xcuserstate diff --git a/Code/VideoPlayerKit.h b/Code/VideoPlayerKit.h index 331e425..0ad0465 100644 --- a/Code/VideoPlayerKit.h +++ b/Code/VideoPlayerKit.h @@ -17,6 +17,7 @@ @property (readwrite, strong) AVPlayer *videoPlayer; - (void)playVideoWithTitle:(NSString *)title URL:(NSURL *)url videoID:(NSString *)videoID shareURL:(NSURL *)shareURL isStreaming:(BOOL)streaming playInFullScreen:(BOOL)playInFullScreen; +- (void)playVideoWithTitle:(NSString *)title URL:(NSURL *)url videoID:(NSString *)videoID shareURL:(NSURL *)shareURL isStreaming:(BOOL)streaming playInFullScreen:(BOOL)playInFullScreen isAlwaysFullscreen:(BOOL)isAlwaysFullscreen - (void)syncFullScreenButton:(UIInterfaceOrientation)toInterfaceOrientation; - (void)showCannotFetchStreamError; - (void)launchFullScreen; diff --git a/Code/VideoPlayerKit.m b/Code/VideoPlayerKit.m index 518d229..8dd00e5 100644 --- a/Code/VideoPlayerKit.m +++ b/Code/VideoPlayerKit.m @@ -278,11 +278,6 @@ - (void)launchFullScreen { if (!self.fullScreenModeToggled) { self.fullScreenModeToggled = YES; - -// //hide controls -// if (!self.isAlwaysFullscreen) { -// [self hideControlsAnimated:YES]; -// } [self syncFullScreenButton:[[UIApplication sharedApplication] statusBarOrientation]]; @@ -365,7 +360,6 @@ - (void)minimizeVideo if (self.fullScreenModeToggled) { self.fullScreenModeToggled = NO; [self.videoPlayerView setFullscreen:NO]; -// [self hideControlsAnimated:NO]; [self syncFullScreenButton:self.interfaceOrientation]; if (self.topView) { diff --git a/VideoPlayerKitSampleProject/.DS_Store b/VideoPlayerKitSampleProject/.DS_Store index 9303672fc1e29665331eea0fa8b9f1728bc03851..c2f86959203a9ba1cff48fe624008cb7d0a8cbba 100644 GIT binary patch delta 61 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 literal 0 HcmV?d00001 diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/UserInterfaceState.xcuserstate b/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/UserInterfaceState.xcuserstate index 80e5c4151b6f74ed85ddd72f6fcc467084681310..f340f5fbeedda7a3cb793fe64a0867c03213d2ab 100644 GIT binary patch literal 23353 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 Mv<<(F-+9mf2h9+X + + + + diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.h b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.h index 43ec6da..16d2928 100644 --- a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.h +++ b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.h @@ -4,9 +4,8 @@ @interface VideoPlayerSampleView : UIView -@property (nonatomic, readonly, strong) UIButton *playinFullScreenButton; +@property (nonatomic, readonly, strong) UIButton *playInFullScreenButton; @property (nonatomic, readonly, strong) UIButton *playInFrameButton; -@property (nonatomic, readonly, strong) UIButton *stopButton; - (id)initWithTopView:(UIView *)topView videoPlayerView:(UIView *)videoPlayerView; @end diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.m b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.m index 020b704..af2e2b3 100644 --- a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.m +++ b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleView.m @@ -6,9 +6,8 @@ @interface VideoPlayerSampleView() @property (nonatomic, weak) UIView *topView; @property (nonatomic, weak) UIView *videoPlayerView; -@property (nonatomic, readwrite, strong) UIButton *playinFullScreenButton; +@property (nonatomic, readwrite, strong) UIButton *playInFullScreenButton; @property (nonatomic, readwrite, strong) UIButton *playInFrameButton; -@property (nonatomic, readwrite, strong) UIButton *stopButton; @end @@ -17,9 +16,9 @@ @implementation VideoPlayerSampleView - (id)initWithTopView:(UIView *)topView videoPlayerView:(UIView *)videoPlayerView { if ((self = [super init])) { - self.playinFullScreenButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; - [self.playinFullScreenButton setTitle:@"Full screen" forState:UIControlStateNormal]; - [self addSubview:self.playinFullScreenButton]; + self.playInFullScreenButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; + [self.playInFullScreenButton setTitle:@"Full screen" forState:UIControlStateNormal]; + [self addSubview:self.playInFullScreenButton]; self.backgroundColor = [UIColor whiteColor]; self.playInFrameButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; @@ -34,7 +33,7 @@ - (void)layoutSubviews { [super layoutSubviews]; CGRect bounds = self.bounds; - self.playinFullScreenButton.frame = CGRectMake(bounds.size.width/4.0 - 50, + self.playInFullScreenButton.frame = CGRectMake(bounds.size.width/4.0 - 50, (bounds.size.height - 150), 100, 50); diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.m b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.m index eb94c82..d5aaec4 100644 --- a/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.m +++ b/VideoPlayerKitSampleProject/VideoPlayerSample/VideoPlayerSampleViewController.m @@ -43,7 +43,7 @@ - (void)fullScreen - (void)loadView { self.videoPlayerSampleView = [[VideoPlayerSampleView alloc] initWithTopView:nil videoPlayerView:nil]; - [self.videoPlayerSampleView.playinFullScreenButton addTarget:self action:@selector(playVideo:) forControlEvents:UIControlEventTouchUpInside]; + [self.videoPlayerSampleView.playInFullScreenButton addTarget:self action:@selector(playVideo:) forControlEvents:UIControlEventTouchUpInside]; [self.videoPlayerSampleView.playInFrameButton addTarget:self action:@selector(playVideo:) forControlEvents:UIControlEventTouchUpInside]; [self setView:self.videoPlayerSampleView]; } @@ -70,7 +70,7 @@ - (void)playVideo:(id)owner self.videoPlayerViewController.view.frame = CGRectMake(0, 0, self.view.bounds.size.width , self.view.bounds.size.height/2); - [self.videoPlayerViewController playVideoWithTitle:@"Title" URL:url videoID:nil shareURL:nil isStreaming:NO playInFullScreen:owner == self.videoPlayerSampleView.playinFullScreenButton isAlwaysFullscreen:owner == self.videoPlayerSampleView.playinFullScreenButton]; + [self.videoPlayerViewController playVideoWithTitle:@"Title" URL:url videoID:nil shareURL:nil isStreaming:NO playInFullScreen:owner == self.videoPlayerSampleView.playInFullScreenButton isAlwaysFullscreen:owner == self.videoPlayerSampleView.playInFullScreenButton]; } - (void)viewDidLoad From 7c2d24297f37e48f41671d00b271e60f746a6f95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D0=B5=D0=BC=20=D0=A1=D0=B5=D1=80=D0=B1?= =?UTF-8?q?=D0=B8=D0=BD?= < serbinartem@gmail.com> Date: Wed, 24 Jul 2013 15:15:46 +0300 Subject: [PATCH 5/5] Fixed missing symbol ; --- Code/VideoPlayerKit.h | 2 +- VideoPlayerKitSampleProject/.DS_Store | Bin 15364 -> 15364 bytes .../UserInterfaceState.xcuserstate | Bin 23353 -> 24097 bytes 3 files changed, 1 insertion(+), 1 deletion(-) diff --git a/Code/VideoPlayerKit.h b/Code/VideoPlayerKit.h index 0ad0465..d9ad282 100644 --- a/Code/VideoPlayerKit.h +++ b/Code/VideoPlayerKit.h @@ -17,7 +17,7 @@ @property (readwrite, strong) AVPlayer *videoPlayer; - (void)playVideoWithTitle:(NSString *)title URL:(NSURL *)url videoID:(NSString *)videoID shareURL:(NSURL *)shareURL isStreaming:(BOOL)streaming playInFullScreen:(BOOL)playInFullScreen; -- (void)playVideoWithTitle:(NSString *)title URL:(NSURL *)url videoID:(NSString *)videoID shareURL:(NSURL *)shareURL isStreaming:(BOOL)streaming playInFullScreen:(BOOL)playInFullScreen isAlwaysFullscreen:(BOOL)isAlwaysFullscreen +- (void)playVideoWithTitle:(NSString *)title URL:(NSURL *)url videoID:(NSString *)videoID shareURL:(NSURL *)shareURL isStreaming:(BOOL)streaming playInFullScreen:(BOOL)playInFullScreen isAlwaysFullscreen:(BOOL)isAlwaysFullscreen; - (void)syncFullScreenButton:(UIInterfaceOrientation)toInterfaceOrientation; - (void)showCannotFetchStreamError; - (void)launchFullScreen; diff --git a/VideoPlayerKitSampleProject/.DS_Store b/VideoPlayerKitSampleProject/.DS_Store index c2f86959203a9ba1cff48fe624008cb7d0a8cbba..92400e397e3af26b71a429ab2d7944d9bb25e663 100644 GIT binary patch delta 1036 zcmd_mOGs346vy%Z?-b-^{^^}NInHRtq+(VYI_Wq*5G_$DQOehh7-D+WTQ*b9_(%gS zT! z!@1a^xxhug=8>Jz9I>2NbQlf6W^Y}fUiUQ^zNYe>hOa>lD9V&2%@vjI<|57#BfkqR zak4Fz{vJgI3t`bLp1D~uD`$<&&-SxHcA8yfx7ZjPXA|r(d&*|m9Q(*Vu`lc^7!-uT zj+I!4WTe1}EaYJ`s^Eba+tG|xbYL&K(2YI};22I|2*WsqbGV3WxQQ{0<2LT%p$pTP z!3)gdCEj8I-)RYjkU|>SD27sKJ*83_@zu~6* zHLf@lzC&u5tVzVV$h79lquc6`9kwoC#PhhgVO=4wC)O-kYlO2$`2*P_3HF@Lv-cA0 z8y3R?2Ubg{bjehRB1u(@63MjT_`p; t1@DY*v?T*JkzR^IvId(?kfGTI!~i4!7*J+|(^K36d}p z>q0ph)J0ts{kw=t({3~RL){b&N~(*@3Lz>oq>G@A-ULDjb=$dk4u|LBz~|f5-qn7+ zQNaZFE3wp6%6pVfO?sx?X0@kgah-N2YI#6wGt2Ul@`}nBm%Bz$4g`H=zWtt%+UhIx zgnU7+HS9@qsdWMWcD2J-qv%>yUz@Wjqz3%K3SUc5+>#_+jWSvjlGCys#m=yz)#+t} z%-y;S$h=qQ5_3XlC0XXO-YOn8eVmw1{Yo)I`tHN=`6+DXC}0|9VJXbPD%ft;#169K z>=Zl42H7n(#D>`jd(57(QTCR7VxQSpHp#vNSO6_dNI)Wzum*N)KmnX6K`E+Giv|SH zj1~lO2uE-Nec(8Wew@VxT*DxSaxskCxPu3Hic!48E4;>ge8d!f5+l$;QYe;^Xf4?& znKCGcil~H2sf?=0OO5=-(rwd%E_anuUHJ#W<#Pz~%Z3J_p^r|UX6n@$c~x{`t!%fX zm$#|j&|bGESm*P5Re!ytcr;2x*p!)NwrrGhX0J7hS5oGMO}Tkyd9z$Fdo3wJNr?=b zwiKBy#WEj@&KAEei%I?6V2%Qhg#QaR&L)KaH}(TEj94Mu*9-MLsJIFYGVk60YE;pdZ0q2kzlM9*P3b@djfU$2)w$7fj6*h@eQC zPf=u`=eec?e#W$j8oT+E*qniJ YQ=Dx0pXV?0Z2G4>1KPw%eP8F|Up~z@1ONa4 diff --git a/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/UserInterfaceState.xcuserstate b/VideoPlayerKitSampleProject/VideoPlayerSample.xcworkspace/xcuserdata/aserbin.xcuserdatad/UserInterfaceState.xcuserstate index f340f5fbeedda7a3cb793fe64a0867c03213d2ab..ec6dc657b569eb9779e0c75d081654e97e4aae68 100644 GIT binary patch delta 10122 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