VPCamera3/tdvideo/tdvideo.xcodeproj/project.pbxproj
2024-03-05 11:44:34 +08:00

593 lines
37 KiB
Plaintext

// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 56;
objects = {
/* Begin PBXBuildFile section */
007EFE022B60DA3600EFD078 /* IMG_0071.MOV in Resources */ = {isa = PBXBuildFile; fileRef = 007EFE012B60DA3600EFD078 /* IMG_0071.MOV */; };
007EFE042B60E00000EFD078 /* VideoConvertor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 007EFE032B60E00000EFD078 /* VideoConvertor.swift */; };
007EFE082B60EB5900EFD078 /* VideoConvertor2.swift in Sources */ = {isa = PBXBuildFile; fileRef = 007EFE072B60EB5900EFD078 /* VideoConvertor2.swift */; };
009882722B6269B30076385E /* PlayController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 009882712B6269B30076385E /* PlayController.swift */; };
009B7E9B2B5BA788003BE217 /* VideoWriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 009B7E9A2B5BA788003BE217 /* VideoWriter.swift */; };
009B7E9D2B5BB392003BE217 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 009B7E9C2B5BB392003BE217 /* CoreVideo.framework */; };
009B7E9F2B5BB39A003BE217 /* CoreImage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 009B7E9E2B5BB39A003BE217 /* CoreImage.framework */; };
00EED0532B5A4A2400637604 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00EED0522B5A4A2400637604 /* AppDelegate.swift */; };
00EED0552B5A4A2400637604 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00EED0542B5A4A2400637604 /* SceneDelegate.swift */; };
00EED0572B5A4A2400637604 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00EED0562B5A4A2400637604 /* ViewController.swift */; };
00EED05A2B5A4A2400637604 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 00EED0582B5A4A2400637604 /* Main.storyboard */; };
00EED05C2B5A4A2500637604 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 00EED05B2B5A4A2500637604 /* Assets.xcassets */; };
00EED05F2B5A4A2500637604 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 00EED05D2B5A4A2500637604 /* LaunchScreen.storyboard */; };
00EED0682B5A4B1400637604 /* ImageProcessingShaders.metal in Sources */ = {isa = PBXBuildFile; fileRef = 00EED0662B5A4B1400637604 /* ImageProcessingShaders.metal */; };
00EED0692B5A4B1400637604 /* VideoFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00EED0672B5A4B1400637604 /* VideoFile.swift */; };
00EED06B2B5A4B1B00637604 /* VideoPreview.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00EED06A2B5A4B1B00637604 /* VideoPreview.swift */; };
00EED06D2B5A4B6400637604 /* MetalPlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00EED06C2B5A4B6400637604 /* MetalPlayer.swift */; };
00EED0722B5A4BD600637604 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00EED0712B5A4BD600637604 /* AVFoundation.framework */; };
00EED0762B5A4CEB00637604 /* FrameProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00EED0752B5A4CEB00637604 /* FrameProcessor.swift */; };
00EED0792B5A686500637604 /* SpatialVideoConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00EED0782B5A686500637604 /* SpatialVideoConverter.swift */; };
043A6AD52B81AF04003776D2 /* PlayContoller8.swift in Sources */ = {isa = PBXBuildFile; fileRef = 043A6AD42B81AF04003776D2 /* PlayContoller8.swift */; };
043A6AD72B81B301003776D2 /* VideoConvertor3.swift in Sources */ = {isa = PBXBuildFile; fileRef = 043A6AD62B81B301003776D2 /* VideoConvertor3.swift */; };
043C63122B6B90E80095F268 /* PlayContoller4.swift in Sources */ = {isa = PBXBuildFile; fileRef = 043C63112B6B90E80095F268 /* PlayContoller4.swift */; };
043C63142B6B9CC90095F268 /* ExternalAccessory.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 043C63132B6B9CC90095F268 /* ExternalAccessory.framework */; };
043C63152B6BA6650095F268 /* ExternalAccessory.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 043C63132B6B9CC90095F268 /* ExternalAccessory.framework */; };
044447792B779B4200C7452B /* PlayContoller7.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044447782B779B4200C7452B /* PlayContoller7.swift */; };
0444477C2B779C1B00C7452B /* b.HEIC in Resources */ = {isa = PBXBuildFile; fileRef = 0444477A2B779C1B00C7452B /* b.HEIC */; };
0444477D2B779C1B00C7452B /* a.HEIC in Resources */ = {isa = PBXBuildFile; fileRef = 0444477B2B779C1B00C7452B /* a.HEIC */; };
04880AF22B6F702A00FF9E59 /* ViewController2.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04880AF12B6F702A00FF9E59 /* ViewController2.swift */; };
04880AF42B6F7A3B00FF9E59 /* PlayControllerVideo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04880AF32B6F7A3B00FF9E59 /* PlayControllerVideo.swift */; };
049ABF9F2B861C450049A94B /* PlayContoller9.swift in Sources */ = {isa = PBXBuildFile; fileRef = 049ABF9E2B861C450049A94B /* PlayContoller9.swift */; };
049EBD832B6C91C4005421C7 /* PlayContoller5.swift in Sources */ = {isa = PBXBuildFile; fileRef = 049EBD822B6C91C4005421C7 /* PlayContoller5.swift */; };
049EBD852B6CD4EA005421C7 /* ImageIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 049EBD842B6CD4EA005421C7 /* ImageIO.framework */; };
04A042542B6F9F4A00EA3EF9 /* PlayContoller6.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A042532B6F9F4A00EA3EF9 /* PlayContoller6.swift */; };
04A281A82B6A24840067FB28 /* img1.HEIC in Resources */ = {isa = PBXBuildFile; fileRef = 04A281A72B6A24840067FB28 /* img1.HEIC */; };
04A281AA2B6A2E730067FB28 /* img2.HEIC in Resources */ = {isa = PBXBuildFile; fileRef = 04A281A92B6A2E730067FB28 /* img2.HEIC */; };
04A281AC2B6A38DA0067FB28 /* img3.HEIC in Resources */ = {isa = PBXBuildFile; fileRef = 04A281AB2B6A38DA0067FB28 /* img3.HEIC */; };
04A4E0622B86FED3001894D2 /* PlayContoller10.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A4E0612B86FED3001894D2 /* PlayContoller10.swift */; };
04A4E0642B870160001894D2 /* VideoConvertor4.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A4E0632B870160001894D2 /* VideoConvertor4.swift */; };
04A4E06B2B87465B001894D2 /* bb.MOV in Resources */ = {isa = PBXBuildFile; fileRef = 04A4E0692B87465A001894D2 /* bb.MOV */; };
04A4E06C2B87465B001894D2 /* aa.MOV in Resources */ = {isa = PBXBuildFile; fileRef = 04A4E06A2B87465B001894D2 /* aa.MOV */; };
04A4E06E2B87483C001894D2 /* SpatialVideoWriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A4E06D2B87483C001894D2 /* SpatialVideoWriter.swift */; };
04A4E0702B87697E001894D2 /* PlayContoller11.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A4E06F2B87697E001894D2 /* PlayContoller11.swift */; };
04A4E0722B87789C001894D2 /* CreateVideoByBuffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A4E0712B87789C001894D2 /* CreateVideoByBuffer.swift */; };
04A5AE312B6B3234000D26EA /* img4.HEIC in Resources */ = {isa = PBXBuildFile; fileRef = 04A5AE302B6B3234000D26EA /* img4.HEIC */; };
04A5AE332B6B45E8000D26EA /* Photos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 04A5AE322B6B45E8000D26EA /* Photos.framework */; };
04A5AE352B6B479E000D26EA /* CCAddImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A5AE342B6B479E000D26EA /* CCAddImage.swift */; };
04A5AE372B6B47AB000D26EA /* PlayControllerImg.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A5AE362B6B47AB000D26EA /* PlayControllerImg.swift */; };
04A5AE392B6B480C000D26EA /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 04A5AE382B6B480C000D26EA /* MobileCoreServices.framework */; };
04A5AE3B2B6B6AD6000D26EA /* PhotosUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 04A5AE3A2B6B6AD6000D26EA /* PhotosUI.framework */; };
04A5AE3D2B6B757F000D26EA /* PlayController3.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A5AE3C2B6B757F000D26EA /* PlayController3.swift */; };
04BD5B3E2B81E21100DBBE08 /* VideoPlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04BD5B3D2B81E21100DBBE08 /* VideoPlayer.swift */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
007EFE012B60DA3600EFD078 /* IMG_0071.MOV */ = {isa = PBXFileReference; lastKnownFileType = video.quicktime; path = IMG_0071.MOV; sourceTree = "<group>"; };
007EFE032B60E00000EFD078 /* VideoConvertor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VideoConvertor.swift; sourceTree = "<group>"; };
007EFE072B60EB5900EFD078 /* VideoConvertor2.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VideoConvertor2.swift; sourceTree = "<group>"; };
009882712B6269B30076385E /* PlayController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayController.swift; sourceTree = "<group>"; };
009B7E9A2B5BA788003BE217 /* VideoWriter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VideoWriter.swift; sourceTree = "<group>"; };
009B7E9C2B5BB392003BE217 /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = System/Library/Frameworks/CoreVideo.framework; sourceTree = SDKROOT; };
009B7E9E2B5BB39A003BE217 /* CoreImage.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreImage.framework; path = System/Library/Frameworks/CoreImage.framework; sourceTree = SDKROOT; };
00EED04F2B5A4A2400637604 /* tdvideo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = tdvideo.app; sourceTree = BUILT_PRODUCTS_DIR; };
00EED0522B5A4A2400637604 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
00EED0542B5A4A2400637604 /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = "<group>"; };
00EED0562B5A4A2400637604 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
00EED0592B5A4A2400637604 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
00EED05B2B5A4A2500637604 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
00EED05E2B5A4A2500637604 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
00EED0602B5A4A2500637604 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
00EED0662B5A4B1400637604 /* ImageProcessingShaders.metal */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.metal; path = ImageProcessingShaders.metal; sourceTree = "<group>"; };
00EED0672B5A4B1400637604 /* VideoFile.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VideoFile.swift; sourceTree = "<group>"; };
00EED06A2B5A4B1B00637604 /* VideoPreview.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VideoPreview.swift; sourceTree = "<group>"; };
00EED06C2B5A4B6400637604 /* MetalPlayer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MetalPlayer.swift; sourceTree = "<group>"; };
00EED0712B5A4BD600637604 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };
00EED0752B5A4CEB00637604 /* FrameProcessor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FrameProcessor.swift; sourceTree = "<group>"; };
00EED0772B5A683200637604 /* tdvideo.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = tdvideo.entitlements; sourceTree = "<group>"; };
00EED0782B5A686500637604 /* SpatialVideoConverter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SpatialVideoConverter.swift; sourceTree = "<group>"; };
043A6AD42B81AF04003776D2 /* PlayContoller8.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayContoller8.swift; sourceTree = "<group>"; };
043A6AD62B81B301003776D2 /* VideoConvertor3.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VideoConvertor3.swift; sourceTree = "<group>"; };
043C63112B6B90E80095F268 /* PlayContoller4.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayContoller4.swift; sourceTree = "<group>"; };
043C63132B6B9CC90095F268 /* ExternalAccessory.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ExternalAccessory.framework; path = System/Library/Frameworks/ExternalAccessory.framework; sourceTree = SDKROOT; };
044447782B779B4200C7452B /* PlayContoller7.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayContoller7.swift; sourceTree = "<group>"; };
0444477A2B779C1B00C7452B /* b.HEIC */ = {isa = PBXFileReference; lastKnownFileType = file; path = b.HEIC; sourceTree = "<group>"; };
0444477B2B779C1B00C7452B /* a.HEIC */ = {isa = PBXFileReference; lastKnownFileType = file; path = a.HEIC; sourceTree = "<group>"; };
04880AF12B6F702A00FF9E59 /* ViewController2.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController2.swift; sourceTree = "<group>"; };
04880AF32B6F7A3B00FF9E59 /* PlayControllerVideo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayControllerVideo.swift; sourceTree = "<group>"; };
049ABF9E2B861C450049A94B /* PlayContoller9.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayContoller9.swift; sourceTree = "<group>"; };
049EBD822B6C91C4005421C7 /* PlayContoller5.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayContoller5.swift; sourceTree = "<group>"; };
049EBD842B6CD4EA005421C7 /* ImageIO.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ImageIO.framework; path = System/Library/Frameworks/ImageIO.framework; sourceTree = SDKROOT; };
04A042532B6F9F4A00EA3EF9 /* PlayContoller6.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayContoller6.swift; sourceTree = "<group>"; };
04A281A72B6A24840067FB28 /* img1.HEIC */ = {isa = PBXFileReference; lastKnownFileType = file; path = img1.HEIC; sourceTree = "<group>"; };
04A281A92B6A2E730067FB28 /* img2.HEIC */ = {isa = PBXFileReference; lastKnownFileType = file; path = img2.HEIC; sourceTree = "<group>"; };
04A281AB2B6A38DA0067FB28 /* img3.HEIC */ = {isa = PBXFileReference; lastKnownFileType = file; path = img3.HEIC; sourceTree = "<group>"; };
04A4E0612B86FED3001894D2 /* PlayContoller10.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayContoller10.swift; sourceTree = "<group>"; };
04A4E0632B870160001894D2 /* VideoConvertor4.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VideoConvertor4.swift; sourceTree = "<group>"; };
04A4E0692B87465A001894D2 /* bb.MOV */ = {isa = PBXFileReference; lastKnownFileType = video.quicktime; path = bb.MOV; sourceTree = "<group>"; };
04A4E06A2B87465B001894D2 /* aa.MOV */ = {isa = PBXFileReference; lastKnownFileType = video.quicktime; path = aa.MOV; sourceTree = "<group>"; };
04A4E06D2B87483C001894D2 /* SpatialVideoWriter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpatialVideoWriter.swift; sourceTree = "<group>"; };
04A4E06F2B87697E001894D2 /* PlayContoller11.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayContoller11.swift; sourceTree = "<group>"; };
04A4E0712B87789C001894D2 /* CreateVideoByBuffer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CreateVideoByBuffer.swift; sourceTree = "<group>"; };
04A5AE302B6B3234000D26EA /* img4.HEIC */ = {isa = PBXFileReference; lastKnownFileType = file; path = img4.HEIC; sourceTree = "<group>"; };
04A5AE322B6B45E8000D26EA /* Photos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Photos.framework; path = System/Library/Frameworks/Photos.framework; sourceTree = SDKROOT; };
04A5AE342B6B479E000D26EA /* CCAddImage.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CCAddImage.swift; sourceTree = "<group>"; };
04A5AE362B6B47AB000D26EA /* PlayControllerImg.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayControllerImg.swift; sourceTree = "<group>"; };
04A5AE382B6B480C000D26EA /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; };
04A5AE3A2B6B6AD6000D26EA /* PhotosUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = PhotosUI.framework; path = System/Library/Frameworks/PhotosUI.framework; sourceTree = SDKROOT; };
04A5AE3C2B6B757F000D26EA /* PlayController3.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayController3.swift; sourceTree = "<group>"; };
04BD5B3D2B81E21100DBBE08 /* VideoPlayer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VideoPlayer.swift; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
00EED04C2B5A4A2400637604 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
00EED0722B5A4BD600637604 /* AVFoundation.framework in Frameworks */,
04A5AE332B6B45E8000D26EA /* Photos.framework in Frameworks */,
049EBD852B6CD4EA005421C7 /* ImageIO.framework in Frameworks */,
009B7E9D2B5BB392003BE217 /* CoreVideo.framework in Frameworks */,
04A5AE392B6B480C000D26EA /* MobileCoreServices.framework in Frameworks */,
043C63142B6B9CC90095F268 /* ExternalAccessory.framework in Frameworks */,
009B7E9F2B5BB39A003BE217 /* CoreImage.framework in Frameworks */,
043C63152B6BA6650095F268 /* ExternalAccessory.framework in Frameworks */,
04A5AE3B2B6B6AD6000D26EA /* PhotosUI.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
00EED0462B5A4A2400637604 = {
isa = PBXGroup;
children = (
00EED0512B5A4A2400637604 /* tdvideo */,
00EED0502B5A4A2400637604 /* Products */,
00EED0702B5A4BD600637604 /* Frameworks */,
);
sourceTree = "<group>";
};
00EED0502B5A4A2400637604 /* Products */ = {
isa = PBXGroup;
children = (
00EED04F2B5A4A2400637604 /* tdvideo.app */,
);
name = Products;
sourceTree = "<group>";
};
00EED0512B5A4A2400637604 /* tdvideo */ = {
isa = PBXGroup;
children = (
04A4E06A2B87465B001894D2 /* aa.MOV */,
04A4E0692B87465A001894D2 /* bb.MOV */,
0444477B2B779C1B00C7452B /* a.HEIC */,
0444477A2B779C1B00C7452B /* b.HEIC */,
04A5AE302B6B3234000D26EA /* img4.HEIC */,
04A281AB2B6A38DA0067FB28 /* img3.HEIC */,
04A281A92B6A2E730067FB28 /* img2.HEIC */,
04A281A72B6A24840067FB28 /* img1.HEIC */,
007EFE012B60DA3600EFD078 /* IMG_0071.MOV */,
009B7E9A2B5BA788003BE217 /* VideoWriter.swift */,
00EED0782B5A686500637604 /* SpatialVideoConverter.swift */,
04A4E06D2B87483C001894D2 /* SpatialVideoWriter.swift */,
04A4E0712B87789C001894D2 /* CreateVideoByBuffer.swift */,
00EED0772B5A683200637604 /* tdvideo.entitlements */,
00EED0752B5A4CEB00637604 /* FrameProcessor.swift */,
00EED06A2B5A4B1B00637604 /* VideoPreview.swift */,
00EED0662B5A4B1400637604 /* ImageProcessingShaders.metal */,
00EED0672B5A4B1400637604 /* VideoFile.swift */,
00EED0522B5A4A2400637604 /* AppDelegate.swift */,
00EED0542B5A4A2400637604 /* SceneDelegate.swift */,
00EED0562B5A4A2400637604 /* ViewController.swift */,
1EFAF0BE2B8B72D4002A1773 /* 转码 */,
00EED06C2B5A4B6400637604 /* MetalPlayer.swift */,
007EFE032B60E00000EFD078 /* VideoConvertor.swift */,
007EFE072B60EB5900EFD078 /* VideoConvertor2.swift */,
043A6AD62B81B301003776D2 /* VideoConvertor3.swift */,
04A4E0632B870160001894D2 /* VideoConvertor4.swift */,
04880AF32B6F7A3B00FF9E59 /* PlayControllerVideo.swift */,
04A5AE3C2B6B757F000D26EA /* PlayController3.swift */,
043C63112B6B90E80095F268 /* PlayContoller4.swift */,
049EBD822B6C91C4005421C7 /* PlayContoller5.swift */,
04A042532B6F9F4A00EA3EF9 /* PlayContoller6.swift */,
044447782B779B4200C7452B /* PlayContoller7.swift */,
043A6AD42B81AF04003776D2 /* PlayContoller8.swift */,
049ABF9E2B861C450049A94B /* PlayContoller9.swift */,
04A4E0612B86FED3001894D2 /* PlayContoller10.swift */,
04A4E06F2B87697E001894D2 /* PlayContoller11.swift */,
04BD5B3D2B81E21100DBBE08 /* VideoPlayer.swift */,
04A5AE342B6B479E000D26EA /* CCAddImage.swift */,
00EED0582B5A4A2400637604 /* Main.storyboard */,
00EED05B2B5A4A2500637604 /* Assets.xcassets */,
00EED05D2B5A4A2500637604 /* LaunchScreen.storyboard */,
00EED0602B5A4A2500637604 /* Info.plist */,
);
path = tdvideo;
sourceTree = "<group>";
};
00EED0702B5A4BD600637604 /* Frameworks */ = {
isa = PBXGroup;
children = (
049EBD842B6CD4EA005421C7 /* ImageIO.framework */,
043C63132B6B9CC90095F268 /* ExternalAccessory.framework */,
04A5AE3A2B6B6AD6000D26EA /* PhotosUI.framework */,
04A5AE382B6B480C000D26EA /* MobileCoreServices.framework */,
04A5AE322B6B45E8000D26EA /* Photos.framework */,
009B7E9E2B5BB39A003BE217 /* CoreImage.framework */,
009B7E9C2B5BB392003BE217 /* CoreVideo.framework */,
00EED0712B5A4BD600637604 /* AVFoundation.framework */,
);
name = Frameworks;
sourceTree = "<group>";
};
1EFAF0BE2B8B72D4002A1773 /* 转码 */ = {
isa = PBXGroup;
children = (
04880AF12B6F702A00FF9E59 /* ViewController2.swift */,
009882712B6269B30076385E /* PlayController.swift */,
04A5AE362B6B47AB000D26EA /* PlayControllerImg.swift */,
);
path = "转码";
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
00EED04E2B5A4A2400637604 /* tdvideo */ = {
isa = PBXNativeTarget;
buildConfigurationList = 00EED0632B5A4A2500637604 /* Build configuration list for PBXNativeTarget "tdvideo" */;
buildPhases = (
00EED04B2B5A4A2400637604 /* Sources */,
00EED04C2B5A4A2400637604 /* Frameworks */,
00EED04D2B5A4A2400637604 /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = tdvideo;
productName = tdvideo;
productReference = 00EED04F2B5A4A2400637604 /* tdvideo.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
00EED0472B5A4A2400637604 /* Project object */ = {
isa = PBXProject;
attributes = {
BuildIndependentTargetsInParallel = 1;
LastSwiftUpdateCheck = 1520;
LastUpgradeCheck = 1520;
TargetAttributes = {
00EED04E2B5A4A2400637604 = {
CreatedOnToolsVersion = 15.2;
};
};
};
buildConfigurationList = 00EED04A2B5A4A2400637604 /* Build configuration list for PBXProject "tdvideo" */;
compatibilityVersion = "Xcode 14.0";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
Base,
);
mainGroup = 00EED0462B5A4A2400637604;
productRefGroup = 00EED0502B5A4A2400637604 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
00EED04E2B5A4A2400637604 /* tdvideo */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
00EED04D2B5A4A2400637604 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
0444477D2B779C1B00C7452B /* a.HEIC in Resources */,
04A281AC2B6A38DA0067FB28 /* img3.HEIC in Resources */,
007EFE022B60DA3600EFD078 /* IMG_0071.MOV in Resources */,
04A281AA2B6A2E730067FB28 /* img2.HEIC in Resources */,
04A4E06C2B87465B001894D2 /* aa.MOV in Resources */,
04A281A82B6A24840067FB28 /* img1.HEIC in Resources */,
00EED05F2B5A4A2500637604 /* LaunchScreen.storyboard in Resources */,
00EED05C2B5A4A2500637604 /* Assets.xcassets in Resources */,
00EED05A2B5A4A2400637604 /* Main.storyboard in Resources */,
0444477C2B779C1B00C7452B /* b.HEIC in Resources */,
04A5AE312B6B3234000D26EA /* img4.HEIC in Resources */,
04A4E06B2B87465B001894D2 /* bb.MOV in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
00EED04B2B5A4A2400637604 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
04A042542B6F9F4A00EA3EF9 /* PlayContoller6.swift in Sources */,
009B7E9B2B5BA788003BE217 /* VideoWriter.swift in Sources */,
044447792B779B4200C7452B /* PlayContoller7.swift in Sources */,
00EED06D2B5A4B6400637604 /* MetalPlayer.swift in Sources */,
04A4E0722B87789C001894D2 /* CreateVideoByBuffer.swift in Sources */,
00EED06B2B5A4B1B00637604 /* VideoPreview.swift in Sources */,
043A6AD52B81AF04003776D2 /* PlayContoller8.swift in Sources */,
04A5AE372B6B47AB000D26EA /* PlayControllerImg.swift in Sources */,
049EBD832B6C91C4005421C7 /* PlayContoller5.swift in Sources */,
04880AF42B6F7A3B00FF9E59 /* PlayControllerVideo.swift in Sources */,
00EED0692B5A4B1400637604 /* VideoFile.swift in Sources */,
00EED0572B5A4A2400637604 /* ViewController.swift in Sources */,
04A5AE352B6B479E000D26EA /* CCAddImage.swift in Sources */,
00EED0762B5A4CEB00637604 /* FrameProcessor.swift in Sources */,
04A4E06E2B87483C001894D2 /* SpatialVideoWriter.swift in Sources */,
00EED0532B5A4A2400637604 /* AppDelegate.swift in Sources */,
049ABF9F2B861C450049A94B /* PlayContoller9.swift in Sources */,
04880AF22B6F702A00FF9E59 /* ViewController2.swift in Sources */,
00EED0792B5A686500637604 /* SpatialVideoConverter.swift in Sources */,
04BD5B3E2B81E21100DBBE08 /* VideoPlayer.swift in Sources */,
00EED0552B5A4A2400637604 /* SceneDelegate.swift in Sources */,
009882722B6269B30076385E /* PlayController.swift in Sources */,
007EFE042B60E00000EFD078 /* VideoConvertor.swift in Sources */,
04A4E0642B870160001894D2 /* VideoConvertor4.swift in Sources */,
04A5AE3D2B6B757F000D26EA /* PlayController3.swift in Sources */,
043A6AD72B81B301003776D2 /* VideoConvertor3.swift in Sources */,
00EED0682B5A4B1400637604 /* ImageProcessingShaders.metal in Sources */,
04A4E0702B87697E001894D2 /* PlayContoller11.swift in Sources */,
043C63122B6B90E80095F268 /* PlayContoller4.swift in Sources */,
007EFE082B60EB5900EFD078 /* VideoConvertor2.swift in Sources */,
04A4E0622B86FED3001894D2 /* PlayContoller10.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
00EED0582B5A4A2400637604 /* Main.storyboard */ = {
isa = PBXVariantGroup;
children = (
00EED0592B5A4A2400637604 /* Base */,
);
name = Main.storyboard;
sourceTree = "<group>";
};
00EED05D2B5A4A2500637604 /* LaunchScreen.storyboard */ = {
isa = PBXVariantGroup;
children = (
00EED05E2B5A4A2500637604 /* Base */,
);
name = LaunchScreen.storyboard;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
00EED0612B5A4A2500637604 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
GCC_C_LANGUAGE_STANDARD = gnu17;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
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_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 17.2;
LOCALIZATION_PREFERS_STRING_CATALOGS = YES;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)";
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
};
name = Debug;
};
00EED0622B5A4A2500637604 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
GCC_C_LANGUAGE_STANDARD = gnu17;
GCC_NO_COMMON_BLOCKS = YES;
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_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 17.2;
LOCALIZATION_PREFERS_STRING_CATALOGS = YES;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = iphoneos;
SWIFT_COMPILATION_MODE = wholemodule;
VALIDATE_PRODUCT = YES;
};
name = Release;
};
00EED0642B5A4A2500637604 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CODE_SIGN_ENTITLEMENTS = tdvideo/tdvideo.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = 2RAN5PZH5L;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = tdvideo/Info.plist;
INFOPLIST_KEY_NSCameraUsageDescription = "我们需要访问您的摄像头以拍摄照片和录制视频";
INFOPLIST_KEY_NSMicrophoneUsageDescription = "我们需要访问您的麦克风以录制视频的音频";
INFOPLIST_KEY_NSPhotoLibraryAddUsageDescription = "我们需要保存视频到您的相册以便您后续查看";
INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "我们需要访问您的照片库以保存照片和视频";
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen;
INFOPLIST_KEY_UIMainStoryboardFile = Main;
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = com.nks.vptesst.sdk;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
SUPPORTS_MACCATALYST = NO;
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO;
SWIFT_EMIT_LOC_STRINGS = YES;
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = 1;
};
name = Debug;
};
00EED0652B5A4A2500637604 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CODE_SIGN_ENTITLEMENTS = tdvideo/tdvideo.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = 2RAN5PZH5L;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = tdvideo/Info.plist;
INFOPLIST_KEY_NSCameraUsageDescription = "我们需要访问您的摄像头以拍摄照片和录制视频";
INFOPLIST_KEY_NSMicrophoneUsageDescription = "我们需要访问您的麦克风以录制视频的音频";
INFOPLIST_KEY_NSPhotoLibraryAddUsageDescription = "我们需要保存视频到您的相册以便您后续查看";
INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "我们需要访问您的照片库以保存照片和视频";
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen;
INFOPLIST_KEY_UIMainStoryboardFile = Main;
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = com.nks.vptesst.sdk;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
SUPPORTS_MACCATALYST = NO;
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO;
SWIFT_EMIT_LOC_STRINGS = YES;
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = 1;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
00EED04A2B5A4A2400637604 /* Build configuration list for PBXProject "tdvideo" */ = {
isa = XCConfigurationList;
buildConfigurations = (
00EED0612B5A4A2500637604 /* Debug */,
00EED0622B5A4A2500637604 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
00EED0632B5A4A2500637604 /* Build configuration list for PBXNativeTarget "tdvideo" */ = {
isa = XCConfigurationList;
buildConfigurations = (
00EED0642B5A4A2500637604 /* Debug */,
00EED0652B5A4A2500637604 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 00EED0472B5A4A2400637604 /* Project object */;
}