// !$*UTF8*$! { archiveVersion = 1; classes = { }; objectVersion = 63; objects = { /* Begin PBXBuildFile section */ 07CF52ADAE84DB873EACEF78 /* BPMDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF736221D49CF02BA7C8D6B9 /* BPMDetector.swift */; }; 24383DE5713184D409FD9063 /* ChadMusic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6363FFDA55CFD993BC309249 /* ChadMusic.swift */; }; 26A26B41B196B5BD4930DC32 /* GroupTemplateResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9976E6544585B296A1C101DA /* GroupTemplateResolver.swift */; }; 26BB12106B505E43BF4FC9D6 /* PlayerViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C1236BDE95EB6791D6236FB /* PlayerViewModel.swift */; }; 2A5E4EBC04A32429A488B917 /* OpusDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AF5A8303D2C02C64E38BFFD /* OpusDecoder.swift */; }; 3395A9BA0229770B4DB5BC87 /* StreamingPlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = A723E3458C238F1FD1BFD3C2 /* StreamingPlayer.swift */; }; 379B32F8532B619ED072A027 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60ECA4A868B078D1883187AC /* ContentView.swift */; }; 380E85DD78DF70452FD714D3 /* QueueView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E914A3FD78964862B2614958 /* QueueView.swift */; }; 3BB9EDFDD0549752FF295F3E /* PlayerViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6B64DCACBFBECC6891C90CC /* PlayerViewModelTests.swift */; }; 43393F667709155B8274BCF7 /* libogg.a in Resources */ = {isa = PBXBuildFile; fileRef = CA445FC9E802A4C20E3A403D /* libogg.a */; }; 4743395D35A8D95C547C8CB9 /* LibraryManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F3B7C5A143DE798D4626FE8 /* LibraryManager.swift */; }; 5628796FA14B92BBF9B43E32 /* PlaylistViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6C84B8774EB16049C5D0634 /* PlaylistViewModelTests.swift */; }; 57711D4FCC56CF0EAA3B9AEA /* GroupTemplateEditorSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08D15D5EE07B0A62BFD840FE /* GroupTemplateEditorSheet.swift */; }; 5D6C44C69AF7AC10EF57654F /* AudioEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE2DAEAE9E4548FEAE43DD6F /* AudioEngine.swift */; }; 5E8CEFA7EE241802F4811825 /* AudioEngineTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F558E3B192986DC2EBB0ED46 /* AudioEngineTests.swift */; }; 606C5864CF7BFE0FD9D45D49 /* AppTheme.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40F598DD9BCE1FA0AE855690 /* AppTheme.swift */; }; 69501B07F5A60CC4F3FD0FD2 /* GroupTemplateResolverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A92720B54E0C6F6952D1DC3 /* GroupTemplateResolverTests.swift */; }; 70D3F6D051FF364AEE762044 /* MediaKeyHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = F53966C8741493C981D95364 /* MediaKeyHandler.swift */; }; 713F146AE128A72D7685ED85 /* SyncManagerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B76DAB40E97BB6491A86E6E /* SyncManagerTests.swift */; }; 759C3290BED9FA13BC6E3826 /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD7C91A9A81F45E761A50F33 /* SettingsView.swift */; }; 7726CE9DEFF12E97426C682E /* MixBoardApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACC56A6245FB276D23559CBF /* MixBoardApp.swift */; }; 7B2F8EAEAFFC2EC639BDD70C /* stb_vorbis.c in Sources */ = {isa = PBXBuildFile; fileRef = A7E76EF83D1D8E970E0A31A5 /* stb_vorbis.c */; }; 7C6A84B33D7D5615EB0B05DE /* QueueEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 38F7DDFFB0052E82B9579FA7 /* QueueEntry.swift */; }; 87CF06028B178836BA6DC55D /* MiniPlayerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AB12561B1AF730065EC608 /* MiniPlayerView.swift */; }; 8959E71D433588DDD17678DC /* WaveformView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3BD2DB1EC2209FF74C47FDA7 /* WaveformView.swift */; }; 8C364F881121FBDC0507BE3F /* LRCLIBService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 631AC23E23D3E1BDC9ADF853 /* LRCLIBService.swift */; }; 8E08196F160224F02E37D063 /* SyncManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9ECC0563919D01F75D8E0B7 /* SyncManager.swift */; }; 912A19B864DD7BA90CDACFB5 /* KeychainService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 661D06C0F6B4159529E7CC6E /* KeychainService.swift */; }; 92AB1107C3C9933966713ACA /* libopusfile.a in Resources */ = {isa = PBXBuildFile; fileRef = 624A8B3A36FAC5FB9DDC5E67 /* libopusfile.a */; }; 95899377852BF2AC878090A8 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 68DD53987AB941CD45442704 /* Assets.xcassets */; }; 98815185EDE0A4BCBF17C5B9 /* PlaylistViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35E4CBA48B8B32CE1BCAD7C8 /* PlaylistViewModel.swift */; }; 9B9F0CF0742875A907E153AA /* OGGDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EDE955C924C0198C7352401 /* OGGDecoder.swift */; }; 9C3EE050D166FC5929766834 /* MixBoardUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B2F31275CB65372CA6FA5A0 /* MixBoardUITests.swift */; }; 9E9C91E092AB64883F6EE6B0 /* KeyDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 645DBC1C9CF4F140B672D7B1 /* KeyDetector.swift */; }; 9EA1E32B38B0F9E99870EC59 /* WaveformGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EAECFB0715C166BB9B07054 /* WaveformGenerator.swift */; }; A0784C716AA15CDE2E0B7422 /* LyricsParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7D19017A4644FC0728357C3F /* LyricsParser.swift */; }; A51C687AE19C3E84FD54C5B9 /* AddToPlaylistSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = CBBA50A7582B55F231E5AA6C /* AddToPlaylistSheet.swift */; }; A691BE9634610830E1BB808A /* FolderBrowserView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3065C0A0D56A81C39226FE66 /* FolderBrowserView.swift */; }; B277B6A1AE7A7B3F3B5048BF /* TrackRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = F0DB4B4B5F5AC588DCFDB0CD /* TrackRow.swift */; }; B54468EDAAEF2726A6B38C0C /* AddGroupToPlaylistSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = E41DB4A612D6382448F0DD4A /* AddGroupToPlaylistSheet.swift */; }; B769842D41E6024B9BDAEC75 /* CodecTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2BA9BE95AB7E0120C386B49 /* CodecTests.swift */; }; BDC7784201348B34183BEA51 /* CuePoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B2D6AC79F54F259894E400E /* CuePoint.swift */; }; BEFC8982E0D4314A9DAEEBD8 /* PlaylistDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3CE708A06FA6FACD9163798 /* PlaylistDetailView.swift */; }; BFC987A83994155E5702AC68 /* PlaylistFolder.swift in Sources */ = {isa = PBXBuildFile; fileRef = B06CCD1797B66666B24AF57F /* PlaylistFolder.swift */; }; C3661CDAB1BE2C95AE69ADB1 /* ChadMusicAPIClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3FDBF83B261F1B1F2FD07AA /* ChadMusicAPIClient.swift */; }; C5445BE9211773A3C765686F /* AppState.swift in Sources */ = {isa = PBXBuildFile; fileRef = F082E02B359284DF788ECB01 /* AppState.swift */; }; CC051E3E0E64005C419E2A96 /* libopus.a in Resources */ = {isa = PBXBuildFile; fileRef = 449D61AC1EE4C72C87FDE11B /* libopus.a */; }; CCECD84E3286B2500DE1FDFE /* Playlist.swift in Sources */ = {isa = PBXBuildFile; fileRef = 475B0D96BE1F660E43F4338F /* Playlist.swift */; }; D2F69A15D9EAD0B0F7AB4321 /* CloudStreamingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF1DED14695761FDB3C92ABE /* CloudStreamingTests.swift */; }; D408096F4D08840C966D4DC3 /* MetadataService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83502527607F43B5AAF43A5B /* MetadataService.swift */; }; D745E3B69D257B06ECB55735 /* PlaylistListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BEEFB8D4A7732D9179B80961 /* PlaylistListView.swift */; }; D90B76ED48494E5EFAF307AD /* Track.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2911C47EF0A790D14A41ACCD /* Track.swift */; }; DD56D0E534B6AC6DAC3DD238 /* CloudBrowserView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7774A282E55258E902663EB2 /* CloudBrowserView.swift */; }; E7254E3B096C82833E6EAC32 /* WaveformGeneratorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B402C83CB50D990A2E067E9E /* WaveformGeneratorTests.swift */; }; E73B39EC4AB5EE03B770ECE9 /* LyricsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B407D125FA9B66C2F5AE6449 /* LyricsTests.swift */; }; EABC718B141E4A741CB7A338 /* ArtworkService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FEBDB0BB1A240BB292F64A6 /* ArtworkService.swift */; }; EB0AE5BCF77E33C39B2062AE /* ModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CE159AE643FA6D443DA2A58 /* ModelTests.swift */; }; F68E77C46DA49D37AF843648 /* NowPlayingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA7FCB9E71FB67DBBBBA237E /* NowPlayingView.swift */; }; F9E1EC2A05D690057B963102 /* LibraryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE57266AAD0021383B334BCD /* LibraryView.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ 47AE927601EF93344ADF48E4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 136856E86875B0E72B3BA10F /* Project object */; proxyType = 1; remoteGlobalIDString = 0907E09982F49B0BAE3D2CB1; remoteInfo = MixBoardiOS; }; 504CB81CAC10624153757F4D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 136856E86875B0E72B3BA10F /* Project object */; proxyType = 1; remoteGlobalIDString = 0907E09982F49B0BAE3D2CB1; remoteInfo = MixBoardiOS; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ 08D15D5EE07B0A62BFD840FE /* GroupTemplateEditorSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GroupTemplateEditorSheet.swift; sourceTree = ""; }; 0AF5A8303D2C02C64E38BFFD /* OpusDecoder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OpusDecoder.swift; sourceTree = ""; }; 0B2F31275CB65372CA6FA5A0 /* MixBoardUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MixBoardUITests.swift; sourceTree = ""; }; 0FEBDB0BB1A240BB292F64A6 /* ArtworkService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArtworkService.swift; sourceTree = ""; }; 1C1236BDE95EB6791D6236FB /* PlayerViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayerViewModel.swift; sourceTree = ""; }; 2911C47EF0A790D14A41ACCD /* Track.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Track.swift; sourceTree = ""; }; 2E5081BAC653C98E20486642 /* opus_types.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = opus_types.h; sourceTree = ""; }; 3065C0A0D56A81C39226FE66 /* FolderBrowserView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FolderBrowserView.swift; sourceTree = ""; }; 30AB12561B1AF730065EC608 /* MiniPlayerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MiniPlayerView.swift; sourceTree = ""; }; 35E4CBA48B8B32CE1BCAD7C8 /* PlaylistViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlaylistViewModel.swift; sourceTree = ""; }; 38F7DDFFB0052E82B9579FA7 /* QueueEntry.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QueueEntry.swift; sourceTree = ""; }; 3B76DAB40E97BB6491A86E6E /* SyncManagerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SyncManagerTests.swift; sourceTree = ""; }; 3BD2DB1EC2209FF74C47FDA7 /* WaveformView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WaveformView.swift; sourceTree = ""; }; 40F598DD9BCE1FA0AE855690 /* AppTheme.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppTheme.swift; sourceTree = ""; }; 449D61AC1EE4C72C87FDE11B /* libopus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libopus.a; sourceTree = ""; }; 475B0D96BE1F660E43F4338F /* Playlist.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Playlist.swift; sourceTree = ""; }; 4B2D6AC79F54F259894E400E /* CuePoint.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CuePoint.swift; sourceTree = ""; }; 60ECA4A868B078D1883187AC /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = ""; }; 624A8B3A36FAC5FB9DDC5E67 /* libopusfile.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libopusfile.a; sourceTree = ""; }; 631AC23E23D3E1BDC9ADF853 /* LRCLIBService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LRCLIBService.swift; sourceTree = ""; }; 6363FFDA55CFD993BC309249 /* ChadMusic.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChadMusic.swift; sourceTree = ""; }; 645DBC1C9CF4F140B672D7B1 /* KeyDetector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyDetector.swift; sourceTree = ""; }; 661D06C0F6B4159529E7CC6E /* KeychainService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeychainService.swift; sourceTree = ""; }; 68DD53987AB941CD45442704 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 6A5EBAA40B5EDC89CCE2B2BB /* stb_vorbis_wrapper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = stb_vorbis_wrapper.h; sourceTree = ""; }; 6A92720B54E0C6F6952D1DC3 /* GroupTemplateResolverTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GroupTemplateResolverTests.swift; sourceTree = ""; }; 6D726B0D736F677437FEC8BA /* MixBoardiOSUITests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = MixBoardiOSUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 6EE3DE980DF887C4317E1E04 /* MixBoardiOSTests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = MixBoardiOSTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 6F3B7C5A143DE798D4626FE8 /* LibraryManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LibraryManager.swift; sourceTree = ""; }; 7774A282E55258E902663EB2 /* CloudBrowserView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CloudBrowserView.swift; sourceTree = ""; }; 7D19017A4644FC0728357C3F /* LyricsParser.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LyricsParser.swift; sourceTree = ""; }; 83502527607F43B5AAF43A5B /* MetadataService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MetadataService.swift; sourceTree = ""; }; 88A00D973DFE61DA80CEFC63 /* opusfile.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = opusfile.h; sourceTree = ""; }; 8CE159AE643FA6D443DA2A58 /* ModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelTests.swift; sourceTree = ""; }; 97BCB55CDAD16C2AD0750458 /* opus_defines.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = opus_defines.h; sourceTree = ""; }; 9976E6544585B296A1C101DA /* GroupTemplateResolver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GroupTemplateResolver.swift; sourceTree = ""; }; 9EAECFB0715C166BB9B07054 /* WaveformGenerator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WaveformGenerator.swift; sourceTree = ""; }; 9EDE955C924C0198C7352401 /* OGGDecoder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OGGDecoder.swift; sourceTree = ""; }; A50996A9FDBA63F9AEDD4902 /* opus.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = opus.h; sourceTree = ""; }; A6C84B8774EB16049C5D0634 /* PlaylistViewModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlaylistViewModelTests.swift; sourceTree = ""; }; A723E3458C238F1FD1BFD3C2 /* StreamingPlayer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StreamingPlayer.swift; sourceTree = ""; }; A7E76EF83D1D8E970E0A31A5 /* stb_vorbis.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = stb_vorbis.c; sourceTree = ""; }; A9ECC0563919D01F75D8E0B7 /* SyncManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SyncManager.swift; sourceTree = ""; }; AA7FCB9E71FB67DBBBBA237E /* NowPlayingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NowPlayingView.swift; sourceTree = ""; }; ACC56A6245FB276D23559CBF /* MixBoardApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MixBoardApp.swift; sourceTree = ""; }; AF736221D49CF02BA7C8D6B9 /* BPMDetector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BPMDetector.swift; sourceTree = ""; }; B06CCD1797B66666B24AF57F /* PlaylistFolder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlaylistFolder.swift; sourceTree = ""; }; B2120B77C1DC2A2C489C4495 /* MixBoard.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MixBoard.app; sourceTree = BUILT_PRODUCTS_DIR; }; B402C83CB50D990A2E067E9E /* WaveformGeneratorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WaveformGeneratorTests.swift; sourceTree = ""; }; B407D125FA9B66C2F5AE6449 /* LyricsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LyricsTests.swift; sourceTree = ""; }; B4C783FE8D72490B0C9FC434 /* config_types.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = config_types.h; sourceTree = ""; }; BE57266AAD0021383B334BCD /* LibraryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LibraryView.swift; sourceTree = ""; }; BEEFB8D4A7732D9179B80961 /* PlaylistListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlaylistListView.swift; sourceTree = ""; }; C6B64DCACBFBECC6891C90CC /* PlayerViewModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayerViewModelTests.swift; sourceTree = ""; }; CA445FC9E802A4C20E3A403D /* libogg.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libogg.a; sourceTree = ""; }; CBBA50A7582B55F231E5AA6C /* AddToPlaylistSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AddToPlaylistSheet.swift; sourceTree = ""; }; CC965C1466ACDD2E38AE5321 /* os_types.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = os_types.h; sourceTree = ""; }; D3FDBF83B261F1B1F2FD07AA /* ChadMusicAPIClient.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChadMusicAPIClient.swift; sourceTree = ""; }; DD7C91A9A81F45E761A50F33 /* SettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsView.swift; sourceTree = ""; }; E3CE708A06FA6FACD9163798 /* PlaylistDetailView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlaylistDetailView.swift; sourceTree = ""; }; E41DB4A612D6382448F0DD4A /* AddGroupToPlaylistSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AddGroupToPlaylistSheet.swift; sourceTree = ""; }; E90BEC484812C2BA0DF15852 /* opus_projection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = opus_projection.h; sourceTree = ""; }; E914A3FD78964862B2614958 /* QueueView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QueueView.swift; sourceTree = ""; }; EE2DAEAE9E4548FEAE43DD6F /* AudioEngine.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioEngine.swift; sourceTree = ""; }; EF1DED14695761FDB3C92ABE /* CloudStreamingTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CloudStreamingTests.swift; sourceTree = ""; }; F082E02B359284DF788ECB01 /* AppState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppState.swift; sourceTree = ""; }; F0DB4B4B5F5AC588DCFDB0CD /* TrackRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TrackRow.swift; sourceTree = ""; }; F2BA9BE95AB7E0120C386B49 /* CodecTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodecTests.swift; sourceTree = ""; }; F44D9FF6356AB9C0C1F531D7 /* opus_multistream.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = opus_multistream.h; sourceTree = ""; }; F53966C8741493C981D95364 /* MediaKeyHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaKeyHandler.swift; sourceTree = ""; }; F53DEF563120C3F3B6EC9B17 /* ogg.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ogg.h; sourceTree = ""; }; F558E3B192986DC2EBB0ED46 /* AudioEngineTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioEngineTests.swift; sourceTree = ""; }; F5D297D015B8240DFA10635C /* MixBoard-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "MixBoard-Bridging-Header.h"; sourceTree = ""; }; FC6B4D6B6FBB4F0F5CEE8827 /* ogg.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ogg.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXGroup section */ 01413B5334A21F4D1CEEE0C0 /* opus */ = { isa = PBXGroup; children = ( 97BCB55CDAD16C2AD0750458 /* opus_defines.h */, F44D9FF6356AB9C0C1F531D7 /* opus_multistream.h */, E90BEC484812C2BA0DF15852 /* opus_projection.h */, 2E5081BAC653C98E20486642 /* opus_types.h */, A50996A9FDBA63F9AEDD4902 /* opus.h */, 88A00D973DFE61DA80CEFC63 /* opusfile.h */, ); path = opus; sourceTree = ""; }; 09082FC16BD8EFDC6E2A576B /* lib */ = { isa = PBXGroup; children = ( CA445FC9E802A4C20E3A403D /* libogg.a */, 449D61AC1EE4C72C87FDE11B /* libopus.a */, 624A8B3A36FAC5FB9DDC5E67 /* libopusfile.a */, ); path = lib; sourceTree = ""; }; 1332E5B75E8FF27EC72C7E0A /* OpusLib */ = { isa = PBXGroup; children = ( FBD9885D8FBB93ECDA027235 /* include */, 09082FC16BD8EFDC6E2A576B /* lib */, ); path = OpusLib; sourceTree = ""; }; 1B9750DC80B4C7A27CDFB781 /* ogg */ = { isa = PBXGroup; children = ( B4C783FE8D72490B0C9FC434 /* config_types.h */, FC6B4D6B6FBB4F0F5CEE8827 /* ogg.h */, CC965C1466ACDD2E38AE5321 /* os_types.h */, ); path = ogg; sourceTree = ""; }; 779EB629DFF798AB1B02E145 /* Services */ = { isa = PBXGroup; children = ( 0FEBDB0BB1A240BB292F64A6 /* ArtworkService.swift */, EE2DAEAE9E4548FEAE43DD6F /* AudioEngine.swift */, AF736221D49CF02BA7C8D6B9 /* BPMDetector.swift */, D3FDBF83B261F1B1F2FD07AA /* ChadMusicAPIClient.swift */, 661D06C0F6B4159529E7CC6E /* KeychainService.swift */, 645DBC1C9CF4F140B672D7B1 /* KeyDetector.swift */, 6F3B7C5A143DE798D4626FE8 /* LibraryManager.swift */, 631AC23E23D3E1BDC9ADF853 /* LRCLIBService.swift */, 7D19017A4644FC0728357C3F /* LyricsParser.swift */, F53966C8741493C981D95364 /* MediaKeyHandler.swift */, 83502527607F43B5AAF43A5B /* MetadataService.swift */, 9EDE955C924C0198C7352401 /* OGGDecoder.swift */, 0AF5A8303D2C02C64E38BFFD /* OpusDecoder.swift */, A723E3458C238F1FD1BFD3C2 /* StreamingPlayer.swift */, A9ECC0563919D01F75D8E0B7 /* SyncManager.swift */, 9EAECFB0715C166BB9B07054 /* WaveformGenerator.swift */, ); path = Services; sourceTree = ""; }; 79CCDC24146638948CBCEC9E = { isa = PBXGroup; children = ( C8F02BC907F648149C5B2FA4 /* Sources */, B5DBC14AA87BE8FC0582278D /* Tests */, E710654EDC5BEFA0243A5A12 /* UITests */, FCBD4522947F6E56E803DDC6 /* Products */, ); sourceTree = ""; }; 7F61E00E741F32754E1C3E81 /* Resources */ = { isa = PBXGroup; children = ( 68DD53987AB941CD45442704 /* Assets.xcassets */, ); path = Resources; sourceTree = ""; }; 809411FB03B6B689D9DE9907 /* Models */ = { isa = PBXGroup; children = ( F082E02B359284DF788ECB01 /* AppState.swift */, 40F598DD9BCE1FA0AE855690 /* AppTheme.swift */, 6363FFDA55CFD993BC309249 /* ChadMusic.swift */, 4B2D6AC79F54F259894E400E /* CuePoint.swift */, 9976E6544585B296A1C101DA /* GroupTemplateResolver.swift */, 475B0D96BE1F660E43F4338F /* Playlist.swift */, B06CCD1797B66666B24AF57F /* PlaylistFolder.swift */, 38F7DDFFB0052E82B9579FA7 /* QueueEntry.swift */, 2911C47EF0A790D14A41ACCD /* Track.swift */, ); path = Models; sourceTree = ""; }; A0991586314D042664A33F77 /* Views */ = { isa = PBXGroup; children = ( E41DB4A612D6382448F0DD4A /* AddGroupToPlaylistSheet.swift */, CBBA50A7582B55F231E5AA6C /* AddToPlaylistSheet.swift */, 7774A282E55258E902663EB2 /* CloudBrowserView.swift */, 60ECA4A868B078D1883187AC /* ContentView.swift */, 3065C0A0D56A81C39226FE66 /* FolderBrowserView.swift */, 08D15D5EE07B0A62BFD840FE /* GroupTemplateEditorSheet.swift */, BE57266AAD0021383B334BCD /* LibraryView.swift */, 30AB12561B1AF730065EC608 /* MiniPlayerView.swift */, AA7FCB9E71FB67DBBBBA237E /* NowPlayingView.swift */, E3CE708A06FA6FACD9163798 /* PlaylistDetailView.swift */, BEEFB8D4A7732D9179B80961 /* PlaylistListView.swift */, E914A3FD78964862B2614958 /* QueueView.swift */, DD7C91A9A81F45E761A50F33 /* SettingsView.swift */, F0DB4B4B5F5AC588DCFDB0CD /* TrackRow.swift */, 3BD2DB1EC2209FF74C47FDA7 /* WaveformView.swift */, ); path = Views; sourceTree = ""; }; B5DBC14AA87BE8FC0582278D /* Tests */ = { isa = PBXGroup; children = ( F558E3B192986DC2EBB0ED46 /* AudioEngineTests.swift */, EF1DED14695761FDB3C92ABE /* CloudStreamingTests.swift */, F2BA9BE95AB7E0120C386B49 /* CodecTests.swift */, 6A92720B54E0C6F6952D1DC3 /* GroupTemplateResolverTests.swift */, B407D125FA9B66C2F5AE6449 /* LyricsTests.swift */, 8CE159AE643FA6D443DA2A58 /* ModelTests.swift */, C6B64DCACBFBECC6891C90CC /* PlayerViewModelTests.swift */, A6C84B8774EB16049C5D0634 /* PlaylistViewModelTests.swift */, 3B76DAB40E97BB6491A86E6E /* SyncManagerTests.swift */, B402C83CB50D990A2E067E9E /* WaveformGeneratorTests.swift */, ); path = Tests; sourceTree = ""; }; C196ADF95D5F9524ECF12DD5 /* OGG */ = { isa = PBXGroup; children = ( F5D297D015B8240DFA10635C /* MixBoard-Bridging-Header.h */, F53DEF563120C3F3B6EC9B17 /* ogg.h */, 6A5EBAA40B5EDC89CCE2B2BB /* stb_vorbis_wrapper.h */, A7E76EF83D1D8E970E0A31A5 /* stb_vorbis.c */, ); path = OGG; sourceTree = ""; }; C8F02BC907F648149C5B2FA4 /* Sources */ = { isa = PBXGroup; children = ( ACC56A6245FB276D23559CBF /* MixBoardApp.swift */, 809411FB03B6B689D9DE9907 /* Models */, C196ADF95D5F9524ECF12DD5 /* OGG */, 1332E5B75E8FF27EC72C7E0A /* OpusLib */, 7F61E00E741F32754E1C3E81 /* Resources */, 779EB629DFF798AB1B02E145 /* Services */, DCA751450A9535DB2F2BC49D /* ViewModels */, A0991586314D042664A33F77 /* Views */, ); path = Sources; sourceTree = ""; }; DCA751450A9535DB2F2BC49D /* ViewModels */ = { isa = PBXGroup; children = ( 1C1236BDE95EB6791D6236FB /* PlayerViewModel.swift */, 35E4CBA48B8B32CE1BCAD7C8 /* PlaylistViewModel.swift */, ); path = ViewModels; sourceTree = ""; }; E710654EDC5BEFA0243A5A12 /* UITests */ = { isa = PBXGroup; children = ( 0B2F31275CB65372CA6FA5A0 /* MixBoardUITests.swift */, ); path = UITests; sourceTree = ""; }; FBD9885D8FBB93ECDA027235 /* include */ = { isa = PBXGroup; children = ( 1B9750DC80B4C7A27CDFB781 /* ogg */, 01413B5334A21F4D1CEEE0C0 /* opus */, ); path = include; sourceTree = ""; }; FCBD4522947F6E56E803DDC6 /* Products */ = { isa = PBXGroup; children = ( B2120B77C1DC2A2C489C4495 /* MixBoard.app */, 6EE3DE980DF887C4317E1E04 /* MixBoardiOSTests.xctest */, 6D726B0D736F677437FEC8BA /* MixBoardiOSUITests.xctest */, ); name = Products; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ 0907E09982F49B0BAE3D2CB1 /* MixBoardiOS */ = { isa = PBXNativeTarget; buildConfigurationList = E0B4DD02B0BDE15BA6A3F3F5 /* Build configuration list for PBXNativeTarget "MixBoardiOS" */; buildPhases = ( AE32C9205A6DD086CC7FF992 /* Sources */, B6B7503B80E513DC3E349BB0 /* Resources */, ); buildRules = ( ); dependencies = ( ); name = MixBoardiOS; packageProductDependencies = ( ); productName = MixBoardiOS; productReference = B2120B77C1DC2A2C489C4495 /* MixBoard.app */; productType = "com.apple.product-type.application"; }; 39145F296862BC5011010CD2 /* MixBoardiOSUITests */ = { isa = PBXNativeTarget; buildConfigurationList = F0F1A2471A6DCAC88600712E /* Build configuration list for PBXNativeTarget "MixBoardiOSUITests" */; buildPhases = ( D8B2242123A0DEC9EE065A6A /* Sources */, ); buildRules = ( ); dependencies = ( F93CE1CE125D5C7BC82054FB /* PBXTargetDependency */, ); name = MixBoardiOSUITests; packageProductDependencies = ( ); productName = MixBoardiOSUITests; productReference = 6D726B0D736F677437FEC8BA /* MixBoardiOSUITests.xctest */; productType = "com.apple.product-type.bundle.ui-testing"; }; E27BDA59B075CF1614CF9392 /* MixBoardiOSTests */ = { isa = PBXNativeTarget; buildConfigurationList = 48EC8B6205AC728381EA57DA /* Build configuration list for PBXNativeTarget "MixBoardiOSTests" */; buildPhases = ( 907C57A0DA20F5DD051C447B /* Sources */, ); buildRules = ( ); dependencies = ( 9C526FD964E1266FAD96E657 /* PBXTargetDependency */, ); name = MixBoardiOSTests; packageProductDependencies = ( ); productName = MixBoardiOSTests; productReference = 6EE3DE980DF887C4317E1E04 /* MixBoardiOSTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ 136856E86875B0E72B3BA10F /* Project object */ = { isa = PBXProject; attributes = { BuildIndependentTargetsInParallel = YES; LastUpgradeCheck = 1600; TargetAttributes = { 39145F296862BC5011010CD2 = { TestTargetID = 0907E09982F49B0BAE3D2CB1; }; }; }; buildConfigurationList = 09F18186D8B0B98F03E04D01 /* Build configuration list for PBXProject "MixBoardiOS" */; compatibilityVersion = "Xcode 14.0"; developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( Base, en, ); mainGroup = 79CCDC24146638948CBCEC9E; minimizedProjectReferenceProxies = 1; projectDirPath = ""; projectRoot = ""; targets = ( 0907E09982F49B0BAE3D2CB1 /* MixBoardiOS */, E27BDA59B075CF1614CF9392 /* MixBoardiOSTests */, 39145F296862BC5011010CD2 /* MixBoardiOSUITests */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ B6B7503B80E513DC3E349BB0 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( 95899377852BF2AC878090A8 /* Assets.xcassets in Resources */, 43393F667709155B8274BCF7 /* libogg.a in Resources */, CC051E3E0E64005C419E2A96 /* libopus.a in Resources */, 92AB1107C3C9933966713ACA /* libopusfile.a in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ 907C57A0DA20F5DD051C447B /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( 5E8CEFA7EE241802F4811825 /* AudioEngineTests.swift in Sources */, D2F69A15D9EAD0B0F7AB4321 /* CloudStreamingTests.swift in Sources */, B769842D41E6024B9BDAEC75 /* CodecTests.swift in Sources */, 69501B07F5A60CC4F3FD0FD2 /* GroupTemplateResolverTests.swift in Sources */, E73B39EC4AB5EE03B770ECE9 /* LyricsTests.swift in Sources */, EB0AE5BCF77E33C39B2062AE /* ModelTests.swift in Sources */, 3BB9EDFDD0549752FF295F3E /* PlayerViewModelTests.swift in Sources */, 5628796FA14B92BBF9B43E32 /* PlaylistViewModelTests.swift in Sources */, 713F146AE128A72D7685ED85 /* SyncManagerTests.swift in Sources */, E7254E3B096C82833E6EAC32 /* WaveformGeneratorTests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; AE32C9205A6DD086CC7FF992 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( B54468EDAAEF2726A6B38C0C /* AddGroupToPlaylistSheet.swift in Sources */, A51C687AE19C3E84FD54C5B9 /* AddToPlaylistSheet.swift in Sources */, C5445BE9211773A3C765686F /* AppState.swift in Sources */, 606C5864CF7BFE0FD9D45D49 /* AppTheme.swift in Sources */, EABC718B141E4A741CB7A338 /* ArtworkService.swift in Sources */, 5D6C44C69AF7AC10EF57654F /* AudioEngine.swift in Sources */, 07CF52ADAE84DB873EACEF78 /* BPMDetector.swift in Sources */, 24383DE5713184D409FD9063 /* ChadMusic.swift in Sources */, C3661CDAB1BE2C95AE69ADB1 /* ChadMusicAPIClient.swift in Sources */, DD56D0E534B6AC6DAC3DD238 /* CloudBrowserView.swift in Sources */, 379B32F8532B619ED072A027 /* ContentView.swift in Sources */, BDC7784201348B34183BEA51 /* CuePoint.swift in Sources */, A691BE9634610830E1BB808A /* FolderBrowserView.swift in Sources */, 57711D4FCC56CF0EAA3B9AEA /* GroupTemplateEditorSheet.swift in Sources */, 26A26B41B196B5BD4930DC32 /* GroupTemplateResolver.swift in Sources */, 9E9C91E092AB64883F6EE6B0 /* KeyDetector.swift in Sources */, 912A19B864DD7BA90CDACFB5 /* KeychainService.swift in Sources */, 8C364F881121FBDC0507BE3F /* LRCLIBService.swift in Sources */, 4743395D35A8D95C547C8CB9 /* LibraryManager.swift in Sources */, F9E1EC2A05D690057B963102 /* LibraryView.swift in Sources */, A0784C716AA15CDE2E0B7422 /* LyricsParser.swift in Sources */, 70D3F6D051FF364AEE762044 /* MediaKeyHandler.swift in Sources */, D408096F4D08840C966D4DC3 /* MetadataService.swift in Sources */, 87CF06028B178836BA6DC55D /* MiniPlayerView.swift in Sources */, 7726CE9DEFF12E97426C682E /* MixBoardApp.swift in Sources */, F68E77C46DA49D37AF843648 /* NowPlayingView.swift in Sources */, 9B9F0CF0742875A907E153AA /* OGGDecoder.swift in Sources */, 2A5E4EBC04A32429A488B917 /* OpusDecoder.swift in Sources */, 26BB12106B505E43BF4FC9D6 /* PlayerViewModel.swift in Sources */, CCECD84E3286B2500DE1FDFE /* Playlist.swift in Sources */, BEFC8982E0D4314A9DAEEBD8 /* PlaylistDetailView.swift in Sources */, BFC987A83994155E5702AC68 /* PlaylistFolder.swift in Sources */, D745E3B69D257B06ECB55735 /* PlaylistListView.swift in Sources */, 98815185EDE0A4BCBF17C5B9 /* PlaylistViewModel.swift in Sources */, 7C6A84B33D7D5615EB0B05DE /* QueueEntry.swift in Sources */, 380E85DD78DF70452FD714D3 /* QueueView.swift in Sources */, 759C3290BED9FA13BC6E3826 /* SettingsView.swift in Sources */, 3395A9BA0229770B4DB5BC87 /* StreamingPlayer.swift in Sources */, 8E08196F160224F02E37D063 /* SyncManager.swift in Sources */, D90B76ED48494E5EFAF307AD /* Track.swift in Sources */, B277B6A1AE7A7B3F3B5048BF /* TrackRow.swift in Sources */, 9EA1E32B38B0F9E99870EC59 /* WaveformGenerator.swift in Sources */, 8959E71D433588DDD17678DC /* WaveformView.swift in Sources */, 7B2F8EAEAFFC2EC639BDD70C /* stb_vorbis.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; D8B2242123A0DEC9EE065A6A /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( 9C3EE050D166FC5929766834 /* MixBoardUITests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ 9C526FD964E1266FAD96E657 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 0907E09982F49B0BAE3D2CB1 /* MixBoardiOS */; targetProxy = 504CB81CAC10624153757F4D /* PBXContainerItemProxy */; }; F93CE1CE125D5C7BC82054FB /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 0907E09982F49B0BAE3D2CB1 /* MixBoardiOS */; targetProxy = 47AE927601EF93344ADF48E4 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ 054FB1A27E51816FA4063484 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; 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; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "$(inherited)", "DEBUG=1", ); 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.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.9; }; name = Debug; }; 98514345E6F920F371FAC2C7 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; GENERATE_INFOPLIST_FILE = YES; HEADER_SEARCH_PATHS = ( "$(SRCROOT)/Sources/OpusLib/include", "$(SRCROOT)/Sources/OpusLib/include/opus", "$(SRCROOT)/Sources/OpusLib/include/ogg", ); LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); PRODUCT_BUNDLE_IDENTIFIER = com.mixboard.MixBoardiOSTests; SDKROOT = iphoneos; SWIFT_OBJC_BRIDGING_HEADER = ""; TARGETED_DEVICE_FAMILY = "1,2"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/MixBoard.app/MixBoard"; }; name = Debug; }; 9D1AAD157A839ACDA7AB5B4C /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; 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; GCC_C_LANGUAGE_STANDARD = gnu11; 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.0; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; SWIFT_COMPILATION_MODE = wholemodule; SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 5.9; }; name = Release; }; A0D0816F69E4CC9CEB7F805B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; GENERATE_INFOPLIST_FILE = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); PRODUCT_BUNDLE_IDENTIFIER = com.mixboard.MixBoardiOSUITests; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; TEST_TARGET_NAME = MixBoardiOS; }; name = Debug; }; A78BE4C792293551E614E5C1 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; GENERATE_INFOPLIST_FILE = YES; HEADER_SEARCH_PATHS = ( "$(SRCROOT)/Sources/OpusLib/include", "$(SRCROOT)/Sources/OpusLib/include/opus", "$(SRCROOT)/Sources/OpusLib/include/ogg", ); LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); PRODUCT_BUNDLE_IDENTIFIER = com.mixboard.MixBoardiOSTests; SDKROOT = iphoneos; SWIFT_OBJC_BRIDGING_HEADER = ""; TARGETED_DEVICE_FAMILY = "1,2"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/MixBoard.app/MixBoard"; }; name = Release; }; AEC03CA1B6D82279C160A07B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; GENERATE_INFOPLIST_FILE = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); PRODUCT_BUNDLE_IDENTIFIER = com.mixboard.MixBoardiOSUITests; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; TEST_TARGET_NAME = MixBoardiOS; }; name = Release; }; B639A0432641C825AA778529 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_ALTERNATE_APPICON_NAMES = "AppIcon-Green AppIcon-Lime AppIcon-Cyan AppIcon-Blue AppIcon-Purple AppIcon-Pink AppIcon-Red AppIcon-Orange AppIcon-Gold AppIcon-White"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; CODE_SIGN_ENTITLEMENTS = MixBoardiOS.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = ZPD66G9CB6; "GCC_PREPROCESSOR_DEFINITIONS[sdk=iphonesimulator*]" = "DISABLE_OPUS=1"; GENERATE_INFOPLIST_FILE = YES; HEADER_SEARCH_PATHS = ( "$(SRCROOT)/Sources/OpusLib/include", "$(SRCROOT)/Sources/OpusLib/include/opus", "$(SRCROOT)/Sources/OpusLib/include/ogg", ); INFOPLIST_FILE = Info.plist; INFOPLIST_GENERATION_MODE = GeneratedByXcode; INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.music"; INFOPLIST_KEY_LSSupportsOpeningDocumentsInPlace = YES; INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; INFOPLIST_KEY_UILaunchScreen_Generation = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportsDocumentBrowser = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); "LIBRARY_SEARCH_PATHS[sdk=iphoneos*]" = "$(SRCROOT)/Sources/OpusLib/lib"; "LIBRARY_SEARCH_PATHS[sdk=iphonesimulator*]" = ""; MARKETING_VERSION = 1.0.0; "OTHER_LDFLAGS[sdk=iphoneos*]" = ( "-logg", "-lopus", "-lopusfile", ); "OTHER_LDFLAGS[sdk=iphonesimulator*]" = ""; PRODUCT_BUNDLE_IDENTIFIER = com.mixboard.MixBoardiOS; PRODUCT_NAME = MixBoard; SDKROOT = iphoneos; SUPPORTS_MACCATALYST = NO; "SWIFT_ACTIVE_COMPILATION_CONDITIONS[sdk=iphonesimulator*]" = DISABLE_OPUS; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_OBJC_BRIDGING_HEADER = "Sources/OGG/MixBoard-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-O"; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Release; }; CCC050D6A11BD5A595ED8050 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_ALTERNATE_APPICON_NAMES = "AppIcon-Green AppIcon-Lime AppIcon-Cyan AppIcon-Blue AppIcon-Purple AppIcon-Pink AppIcon-Red AppIcon-Orange AppIcon-Gold AppIcon-White"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; CODE_SIGN_ENTITLEMENTS = MixBoardiOS.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = ZPD66G9CB6; "GCC_PREPROCESSOR_DEFINITIONS[sdk=iphonesimulator*]" = "DISABLE_OPUS=1"; GENERATE_INFOPLIST_FILE = YES; HEADER_SEARCH_PATHS = ( "$(SRCROOT)/Sources/OpusLib/include", "$(SRCROOT)/Sources/OpusLib/include/opus", "$(SRCROOT)/Sources/OpusLib/include/ogg", ); INFOPLIST_FILE = Info.plist; INFOPLIST_GENERATION_MODE = GeneratedByXcode; INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.music"; INFOPLIST_KEY_LSSupportsOpeningDocumentsInPlace = YES; INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; INFOPLIST_KEY_UILaunchScreen_Generation = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportsDocumentBrowser = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); "LIBRARY_SEARCH_PATHS[sdk=iphoneos*]" = "$(SRCROOT)/Sources/OpusLib/lib"; "LIBRARY_SEARCH_PATHS[sdk=iphonesimulator*]" = ""; MARKETING_VERSION = 1.0.0; "OTHER_LDFLAGS[sdk=iphoneos*]" = ( "-logg", "-lopus", "-lopusfile", ); "OTHER_LDFLAGS[sdk=iphonesimulator*]" = ""; PRODUCT_BUNDLE_IDENTIFIER = com.mixboard.MixBoardiOS; PRODUCT_NAME = MixBoard; SDKROOT = iphoneos; SUPPORTS_MACCATALYST = NO; "SWIFT_ACTIVE_COMPILATION_CONDITIONS[sdk=iphonesimulator*]" = DISABLE_OPUS; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_OBJC_BRIDGING_HEADER = "Sources/OGG/MixBoard-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Debug; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ 09F18186D8B0B98F03E04D01 /* Build configuration list for PBXProject "MixBoardiOS" */ = { isa = XCConfigurationList; buildConfigurations = ( 054FB1A27E51816FA4063484 /* Debug */, 9D1AAD157A839ACDA7AB5B4C /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; 48EC8B6205AC728381EA57DA /* Build configuration list for PBXNativeTarget "MixBoardiOSTests" */ = { isa = XCConfigurationList; buildConfigurations = ( 98514345E6F920F371FAC2C7 /* Debug */, A78BE4C792293551E614E5C1 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; E0B4DD02B0BDE15BA6A3F3F5 /* Build configuration list for PBXNativeTarget "MixBoardiOS" */ = { isa = XCConfigurationList; buildConfigurations = ( CCC050D6A11BD5A595ED8050 /* Debug */, B639A0432641C825AA778529 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; F0F1A2471A6DCAC88600712E /* Build configuration list for PBXNativeTarget "MixBoardiOSUITests" */ = { isa = XCConfigurationList; buildConfigurations = ( A0D0816F69E4CC9CEB7F805B /* Debug */, AEC03CA1B6D82279C160A07B /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; /* End XCConfigurationList section */ }; rootObject = 136856E86875B0E72B3BA10F /* Project object */; }