From 013332edb1596feec73da271b1f40c2e80d3c012 Mon Sep 17 00:00:00 2001 From: vspader Date: Sun, 5 Jun 2005 18:52:35 +0000 Subject: [PATCH] Added AAC seeking. Basic AAC support is finished. --- AppController.h | 11 + AppController.m | 11 + Cog.xcode/project.pbxproj | 7 - Cog.xcode/xugg.mode1 | 178 +- Cog.xcode/xugg.pbxuser | 2091 ++++++++++++++++--- English.lproj/MainMenu.nib/classes.nib | 9 + English.lproj/MainMenu.nib/info.nib | 2 +- English.lproj/MainMenu.nib/keyedobjects.nib | Bin 39818 -> 40568 bytes Feedback/FeedbackController.m | 10 +- Feedback/FeedbackSocket.m | 2 +- Libraries/FAAD2/FAAD2.xcode/project.pbxproj | 237 ++- Libraries/FAAD2/FAAD2.xcode/xugg.mode1 | 159 +- Libraries/FAAD2/FAAD2.xcode/xugg.pbxuser | 163 +- Libraries/MAC/MAC.xcode/xugg.mode1 | 20 +- Libraries/MAC/MAC.xcode/xugg.pbxuser | 61 +- PLANNED | 14 +- Sound.m | 25 +- SoundFile/AACFile.h | 3 + SoundFile/AACFile.m | 66 +- SoundFile/FlacFile.m | 4 +- SoundFile/MPEGFile.m | 4 +- SoundFile/MonkeysFile.m | 4 +- SoundFile/MusepackFile.m | 4 +- SoundFile/SoundFile.h | 4 +- SoundFile/SoundFile.m | 9 +- SoundFile/VorbisFile.m | 2 + SoundFile/WaveFile.m | 4 +- 27 files changed, 2578 insertions(+), 526 deletions(-) diff --git a/AppController.h b/AppController.h index eff4ba803..170ed6b7a 100644 --- a/AppController.h +++ b/AppController.h @@ -9,6 +9,17 @@ IBOutlet PlaylistController *playlistController; IBOutlet NSPanel *infoPanel; IBOutlet NSWindow *mainWindow; + + IBOutlet NSButton *playButton; + IBOutlet NSButton *stopButton; + IBOutlet NSButton *prevButton; + IBOutlet NSButton *nextButton; + IBOutlet NSButton *addButton; + IBOutlet NSButton *remButton; + IBOutlet NSButton *infoButton; + IBOutlet NSButton *shuffleButton; + IBOutlet NSButton *repeatButton; + } - (IBAction)addFiles:(id)sender; - (IBAction)delEntries:(id)sender; diff --git a/AppController.m b/AppController.m index 5d84654bb..a10a8b4a0 100644 --- a/AppController.m +++ b/AppController.m @@ -55,6 +55,17 @@ - (void)awakeFromNib { // DBLog(@"AWAKe"); + + [playButton setToolTip:@"Play"]; + [stopButton setToolTip:@"Stop"]; + [prevButton setToolTip:@"Previous"]; + [nextButton setToolTip:@"Next"]; + [addButton setToolTip:@"Add files"]; + [remButton setToolTip:@"Remove selected files"]; + [infoButton setToolTip:@"Information on the selected file."]; + [shuffleButton setToolTip:@"Shuffle mode"]; + [repeatButton setToolTip:@"Repeat mode"]; + NSString *filename = @"~/Library/Application Support/Cog/Default.playlist"; [playlistController loadPlaylist:[filename stringByExpandingTildeInPath]]; } diff --git a/Cog.xcode/project.pbxproj b/Cog.xcode/project.pbxproj index de9952e6b..b4b78bff8 100644 --- a/Cog.xcode/project.pbxproj +++ b/Cog.xcode/project.pbxproj @@ -559,12 +559,6 @@ refType = 4; sourceTree = ""; }; - 8E14E47B084CF1A200246BCC = { - fileRef = 8E14E479084CF1A200246BCC; - isa = PBXBuildFile; - settings = { - }; - }; 8E14E47C084CF1A200246BCC = { fileRef = 8E14E47A084CF1A200246BCC; isa = PBXBuildFile; @@ -1657,7 +1651,6 @@ 8EFFB6D4083302A500C53833, 8EFFB6D5083302A500C53833, 8EFFB6D6083302A500C53833, - 8E14E47B084CF1A200246BCC, ); isa = PBXCopyFilesBuildPhase; runOnlyForDeploymentPostprocessing = 0; diff --git a/Cog.xcode/xugg.mode1 b/Cog.xcode/xugg.mode1 index 1dc1d2f27..e18018171 100644 --- a/Cog.xcode/xugg.mode1 +++ b/Cog.xcode/xugg.mode1 @@ -255,18 +255,16 @@ 29B97314FDCFA39411CA2CEA 080E96DDFE201D6D7F000001 - 8E267D080837F7A6004ACBC5 - 8E47215C08318D12001F89FA 8EF6FA64082DA525006F7BE6 - 29B97323FDCFA39411CA2CEA 1C37FBAC04509CD000000102 + 8EFC6D17085376D100C67D06 1C37FABC05509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 7 - 3 + 5 1 0 @@ -291,7 +289,7 @@ 186 RubberWindowFrame - 1 122 1024 624 0 0 1024 746 + 2 122 1024 624 0 0 1024 746 Module PBXSmartGroupTreeModule @@ -309,7 +307,7 @@ PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel - UpdateController.m + AACFile.m PBXSplitModuleInNavigatorKey Split0 @@ -317,18 +315,17 @@ PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel - UpdateController.m + AACFile.m _historyCapacity 0 bookmark - 8E9E2E85084FA7E400599965 + 8EFC6E1B085380B800C67D06 history 8EF6FACD082DAA2B006F7BE6 8EF6FAD1082DAA2B006F7BE6 8E9BF100082FEF6B00B26943 8E267DDB0837FE5F004ACBC5 - 8E267E0008380176004ACBC5 8E1A1826083806B700AEA302 8E6082C7083920310017AECF 8E25B5E5083CDD4A0064353E @@ -340,49 +337,49 @@ 8EC8FBD20842932A00DF2C98 8EDC88A90842F8DE007D1532 8EDC88B50842F936007D1532 - 8E1BDA7908430E7700A08868 8ED833CD08457E6B0033CDBD 8E6F2A2708480D900011F126 - 8E6F2A2808480D900011F126 8E10DC00084BBE490013815C - 8E10DC01084BBE490013815C 8E10DC02084BBE490013815C - 8E94D973084BE3D1007F0AEB 8E94D9D2084BEA32007F0AEB 8E94D9D3084BEA32007F0AEB - 8E94DA67084BF01F007F0AEB - 8E94DA68084BF01F007F0AEB 8E5A8EA4084CB19900AE6D62 - 8E5A9054084CB7FE00AE6D62 8E5A90B7084CC25900AE6D62 8E5A90B8084CC25900AE6D62 8EA0A215084CC43F008DFEC9 8EA0A216084CC43F008DFEC9 - 8EA0A217084CC43F008DFEC9 - 8EA0A218084CC43F008DFEC9 8EA0A21A084CC43F008DFEC9 8E14E4A5084D089100246BCC - 8E14E4A6084D089100246BCC - 8E14E4A7084D089100246BCC - 8E14E4AD084D089100246BCC - 8E14E4B0084D089100246BCC - 8E74C915084D451C00DF47F3 8E74C916084D451C00DF47F3 - 8E74C919084D451C00DF47F3 - 8E74C91A084D451C00DF47F3 - 8E74C91B084D451C00DF47F3 - 8EC18D9D084E3D8200AE0BA9 - 8EC18D9E084E3D8200AE0BA9 8EC18D9F084E3D8200AE0BA9 - 8EC18DDB084E403100AE0BA9 - 8EC18EA5084E55A800AE0BA9 - 8EC18EB8084E57D500AE0BA9 - 8EC7DA89084E672F00A079A7 - 8EC7DA8A084E672F00A079A7 - 8E9E2E7F084FA7E400599965 - 8E9E2E80084FA7E400599965 8E9E2E81084FA7E400599965 - 8ED3C9B1084915CE00BB7797 + 8EC156F4084FEB8900BB24E8 + 8EC156F5084FEB8900BB24E8 + 8E2752B70850A92E001618CD + 8E2BC83D0850F56200BEAC36 + 8EE2A5B808511A1800367489 + 8EE2A5B908511A1800367489 + 8E72BC630851408F00E34F1D + 8E72BC640851408F00E34F1D + 8E72BC650851408F00E34F1D + 8EFC6CC00853721700C67D06 + 8EFC6D18085376D100C67D06 + 8EFC6D1A085376D100C67D06 + 8EFC6DE7085380B800C67D06 + 8EFC6DE8085380B800C67D06 + 8EFC6DE9085380B800C67D06 + 8EFC6DEA085380B800C67D06 + 8EFC6DEB085380B800C67D06 + 8EFC6DEC085380B800C67D06 + 8EFC6DED085380B800C67D06 + 8EFC6DEE085380B800C67D06 + 8EFC6DEF085380B800C67D06 + 8EFC6DF0085380B800C67D06 + 8EFC6DF1085380B800C67D06 + 8EFC6DF2085380B800C67D06 + 8EFC6DF3085380B800C67D06 + 8EFC6DF4085380B800C67D06 + 8EFC6DF5085380B800C67D06 prevStack @@ -442,12 +439,80 @@ 8E14E4B3084D089100246BCC 8E14E4B4084D089100246BCC 8E14E4B5084D089100246BCC - 8E14E4CB084D089100246BCC - 8EC18EAA084E55A800AE0BA9 8EC18EBD084E57D500AE0BA9 - 8E9E2E82084FA7E400599965 - 8E9E2E83084FA7E400599965 - 8E9E2E84084FA7E400599965 + 8EC156F9084FEB8900BB24E8 + 8EFC6CC30853721700C67D06 + 8EFC6CC40853721700C67D06 + 8EFC6CC50853721700C67D06 + 8EFC6CD5085372A800C67D06 + 8EFC6CD6085372A800C67D06 + 8EFC6D21085376D100C67D06 + 8EFC6D22085376D100C67D06 + 8EFC6D23085376D100C67D06 + 8EFC6D24085376D100C67D06 + 8EFC6D25085376D100C67D06 + 8EFC6D26085376D100C67D06 + 8EFC6D27085376D100C67D06 + 8EFC6D28085376D100C67D06 + 8EFC6D29085376D100C67D06 + 8EFC6D2A085376D100C67D06 + 8EFC6D2B085376D100C67D06 + 8EFC6D2C085376D100C67D06 + 8EFC6D2D085376D100C67D06 + 8EFC6D2E085376D100C67D06 + 8EFC6D2F085376D100C67D06 + 8EFC6D30085376D100C67D06 + 8EFC6D31085376D100C67D06 + 8EFC6D32085376D100C67D06 + 8EFC6D33085376D100C67D06 + 8EFC6D34085376D100C67D06 + 8EFC6D35085376D100C67D06 + 8EFC6D36085376D100C67D06 + 8EFC6D37085376D100C67D06 + 8EFC6D38085376D100C67D06 + 8EFC6D39085376D100C67D06 + 8EFC6D3A085376D100C67D06 + 8EFC6D3B085376D100C67D06 + 8EFC6D3C085376D100C67D06 + 8EFC6D3D085376D100C67D06 + 8EFC6D3E085376D100C67D06 + 8EFC6DF6085380B800C67D06 + 8EFC6DF7085380B800C67D06 + 8EFC6DF8085380B800C67D06 + 8EFC6DF9085380B800C67D06 + 8EFC6DFA085380B800C67D06 + 8EFC6DFB085380B800C67D06 + 8EFC6DFC085380B800C67D06 + 8EFC6DFD085380B800C67D06 + 8EFC6DFE085380B800C67D06 + 8EFC6DFF085380B800C67D06 + 8EFC6E00085380B800C67D06 + 8EFC6E01085380B800C67D06 + 8EFC6E02085380B800C67D06 + 8EFC6E03085380B800C67D06 + 8EFC6E04085380B800C67D06 + 8EFC6E05085380B800C67D06 + 8EFC6E06085380B800C67D06 + 8EFC6E07085380B800C67D06 + 8EFC6E08085380B800C67D06 + 8EFC6E09085380B800C67D06 + 8EFC6E0A085380B800C67D06 + 8EFC6E0B085380B800C67D06 + 8EFC6E0C085380B800C67D06 + 8EFC6E0D085380B800C67D06 + 8EFC6E0E085380B800C67D06 + 8EFC6E0F085380B800C67D06 + 8EFC6E10085380B800C67D06 + 8EFC6E11085380B800C67D06 + 8EFC6E12085380B800C67D06 + 8EFC6E13085380B800C67D06 + 8EFC6E14085380B800C67D06 + 8EFC6E15085380B800C67D06 + 8EFC6E16085380B800C67D06 + 8EFC6E17085380B800C67D06 + 8EFC6E18085380B800C67D06 + 8EFC6E19085380B800C67D06 + 8EFC6E1A085380B800C67D06 SplitCount @@ -461,7 +526,7 @@ Frame {{0, 0}, {816, 404}} RubberWindowFrame - 1 122 1024 624 0 0 1024 746 + 2 122 1024 624 0 0 1024 746 Module PBXNavigatorGroup @@ -481,7 +546,7 @@ Frame {{0, 409}, {816, 174}} RubberWindowFrame - 1 122 1024 624 0 0 1024 746 + 2 122 1024 624 0 0 1024 746 Module XCDetailModule @@ -505,9 +570,9 @@ TableOfContents - 8E9E2E86084FA7E400599965 + 8EFC6CC70853721700C67D06 1CE0B1FE06471DED0097A5F4 - 8E9E2E87084FA7E400599965 + 8EFC6CC80853721700C67D06 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 @@ -642,10 +707,11 @@ WindowOrderList 1C0AD2B3069F1EA900FABCE6 + 8EF6FAA6082DA951006F7BE6 /Users/xugg/Projects/Cog/Cog.xcode WindowString - 1 122 1024 624 0 0 1024 746 + 2 122 1024 624 0 0 1024 746 WindowTools @@ -661,14 +727,12 @@ Dock - BecomeActive - ContentConfiguration PBXProjectModuleGUID 1CD0528F0623707200166675 PBXProjectModuleLabel - MusepackFile.m + AACFile.m StatusBarVisibility @@ -685,6 +749,8 @@ 342pt + BecomeActive + ContentConfiguration PBXBuildLogShowsTranscriptDefaultKey @@ -726,7 +792,7 @@ TableOfContents 8EF6FAA6082DA951006F7BE6 - 8E2BC808084F8A05004518D1 + 8EFC6CE5085372F200C67D06 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID @@ -1038,8 +1104,8 @@ yes sizes - {{0, 0}, {493, 168}} - {{0, 173}, {493, 270}} + {{0, 0}, {367, 168}} + {{0, 173}, {367, 270}} VerticalSplitView @@ -1065,7 +1131,7 @@ Frame {{0, 0}, {1024, 583}} RubberWindowFrame - 0 123 1024 623 0 0 1024 746 + 4 123 1024 623 0 0 1024 746 Module PBXRunSessionModule @@ -1088,14 +1154,14 @@ TableOfContents 1C0AD2B3069F1EA900FABCE6 - 8E9E2E7D084FA1E200599965 + 8EFC6CFB0853745400C67D06 1CD0528B0623707200166675 - 8E9E2E7E084FA1E200599965 + 8EFC6CFC0853745400C67D06 ToolbarConfiguration xcode.toolbar.config.run WindowString - 0 123 1024 623 0 0 1024 746 + 4 123 1024 623 0 0 1024 746 WindowToolGUID 1C0AD2B3069F1EA900FABCE6 WindowToolIsVisible diff --git a/Cog.xcode/xugg.pbxuser b/Cog.xcode/xugg.pbxuser index 64113d6cd..4b54596b1 100644 --- a/Cog.xcode/xugg.pbxuser +++ b/Cog.xcode/xugg.pbxuser @@ -81,14 +81,13 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 139436466; - PBXWorkspaceStateSaveDate = 139436466; + PBXPerProjectTemplateStateSaveDate = 139686401; + PBXWorkspaceStateSaveDate = 139686401; }; perUserProjectItems = { 8E0EBF58084BAA56003A6E64 = 8E0EBF58084BAA56003A6E64; 8E0EBF59084BAA56003A6E64 = 8E0EBF59084BAA56003A6E64; 8E10DC00084BBE490013815C = 8E10DC00084BBE490013815C; - 8E10DC01084BBE490013815C = 8E10DC01084BBE490013815C; 8E10DC02084BBE490013815C = 8E10DC02084BBE490013815C; 8E10DC08084BBE490013815C = 8E10DC08084BBE490013815C; 8E14E4A5084D089100246BCC = 8E14E4A5084D089100246BCC; @@ -99,7 +98,6 @@ 8E14E4B3084D089100246BCC = 8E14E4B3084D089100246BCC; 8E14E4B4084D089100246BCC = 8E14E4B4084D089100246BCC; 8E14E4B5084D089100246BCC = 8E14E4B5084D089100246BCC; - 8E14E4CB084D089100246BCC = 8E14E4CB084D089100246BCC; 8E1A1826083806B700AEA302 = 8E1A1826083806B700AEA302; 8E1A182C083806B700AEA302 = 8E1A182C083806B700AEA302; 8E1BDA7908430E7700A08868 = 8E1BDA7908430E7700A08868; @@ -112,11 +110,12 @@ 8E267D940837F963004ACBC5 = 8E267D940837F963004ACBC5; 8E267DA00837FA6E004ACBC5 = 8E267DA00837FA6E004ACBC5; 8E267DDB0837FE5F004ACBC5 = 8E267DDB0837FE5F004ACBC5; - 8E267E0008380176004ACBC5 = 8E267E0008380176004ACBC5; 8E267E0308380176004ACBC5 = 8E267E0308380176004ACBC5; 8E267E1A083801D8004ACBC5 = 8E267E1A083801D8004ACBC5; + 8E2752B70850A92E001618CD = 8E2752B70850A92E001618CD; 8E287164083695080013CE39 = 8E287164083695080013CE39; 8E297910083D892800F2C55A = 8E297910083D892800F2C55A; + 8E2BC83D0850F56200BEAC36 = 8E2BC83D0850F56200BEAC36; 8E4521C408327F4C00F8BA7C = 8E4521C408327F4C00F8BA7C; 8E4522A608329C9B00F8BA7C = 8E4522A608329C9B00F8BA7C; 8E4522AF08329C9B00F8BA7C = 8E4522AF08329C9B00F8BA7C; @@ -132,7 +131,6 @@ 8E4721E108319EFC001F89FA = 8E4721E108319EFC001F89FA; 8E4721E508319EFC001F89FA = 8E4721E508319EFC001F89FA; 8E5A8EA4084CB19900AE6D62 = 8E5A8EA4084CB19900AE6D62; - 8E5A9054084CB7FE00AE6D62 = 8E5A9054084CB7FE00AE6D62; 8E5A90B7084CC25900AE6D62 = 8E5A90B7084CC25900AE6D62; 8E5A90B8084CC25900AE6D62 = 8E5A90B8084CC25900AE6D62; 8E5A90BB084CC25900AE6D62 = 8E5A90BB084CC25900AE6D62; @@ -145,13 +143,13 @@ 8E652A39083E1A7900A7AF1B = 8E652A39083E1A7900A7AF1B; 8E652A3A083E1A7900A7AF1B = 8E652A3A083E1A7900A7AF1B; 8E6F2A2708480D900011F126 = 8E6F2A2708480D900011F126; - 8E6F2A2808480D900011F126 = 8E6F2A2808480D900011F126; + 8E72BC630851408F00E34F1D = 8E72BC630851408F00E34F1D; + 8E72BC640851408F00E34F1D = 8E72BC640851408F00E34F1D; + 8E72BC650851408F00E34F1D = 8E72BC650851408F00E34F1D; + 8E72BC690851408F00E34F1D = 8E72BC690851408F00E34F1D; 8E74C915084D451C00DF47F3 = 8E74C915084D451C00DF47F3; 8E74C916084D451C00DF47F3 = 8E74C916084D451C00DF47F3; 8E74C919084D451C00DF47F3 = 8E74C919084D451C00DF47F3; - 8E74C91A084D451C00DF47F3 = 8E74C91A084D451C00DF47F3; - 8E74C91B084D451C00DF47F3 = 8E74C91B084D451C00DF47F3; - 8E94D973084BE3D1007F0AEB = 8E94D973084BE3D1007F0AEB; 8E94D9D2084BEA32007F0AEB = 8E94D9D2084BEA32007F0AEB; 8E94D9D3084BEA32007F0AEB = 8E94D9D3084BEA32007F0AEB; 8E94DA67084BF01F007F0AEB = 8E94DA67084BF01F007F0AEB; @@ -161,27 +159,22 @@ 8E9E2E7F084FA7E400599965 = 8E9E2E7F084FA7E400599965; 8E9E2E80084FA7E400599965 = 8E9E2E80084FA7E400599965; 8E9E2E81084FA7E400599965 = 8E9E2E81084FA7E400599965; - 8E9E2E82084FA7E400599965 = 8E9E2E82084FA7E400599965; - 8E9E2E83084FA7E400599965 = 8E9E2E83084FA7E400599965; - 8E9E2E84084FA7E400599965 = 8E9E2E84084FA7E400599965; - 8E9E2E85084FA7E400599965 = 8E9E2E85084FA7E400599965; 8EA0A215084CC43F008DFEC9 = 8EA0A215084CC43F008DFEC9; 8EA0A216084CC43F008DFEC9 = 8EA0A216084CC43F008DFEC9; - 8EA0A217084CC43F008DFEC9 = 8EA0A217084CC43F008DFEC9; 8EA0A218084CC43F008DFEC9 = 8EA0A218084CC43F008DFEC9; 8EA0A21A084CC43F008DFEC9 = 8EA0A21A084CC43F008DFEC9; + 8EBA6E040852AAA900CC7940 = 8EBA6E040852AAA900CC7940; + 8EC156F4084FEB8900BB24E8 = 8EC156F4084FEB8900BB24E8; + 8EC156F5084FEB8900BB24E8 = 8EC156F5084FEB8900BB24E8; + 8EC156F9084FEB8900BB24E8 = 8EC156F9084FEB8900BB24E8; 8EC18D9D084E3D8200AE0BA9 = 8EC18D9D084E3D8200AE0BA9; - 8EC18D9E084E3D8200AE0BA9 = 8EC18D9E084E3D8200AE0BA9; 8EC18D9F084E3D8200AE0BA9 = 8EC18D9F084E3D8200AE0BA9; 8EC18DDB084E403100AE0BA9 = 8EC18DDB084E403100AE0BA9; - 8EC18EA5084E55A800AE0BA9 = 8EC18EA5084E55A800AE0BA9; - 8EC18EAA084E55A800AE0BA9 = 8EC18EAA084E55A800AE0BA9; 8EC18EB8084E57D500AE0BA9 = 8EC18EB8084E57D500AE0BA9; 8EC18EBD084E57D500AE0BA9 = 8EC18EBD084E57D500AE0BA9; 8EC7DA89084E672F00A079A7 = 8EC7DA89084E672F00A079A7; 8EC7DA8A084E672F00A079A7 = 8EC7DA8A084E672F00A079A7; 8EC8FBD20842932A00DF2C98 = 8EC8FBD20842932A00DF2C98; - 8ED3C9B1084915CE00BB7797 = 8ED3C9B1084915CE00BB7797; 8ED833CD08457E6B0033CDBD = 8ED833CD08457E6B0033CDBD; 8EDC88A90842F8DE007D1532 = 8EDC88A90842F8DE007D1532; 8EDC88B50842F936007D1532 = 8EDC88B50842F936007D1532; @@ -189,6 +182,8 @@ 8EDCBDDC084061E500F5C7E3 = 8EDCBDDC084061E500F5C7E3; 8EDCBEF40840FA2200F5C7E3 = 8EDCBEF40840FA2200F5C7E3; 8EDE0CCC08369EB200EABFE4 = 8EDE0CCC08369EB200EABFE4; + 8EE2A5B808511A1800367489 = 8EE2A5B808511A1800367489; + 8EE2A5B908511A1800367489 = 8EE2A5B908511A1800367489; 8EE4A6C3082E6F6100415456 = 8EE4A6C3082E6F6100415456; 8EE4A6C8082E6F6100415456 = 8EE4A6C8082E6F6100415456; 8EE4A6FE082E704E00415456 = 8EE4A6FE082E704E00415456; @@ -207,6 +202,154 @@ 8EF6FAE1082DAA2B006F7BE6 = 8EF6FAE1082DAA2B006F7BE6; 8EF6FAEF082DAA2B006F7BE6 = 8EF6FAEF082DAA2B006F7BE6; 8EF6FAF3082DAA2B006F7BE6 = 8EF6FAF3082DAA2B006F7BE6; + 8EFC6CC00853721700C67D06 = 8EFC6CC00853721700C67D06; + 8EFC6CC10853721700C67D06 = 8EFC6CC10853721700C67D06; + 8EFC6CC20853721700C67D06 = 8EFC6CC20853721700C67D06; + 8EFC6CC30853721700C67D06 = 8EFC6CC30853721700C67D06; + 8EFC6CC40853721700C67D06 = 8EFC6CC40853721700C67D06; + 8EFC6CC50853721700C67D06 = 8EFC6CC50853721700C67D06; + 8EFC6CC60853721700C67D06 = 8EFC6CC60853721700C67D06; + 8EFC6CD3085372A800C67D06 = 8EFC6CD3085372A800C67D06; + 8EFC6CD4085372A800C67D06 = 8EFC6CD4085372A800C67D06; + 8EFC6CD5085372A800C67D06 = 8EFC6CD5085372A800C67D06; + 8EFC6CD6085372A800C67D06 = 8EFC6CD6085372A800C67D06; + 8EFC6CD7085372A800C67D06 = 8EFC6CD7085372A800C67D06; + 8EFC6CE3085372F200C67D06 = 8EFC6CE3085372F200C67D06; + 8EFC6CE4085372F200C67D06 = 8EFC6CE4085372F200C67D06; + 8EFC6CEA0853732D00C67D06 = 8EFC6CEA0853732D00C67D06; + 8EFC6CEB0853732D00C67D06 = 8EFC6CEB0853732D00C67D06; + 8EFC6CFA0853745400C67D06 = 8EFC6CFA0853745400C67D06; + 8EFC6D0D0853760900C67D06 = 8EFC6D0D0853760900C67D06; + 8EFC6D100853768500C67D06 = 8EFC6D100853768500C67D06; + 8EFC6D130853769900C67D06 = 8EFC6D130853769900C67D06; + 8EFC6D16085376C100C67D06 = 8EFC6D16085376C100C67D06; + 8EFC6D18085376D100C67D06 = 8EFC6D18085376D100C67D06; + 8EFC6D19085376D100C67D06 = 8EFC6D19085376D100C67D06; + 8EFC6D1A085376D100C67D06 = 8EFC6D1A085376D100C67D06; + 8EFC6D1B085376D100C67D06 = 8EFC6D1B085376D100C67D06; + 8EFC6D1C085376D100C67D06 = 8EFC6D1C085376D100C67D06; + 8EFC6D1D085376D100C67D06 = 8EFC6D1D085376D100C67D06; + 8EFC6D1E085376D100C67D06 = 8EFC6D1E085376D100C67D06; + 8EFC6D1F085376D100C67D06 = 8EFC6D1F085376D100C67D06; + 8EFC6D20085376D100C67D06 = 8EFC6D20085376D100C67D06; + 8EFC6D21085376D100C67D06 = 8EFC6D21085376D100C67D06; + 8EFC6D22085376D100C67D06 = 8EFC6D22085376D100C67D06; + 8EFC6D23085376D100C67D06 = 8EFC6D23085376D100C67D06; + 8EFC6D24085376D100C67D06 = 8EFC6D24085376D100C67D06; + 8EFC6D25085376D100C67D06 = 8EFC6D25085376D100C67D06; + 8EFC6D26085376D100C67D06 = 8EFC6D26085376D100C67D06; + 8EFC6D27085376D100C67D06 = 8EFC6D27085376D100C67D06; + 8EFC6D28085376D100C67D06 = 8EFC6D28085376D100C67D06; + 8EFC6D29085376D100C67D06 = 8EFC6D29085376D100C67D06; + 8EFC6D2A085376D100C67D06 = 8EFC6D2A085376D100C67D06; + 8EFC6D2B085376D100C67D06 = 8EFC6D2B085376D100C67D06; + 8EFC6D2C085376D100C67D06 = 8EFC6D2C085376D100C67D06; + 8EFC6D2D085376D100C67D06 = 8EFC6D2D085376D100C67D06; + 8EFC6D2E085376D100C67D06 = 8EFC6D2E085376D100C67D06; + 8EFC6D2F085376D100C67D06 = 8EFC6D2F085376D100C67D06; + 8EFC6D30085376D100C67D06 = 8EFC6D30085376D100C67D06; + 8EFC6D31085376D100C67D06 = 8EFC6D31085376D100C67D06; + 8EFC6D32085376D100C67D06 = 8EFC6D32085376D100C67D06; + 8EFC6D33085376D100C67D06 = 8EFC6D33085376D100C67D06; + 8EFC6D34085376D100C67D06 = 8EFC6D34085376D100C67D06; + 8EFC6D35085376D100C67D06 = 8EFC6D35085376D100C67D06; + 8EFC6D36085376D100C67D06 = 8EFC6D36085376D100C67D06; + 8EFC6D37085376D100C67D06 = 8EFC6D37085376D100C67D06; + 8EFC6D38085376D100C67D06 = 8EFC6D38085376D100C67D06; + 8EFC6D39085376D100C67D06 = 8EFC6D39085376D100C67D06; + 8EFC6D3A085376D100C67D06 = 8EFC6D3A085376D100C67D06; + 8EFC6D3B085376D100C67D06 = 8EFC6D3B085376D100C67D06; + 8EFC6D3C085376D100C67D06 = 8EFC6D3C085376D100C67D06; + 8EFC6D3D085376D100C67D06 = 8EFC6D3D085376D100C67D06; + 8EFC6D3E085376D100C67D06 = 8EFC6D3E085376D100C67D06; + 8EFC6D3F085376D100C67D06 = 8EFC6D3F085376D100C67D06; + 8EFC6D440853772000C67D06 = 8EFC6D440853772000C67D06; + 8EFC6D47085377A400C67D06 = 8EFC6D47085377A400C67D06; + 8EFC6D4A085377D900C67D06 = 8EFC6D4A085377D900C67D06; + 8EFC6D4F0853786000C67D06 = 8EFC6D4F0853786000C67D06; + 8EFC6D520853787100C67D06 = 8EFC6D520853787100C67D06; + 8EFC6D570853791100C67D06 = 8EFC6D570853791100C67D06; + 8EFC6D5A0853793800C67D06 = 8EFC6D5A0853793800C67D06; + 8EFC6D5D0853798C00C67D06 = 8EFC6D5D0853798C00C67D06; + 8EFC6D64085379E100C67D06 = 8EFC6D64085379E100C67D06; + 8EFC6D67085379F000C67D06 = 8EFC6D67085379F000C67D06; + 8EFC6D6A08537A1200C67D06 = 8EFC6D6A08537A1200C67D06; + 8EFC6D7D08537A5D00C67D06 = 8EFC6D7D08537A5D00C67D06; + 8EFC6D8008537A7700C67D06 = 8EFC6D8008537A7700C67D06; + 8EFC6D8308537A9600C67D06 = 8EFC6D8308537A9600C67D06; + 8EFC6D8608537AB100C67D06 = 8EFC6D8608537AB100C67D06; + 8EFC6D9E08537CAE00C67D06 = 8EFC6D9E08537CAE00C67D06; + 8EFC6DAD08537D1F00C67D06 = 8EFC6DAD08537D1F00C67D06; + 8EFC6DB008537D4300C67D06 = 8EFC6DB008537D4300C67D06; + 8EFC6DB308537D6700C67D06 = 8EFC6DB308537D6700C67D06; + 8EFC6DB608537D9F00C67D06 = 8EFC6DB608537D9F00C67D06; + 8EFC6DB908537DB700C67D06 = 8EFC6DB908537DB700C67D06; + 8EFC6DBC08537DD400C67D06 = 8EFC6DBC08537DD400C67D06; + 8EFC6DBF08537E1F00C67D06 = 8EFC6DBF08537E1F00C67D06; + 8EFC6DC208537E7400C67D06 = 8EFC6DC208537E7400C67D06; + 8EFC6DC508537ED200C67D06 = 8EFC6DC508537ED200C67D06; + 8EFC6DC808537EEA00C67D06 = 8EFC6DC808537EEA00C67D06; + 8EFC6DCB08537F0000C67D06 = 8EFC6DCB08537F0000C67D06; + 8EFC6DCE08537F0D00C67D06 = 8EFC6DCE08537F0D00C67D06; + 8EFC6DD108537F8D00C67D06 = 8EFC6DD108537F8D00C67D06; + 8EFC6DD408537FB000C67D06 = 8EFC6DD408537FB000C67D06; + 8EFC6DD708537FC200C67D06 = 8EFC6DD708537FC200C67D06; + 8EFC6DDA08537FD200C67D06 = 8EFC6DDA08537FD200C67D06; + 8EFC6DDD08537FE600C67D06 = 8EFC6DDD08537FE600C67D06; + 8EFC6DE4085380B400C67D06 = 8EFC6DE4085380B400C67D06; + 8EFC6DE7085380B800C67D06 = 8EFC6DE7085380B800C67D06; + 8EFC6DE8085380B800C67D06 = 8EFC6DE8085380B800C67D06; + 8EFC6DE9085380B800C67D06 = 8EFC6DE9085380B800C67D06; + 8EFC6DEA085380B800C67D06 = 8EFC6DEA085380B800C67D06; + 8EFC6DEB085380B800C67D06 = 8EFC6DEB085380B800C67D06; + 8EFC6DEC085380B800C67D06 = 8EFC6DEC085380B800C67D06; + 8EFC6DED085380B800C67D06 = 8EFC6DED085380B800C67D06; + 8EFC6DEE085380B800C67D06 = 8EFC6DEE085380B800C67D06; + 8EFC6DEF085380B800C67D06 = 8EFC6DEF085380B800C67D06; + 8EFC6DF0085380B800C67D06 = 8EFC6DF0085380B800C67D06; + 8EFC6DF1085380B800C67D06 = 8EFC6DF1085380B800C67D06; + 8EFC6DF2085380B800C67D06 = 8EFC6DF2085380B800C67D06; + 8EFC6DF3085380B800C67D06 = 8EFC6DF3085380B800C67D06; + 8EFC6DF4085380B800C67D06 = 8EFC6DF4085380B800C67D06; + 8EFC6DF5085380B800C67D06 = 8EFC6DF5085380B800C67D06; + 8EFC6DF6085380B800C67D06 = 8EFC6DF6085380B800C67D06; + 8EFC6DF7085380B800C67D06 = 8EFC6DF7085380B800C67D06; + 8EFC6DF8085380B800C67D06 = 8EFC6DF8085380B800C67D06; + 8EFC6DF9085380B800C67D06 = 8EFC6DF9085380B800C67D06; + 8EFC6DFA085380B800C67D06 = 8EFC6DFA085380B800C67D06; + 8EFC6DFB085380B800C67D06 = 8EFC6DFB085380B800C67D06; + 8EFC6DFC085380B800C67D06 = 8EFC6DFC085380B800C67D06; + 8EFC6DFD085380B800C67D06 = 8EFC6DFD085380B800C67D06; + 8EFC6DFE085380B800C67D06 = 8EFC6DFE085380B800C67D06; + 8EFC6DFF085380B800C67D06 = 8EFC6DFF085380B800C67D06; + 8EFC6E00085380B800C67D06 = 8EFC6E00085380B800C67D06; + 8EFC6E01085380B800C67D06 = 8EFC6E01085380B800C67D06; + 8EFC6E02085380B800C67D06 = 8EFC6E02085380B800C67D06; + 8EFC6E03085380B800C67D06 = 8EFC6E03085380B800C67D06; + 8EFC6E04085380B800C67D06 = 8EFC6E04085380B800C67D06; + 8EFC6E05085380B800C67D06 = 8EFC6E05085380B800C67D06; + 8EFC6E06085380B800C67D06 = 8EFC6E06085380B800C67D06; + 8EFC6E07085380B800C67D06 = 8EFC6E07085380B800C67D06; + 8EFC6E08085380B800C67D06 = 8EFC6E08085380B800C67D06; + 8EFC6E09085380B800C67D06 = 8EFC6E09085380B800C67D06; + 8EFC6E0A085380B800C67D06 = 8EFC6E0A085380B800C67D06; + 8EFC6E0B085380B800C67D06 = 8EFC6E0B085380B800C67D06; + 8EFC6E0C085380B800C67D06 = 8EFC6E0C085380B800C67D06; + 8EFC6E0D085380B800C67D06 = 8EFC6E0D085380B800C67D06; + 8EFC6E0E085380B800C67D06 = 8EFC6E0E085380B800C67D06; + 8EFC6E0F085380B800C67D06 = 8EFC6E0F085380B800C67D06; + 8EFC6E10085380B800C67D06 = 8EFC6E10085380B800C67D06; + 8EFC6E11085380B800C67D06 = 8EFC6E11085380B800C67D06; + 8EFC6E12085380B800C67D06 = 8EFC6E12085380B800C67D06; + 8EFC6E13085380B800C67D06 = 8EFC6E13085380B800C67D06; + 8EFC6E14085380B800C67D06 = 8EFC6E14085380B800C67D06; + 8EFC6E15085380B800C67D06 = 8EFC6E15085380B800C67D06; + 8EFC6E16085380B800C67D06 = 8EFC6E16085380B800C67D06; + 8EFC6E17085380B800C67D06 = 8EFC6E17085380B800C67D06; + 8EFC6E18085380B800C67D06 = 8EFC6E18085380B800C67D06; + 8EFC6E19085380B800C67D06 = 8EFC6E19085380B800C67D06; + 8EFC6E1A085380B800C67D06 = 8EFC6E1A085380B800C67D06; + 8EFC6E1B085380B800C67D06 = 8EFC6E1B085380B800C67D06; }; sourceControlManager = 8EB77466082DA402005891CA; userBuildSettings = { @@ -230,7 +373,7 @@ uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {775, 1274}}"; sepNavSelRange = "{501, 0}"; - sepNavVisRect = "{{0, 20}, {775, 372}}"; + sepNavVisRect = "{{0, 14}, {775, 372}}"; sepNavWindowFrame = "{{15, 61}, {500, 680}}"; }; }; @@ -285,16 +428,6 @@ vrLen = 119; vrLoc = 0; }; - 8E10DC01084BBE490013815C = { - fRef = 8D1107310486CEB800E47090; - isa = PBXTextBookmark; - name = "Info.plist: 18"; - rLen = 0; - rLoc = 501; - rType = 0; - vrLen = 677; - vrLoc = 39; - }; 8E10DC02084BBE490013815C = { fRef = 8E10DBEF084BBCF00013815C; isa = PBXTextBookmark; @@ -317,16 +450,16 @@ }; 8E14E479084CF1A200246BCC = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {775, 434}}"; - sepNavSelRange = "{406, 0}"; - sepNavVisRect = "{{0, 0}, {775, 372}}"; + sepNavIntBoundsRect = "{{0, 0}, {775, 476}}"; + sepNavSelRange = "{554, 0}"; + sepNavVisRect = "{{0, 90}, {775, 372}}"; }; }; 8E14E47A084CF1A200246BCC = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {775, 1960}}"; - sepNavSelRange = "{182, 0}"; - sepNavVisRect = "{{0, 28}, {775, 372}}"; + sepNavIntBoundsRect = "{{0, 0}, {775, 2436}}"; + sepNavSelRange = "{3595, 0}"; + sepNavVisRect = "{{0, 2050}, {775, 372}}"; }; }; 8E14E4A5084D089100246BCC = { @@ -359,14 +492,6 @@ vrLen = 803; vrLoc = 464; }; - 8E14E4AA084D089100246BCC = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = libmp4.c; - path = /Users/xugg/Desktop/faad2.1/plugins/xmms/src/libmp4.c; - refType = 0; - sourceTree = ""; - }; 8E14E4AD084D089100246BCC = { fRef = 8EF6FA69082DA526006F7BE6; isa = PBXTextBookmark; @@ -417,24 +542,6 @@ vrLen = 188; vrLoc = 0; }; - 8E14E4CB084D089100246BCC = { - fRef = 8E14E4CC084D089100246BCC; - isa = PBXTextBookmark; - name = "(null): 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 578; - vrLoc = 0; - }; - 8E14E4CC084D089100246BCC = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = libmp4.c; - path = /Users/xugg/Desktop/faad2.1/plugins/xmms/src/libmp4.c; - refType = 0; - sourceTree = ""; - }; 8E1A1826083806B700AEA302 = { fRef = 8E1A1827083806B700AEA302; isa = PBXTextBookmark; @@ -500,9 +607,9 @@ }; 8E267D050837F7A6004ACBC5 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {920, 1050}}"; - sepNavSelRange = "{471, 0}"; - sepNavVisRect = "{{0, 241}, {775, 372}}"; + sepNavIntBoundsRect = "{{0, 0}, {914, 1106}}"; + sepNavSelRange = "{1300, 0}"; + sepNavVisRect = "{{0, 588}, {775, 372}}"; }; }; 8E267D060837F7A6004ACBC5 = { @@ -514,9 +621,9 @@ }; 8E267D070837F7A6004ACBC5 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {983, 1848}}"; - sepNavSelRange = "{999, 0}"; - sepNavVisRect = "{{0, 314}, {983, 310}}"; + sepNavIntBoundsRect = "{{0, 0}, {824, 1848}}"; + sepNavSelRange = "{1544, 0}"; + sepNavVisRect = "{{0, 1476}, {775, 372}}"; }; }; 8E267D090837F7A6004ACBC5 = { @@ -528,9 +635,9 @@ }; 8E267D0A0837F7A6004ACBC5 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {740, 5600}}"; + sepNavIntBoundsRect = "{{0, 0}, {775, 5600}}"; sepNavSelRange = "{7208, 5}"; - sepNavVisRect = "{{0, 3039}, {740, 180}}"; + sepNavVisRect = "{{0, 2943}, {775, 372}}"; }; }; 8E267D0B0837F7A6004ACBC5 = { @@ -544,7 +651,7 @@ uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1022, 2366}}"; sepNavSelRange = "{2945, 0}"; - sepNavVisRect = "{{0, 1455}, {775, 372}}"; + sepNavVisRect = "{{0, 1460}, {775, 372}}"; }; }; 8E267D8C0837F963004ACBC5 = { @@ -627,16 +734,6 @@ vrLen = 495; vrLoc = 0; }; - 8E267E0008380176004ACBC5 = { - fRef = 8E267D070837F7A6004ACBC5; - isa = PBXTextBookmark; - name = "FeedbackSocket.m: 30"; - rLen = 0; - rLoc = 818; - rType = 0; - vrLen = 1440; - vrLoc = 139; - }; 8E267E0308380176004ACBC5 = { fRef = 8D1107310486CEB800E47090; isa = PBXTextBookmark; @@ -657,6 +754,16 @@ vrLen = 112; vrLoc = 0; }; + 8E2752B70850A92E001618CD = { + fRef = 8E267D070837F7A6004ACBC5; + isa = PBXTextBookmark; + name = "FeedbackSocket.m: 45"; + rLen = 0; + rLoc = 1544; + rType = 0; + vrLen = 258; + vrLoc = 3429; + }; 8E2871080836934A0013CE39 = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {4550, 1246}}"; @@ -707,6 +814,16 @@ vrLen = 65; vrLoc = 0; }; + 8E2BC83D0850F56200BEAC36 = { + fRef = 8E267D050837F7A6004ACBC5; + isa = PBXTextBookmark; + name = "FeedbackController.m: 53"; + rLen = 0; + rLoc = 1300; + rType = 0; + vrLen = 877; + vrLoc = 942; + }; 8E3851EC084CEC0200D715B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; @@ -728,16 +845,16 @@ 8E45227A0832898A00F8BA7C = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {860, 1792}}"; - sepNavSelRange = "{1555, 0}"; - sepNavVisRect = "{{0, 790}, {775, 372}}"; + sepNavSelRange = "{1056, 7}"; + sepNavVisRect = "{{0, 591}, {775, 372}}"; sepNavWindowFrame = "{{15, 61}, {702, 680}}"; }; }; 8E45227B0832898A00F8BA7C = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1208, 9352}}"; - sepNavSelRange = "{2206, 0}"; - sepNavVisRect = "{{0, 798}, {983, 342}}"; + sepNavIntBoundsRect = "{{0, 0}, {1208, 9562}}"; + sepNavSelRange = "{9218, 0}"; + sepNavVisRect = "{{0, 4329}, {775, 372}}"; sepNavWindowFrame = "{{15, 66}, {702, 680}}"; }; }; @@ -756,7 +873,7 @@ isa = PBXTextBookmark; name = "Sound.m: 15"; rLen = 0; - rLoc = 17822; + rLoc = 18163; rType = 0; vrLen = 182; vrLoc = 0; @@ -785,15 +902,15 @@ 8E47218808318D7A001F89FA = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {818, 6958}}"; - sepNavSelRange = "{747, 0}"; - sepNavVisRect = "{{0, 185}, {775, 372}}"; + sepNavSelRange = "{272, 0}"; + sepNavVisRect = "{{0, 3332}, {775, 372}}"; }; }; 8E47218908318D7A001F89FA = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {775, 952}}"; sepNavSelRange = "{374, 0}"; - sepNavVisRect = "{{0, 214}, {775, 372}}"; + sepNavVisRect = "{{0, 210}, {775, 372}}"; }; }; 8E47218A08318D7A001F89FA = { @@ -900,16 +1017,16 @@ }; 8E4721D108319294001F89FA = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {775, 392}}"; - sepNavSelRange = "{231, 0}"; + sepNavIntBoundsRect = "{{0, 0}, {775, 546}}"; + sepNavSelRange = "{233, 290}"; sepNavVisRect = "{{0, 0}, {775, 372}}"; }; }; 8E4721D208319294001F89FA = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1340, 2002}}"; - sepNavSelRange = "{1400, 0}"; - sepNavVisRect = "{{0, 1599}, {775, 372}}"; + sepNavIntBoundsRect = "{{0, 0}, {1340, 2156}}"; + sepNavSelRange = "{1676, 0}"; + sepNavVisRect = "{{0, 756}, {775, 372}}"; }; }; 8E4721D4083192C2001F89FA = { @@ -967,16 +1084,6 @@ vrLen = 767; vrLoc = 3530; }; - 8E5A9054084CB7FE00AE6D62 = { - fRef = 8E47218908318D7A001F89FA; - isa = PBXTextBookmark; - name = "PlaylistEntry.h: track"; - rLen = 0; - rLoc = 374; - rType = 0; - vrLen = 410; - vrLoc = 266; - }; 8E5A90B7084CC25900AE6D62 = { fRef = 8E5A90B0084CBC2F00AE6D62; isa = PBXTextBookmark; @@ -1111,15 +1218,45 @@ vrLen = 967; vrLoc = 0; }; - 8E6F2A2808480D900011F126 = { - fRef = 8E267D050837F7A6004ACBC5; + 8E72BC630851408F00E34F1D = { + fRef = 8E4721D208319294001F89FA; isa = PBXTextBookmark; - name = "FeedbackController.m: openFeedbackWindow:"; + name = "AppController.m: 65"; rLen = 0; - rLoc = 471; + rLoc = 1676; rType = 0; - vrLen = 782; - vrLoc = 325; + vrLen = 897; + vrLoc = 1378; + }; + 8E72BC640851408F00E34F1D = { + fRef = 8E47218908318D7A001F89FA; + isa = PBXTextBookmark; + name = "PlaylistEntry.h: track"; + rLen = 0; + rLoc = 374; + rType = 0; + vrLen = 410; + vrLoc = 266; + }; + 8E72BC650851408F00E34F1D = { + fRef = 8E47218708318D7A001F89FA; + isa = PBXTextBookmark; + name = "- (NSArray *)acceptablePlaylistTypes;"; + rLen = 38; + rLoc = 1643; + rType = 0; + vrLen = 595; + vrLoc = 1271; + }; + 8E72BC690851408F00E34F1D = { + fRef = 8E47218808318D7A001F89FA; + isa = PBXTextBookmark; + name = "PlaylistController.m: initWithCoder:"; + rLen = 0; + rLoc = 272; + rType = 0; + vrLen = 418; + vrLoc = 5449; }; 8E74C915084D451C00DF47F3 = { fRef = 8EF6FA66082DA526006F7BE6; @@ -1146,41 +1283,11 @@ isa = PBXTextBookmark; name = "SoundFile.m: 83"; rLen = 0; - rLoc = 1676; + rLoc = 1751; rType = 0; vrLen = 591; vrLoc = 1140; }; - 8E74C91A084D451C00DF47F3 = { - fRef = 8E47218708318D7A001F89FA; - isa = PBXTextBookmark; - name = "- (NSArray *)acceptablePlaylistTypes;"; - rLen = 38; - rLoc = 1643; - rType = 0; - vrLen = 595; - vrLoc = 1271; - }; - 8E74C91B084D451C00DF47F3 = { - fRef = 8E47218808318D7A001F89FA; - isa = PBXTextBookmark; - name = "PlaylistController.m: 33"; - rLen = 0; - rLoc = 747; - rType = 0; - vrLen = 668; - vrLoc = 238; - }; - 8E94D973084BE3D1007F0AEB = { - fRef = 8E4721D108319294001F89FA; - isa = PBXTextBookmark; - name = "AppController.h: 12"; - rLen = 0; - rLoc = 231; - rType = 0; - vrLen = 839; - vrLoc = 0; - }; 8E94D9D2084BEA32007F0AEB = { fRef = 8E0EBF0D084BA776003A6E64; isa = PBXTextBookmark; @@ -1264,7 +1371,7 @@ isa = PBXTextBookmark; name = "AACFile.m: 13"; rLen = 0; - rLoc = 182; + rLoc = 207; rType = 0; vrLen = 637; vrLoc = 17; @@ -1279,46 +1386,6 @@ vrLen = 681; vrLoc = 363; }; - 8E9E2E82084FA7E400599965 = { - fRef = 8EF6FA65082DA526006F7BE6; - isa = PBXTextBookmark; - name = "FlacFile.h: SAMPLE_BUFFER_SIZE"; - rLen = 0; - rLoc = 342; - rType = 0; - vrLen = 617; - vrLoc = 0; - }; - 8E9E2E83084FA7E400599965 = { - fRef = 8E14E47A084CF1A200246BCC; - isa = PBXTextBookmark; - name = "AACFile.m: 13"; - rLen = 0; - rLoc = 182; - rType = 0; - vrLen = 637; - vrLoc = 17; - }; - 8E9E2E84084FA7E400599965 = { - fRef = 8E267D0B0837F7A6004ACBC5; - isa = PBXTextBookmark; - name = "UpdateController.h: takeBoolFromObject:"; - rLen = 0; - rLoc = 998; - rType = 0; - vrLen = 681; - vrLoc = 363; - }; - 8E9E2E85084FA7E400599965 = { - fRef = 8E267D0C0837F7A6004ACBC5; - isa = PBXTextBookmark; - name = "UpdateController.m: 118"; - rLen = 0; - rLoc = 2945; - rType = 0; - vrLen = 1100; - vrLoc = 2338; - }; 8EA0A215084CC43F008DFEC9 = { fRef = 8E2871080836934A0013CE39; isa = PBXTextBookmark; @@ -1339,16 +1406,6 @@ vrLen = 671; vrLoc = 367; }; - 8EA0A217084CC43F008DFEC9 = { - fRef = 8E4721D208319294001F89FA; - isa = PBXTextBookmark; - name = "AppController.m: 56"; - rLen = 0; - rLoc = 1400; - rType = 0; - vrLen = 648; - vrLoc = 2995; - }; 8EA0A218084CC43F008DFEC9 = { fRef = 8E45227A0832898A00F8BA7C; isa = PBXTextBookmark; @@ -2035,6 +2092,46 @@ indexTemplatePath = ""; isa = PBXCodeSenseManager; }; + 8EBA6E040852AAA900CC7940 = { + fRef = 8E47218808318D7A001F89FA; + isa = PBXTextBookmark; + name = "PlaylistController.m: initWithCoder:"; + rLen = 0; + rLoc = 272; + rType = 0; + vrLen = 509; + vrLoc = 5018; + }; + 8EC156F4084FEB8900BB24E8 = { + fRef = 8E267D0C0837F7A6004ACBC5; + isa = PBXTextBookmark; + name = "UpdateController.m: 118"; + rLen = 0; + rLoc = 2945; + rType = 0; + vrLen = 1079; + vrLoc = 2359; + }; + 8EC156F5084FEB8900BB24E8 = { + fRef = 8E267D0A0837F7A6004ACBC5; + isa = PBXTextBookmark; + name = DBLog; + rLen = 5; + rLoc = 7208; + rType = 0; + vrLen = 957; + vrLoc = 6740; + }; + 8EC156F9084FEB8900BB24E8 = { + fRef = 8E267D0A0837F7A6004ACBC5; + isa = PBXTextBookmark; + name = DBLog; + rLen = 5; + rLoc = 7208; + rType = 0; + vrLen = 957; + vrLoc = 6740; + }; 8EC18D9D084E3D8200AE0BA9 = { fRef = 8E45227B0832898A00F8BA7C; isa = PBXTextBookmark; @@ -2045,16 +2142,6 @@ vrLen = 515; vrLoc = 4427; }; - 8EC18D9E084E3D8200AE0BA9 = { - fRef = 8E14E4AA084D089100246BCC; - isa = PBXTextBookmark; - name = "libmp4.c: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 578; - vrLoc = 0; - }; 8EC18D9F084E3D8200AE0BA9 = { fRef = 8E47218A08318D7A001F89FA; isa = PBXTextBookmark; @@ -2075,42 +2162,6 @@ vrLen = 564; vrLoc = 35; }; - 8EC18EA5084E55A800AE0BA9 = { - fRef = 8EC18EA6084E55A800AE0BA9; - isa = PBXTextBookmark; - name = "(null): 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 1165; - vrLoc = 0; - }; - 8EC18EA6084E55A800AE0BA9 = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = in_mp4.c; - path = /Users/xugg/Desktop/faad2.1/plugins/in_mp4/in_mp4.c; - refType = 0; - sourceTree = ""; - }; - 8EC18EAA084E55A800AE0BA9 = { - fRef = 8EC18EAB084E55A800AE0BA9; - isa = PBXTextBookmark; - name = "(null): 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 1165; - vrLoc = 0; - }; - 8EC18EAB084E55A800AE0BA9 = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = in_mp4.c; - path = /Users/xugg/Desktop/faad2.1/plugins/in_mp4/in_mp4.c; - refType = 0; - sourceTree = ""; - }; 8EC18EB8084E57D500AE0BA9 = { fRef = 8EC18EB9084E57D500AE0BA9; isa = PBXTextBookmark; @@ -2128,6 +2179,12 @@ path = /Users/xugg/Desktop/faad2/plugins/xmms/src/libmp4.c; refType = 0; sourceTree = ""; + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {775, 7476}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRect = "{{0, 0}, {775, 372}}"; + sepNavWindowFrame = "{{15, 72}, {1017, 669}}"; + }; }; 8EC18EBD084E57D500AE0BA9 = { fRef = 8EC18EBE084E57D500AE0BA9; @@ -2162,7 +2219,7 @@ isa = PBXTextBookmark; name = "AACFile.h: buffer"; rLen = 0; - rLoc = 406; + rLoc = 457; rType = 0; vrLen = 501; vrLoc = 0; @@ -2177,16 +2234,6 @@ vrLen = 365; vrLoc = 0; }; - 8ED3C9B1084915CE00BB7797 = { - fRef = 8E267D0C0837F7A6004ACBC5; - isa = PBXTextBookmark; - name = "UpdateController.m: 34"; - rLen = 0; - rLoc = 818; - rType = 0; - vrLen = 725; - vrLoc = 171; - }; 8ED833CD08457E6B0033CDBD = { fRef = 8E47218608318D7A001F89FA; isa = PBXTextBookmark; @@ -2201,7 +2248,7 @@ fileReference = 8EF6FA6E082DA526006F7BE6; functionName = "+readInfo:"; isa = PBXFileBreakpoint; - lineNumber = 113; + lineNumber = 114; state = 2; }; 8EDC88A90842F8DE007D1532 = { @@ -2278,6 +2325,26 @@ vrLen = 1069; vrLoc = 3336; }; + 8EE2A5B808511A1800367489 = { + fRef = 8D1107310486CEB800E47090; + isa = PBXTextBookmark; + name = "Info.plist: 18"; + rLen = 0; + rLoc = 501; + rType = 0; + vrLen = 677; + vrLoc = 39; + }; + 8EE2A5B908511A1800367489 = { + fRef = 8E4721D108319294001F89FA; + isa = PBXTextBookmark; + name = "AppController.h: playButton"; + rLen = 290; + rLoc = 233; + rType = 0; + vrLen = 665; + vrLoc = 0; + }; 8EE4A6C3082E6F6100415456 = { fRef = 8EF6FA6A082DA526006F7BE6; isa = PBXTextBookmark; @@ -2341,9 +2408,9 @@ }; 8EF6FA66082DA526006F7BE6 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1130, 2562}}"; - sepNavSelRange = "{1625, 0}"; - sepNavVisRect = "{{0, 574}, {775, 372}}"; + sepNavIntBoundsRect = "{{0, 0}, {1130, 2646}}"; + sepNavSelRange = "{4219, 0}"; + sepNavVisRect = "{{0, 2078}, {775, 372}}"; }; }; 8EF6FA67082DA526006F7BE6 = { @@ -2355,9 +2422,9 @@ }; 8EF6FA68082DA526006F7BE6 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {775, 1218}}"; - sepNavSelRange = "{343, 0}"; - sepNavVisRect = "{{0, 684}, {775, 372}}"; + sepNavIntBoundsRect = "{{0, 0}, {775, 1246}}"; + sepNavSelRange = "{1738, 0}"; + sepNavVisRect = "{{0, 832}, {775, 372}}"; }; }; 8EF6FA69082DA526006F7BE6 = { @@ -2369,9 +2436,9 @@ }; 8EF6FA6A082DA526006F7BE6 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {775, 1484}}"; - sepNavSelRange = "{893, 0}"; - sepNavVisRect = "{{0, 370}, {775, 372}}"; + sepNavIntBoundsRect = "{{0, 0}, {775, 1540}}"; + sepNavSelRange = "{2209, 0}"; + sepNavVisRect = "{{0, 1140}, {775, 372}}"; }; }; 8EF6FA6B082DA526006F7BE6 = { @@ -2383,24 +2450,24 @@ }; 8EF6FA6C082DA526006F7BE6 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {983, 2954}}"; - sepNavSelRange = "{1113, 42}"; - sepNavVisRect = "{{0, 678}, {983, 310}}"; + sepNavIntBoundsRect = "{{0, 0}, {775, 2982}}"; + sepNavSelRange = "{4116, 0}"; + sepNavVisRect = "{{0, 2425}, {775, 372}}"; }; }; 8EF6FA6D082DA526006F7BE6 = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {775, 826}}"; - sepNavSelRange = "{358, 0}"; - sepNavVisRect = "{{0, 0}, {775, 372}}"; + sepNavSelRange = "{1030, 0}"; + sepNavVisRect = "{{0, 352}, {775, 372}}"; sepNavWindowFrame = "{{15, 61}, {1016, 680}}"; }; }; 8EF6FA6E082DA526006F7BE6 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {775, 2884}}"; - sepNavSelRange = "{2876, 0}"; - sepNavVisRect = "{{0, 1770}, {775, 372}}"; + sepNavIntBoundsRect = "{{0, 0}, {775, 2898}}"; + sepNavSelRange = "{2052, 0}"; + sepNavVisRect = "{{0, 1317}, {775, 372}}"; sepNavWindowFrame = "{{15, 61}, {750, 680}}"; }; }; @@ -2413,9 +2480,9 @@ }; 8EF6FA70082DA526006F7BE6 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {983, 1092}}"; - sepNavSelRange = "{402, 0}"; - sepNavVisRect = "{{0, 370}, {983, 310}}"; + sepNavIntBoundsRect = "{{0, 0}, {775, 1120}}"; + sepNavSelRange = "{1416, 0}"; + sepNavVisRect = "{{0, 720}, {775, 372}}"; }; }; 8EF6FA71082DA526006F7BE6 = { @@ -2427,9 +2494,9 @@ }; 8EF6FA72082DA526006F7BE6 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {782, 1708}}"; - sepNavSelRange = "{1865, 0}"; - sepNavVisRect = "{{0, 1137}, {775, 372}}"; + sepNavIntBoundsRect = "{{0, 0}, {782, 1736}}"; + sepNavSelRange = "{2003, 0}"; + sepNavVisRect = "{{0, 1336}, {775, 372}}"; }; }; 8EF6FACD082DAA2B006F7BE6 = { @@ -2604,4 +2671,1480 @@ refType = 0; sourceTree = ""; }; + 8EFC6CC00853721700C67D06 = { + fRef = 8E47218808318D7A001F89FA; + isa = PBXTextBookmark; + name = "PlaylistController.m: initWithCoder:"; + rLen = 0; + rLoc = 272; + rType = 0; + vrLen = 509; + vrLoc = 5018; + }; + 8EFC6CC10853721700C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 13"; + rLen = 0; + rLoc = 207; + rType = 0; + vrLen = 637; + vrLoc = 17; + }; + 8EFC6CC20853721700C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: buffer"; + rLen = 0; + rLoc = 457; + rType = 0; + vrLen = 501; + vrLoc = 0; + }; + 8EFC6CC30853721700C67D06 = { + fRef = 8E47218808318D7A001F89FA; + isa = PBXTextBookmark; + name = "PlaylistController.m: initWithCoder:"; + rLen = 0; + rLoc = 272; + rType = 0; + vrLen = 509; + vrLoc = 5018; + }; + 8EFC6CC40853721700C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: buffer"; + rLen = 0; + rLoc = 457; + rType = 0; + vrLen = 501; + vrLoc = 0; + }; + 8EFC6CC50853721700C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 13"; + rLen = 0; + rLoc = 207; + rType = 0; + vrLen = 637; + vrLoc = 17; + }; + 8EFC6CC60853721700C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: buffer"; + rLen = 0; + rLoc = 416; + rType = 0; + vrLen = 454; + vrLoc = 0; + }; + 8EFC6CD3085372A800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 42"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 622; + vrLoc = 629; + }; + 8EFC6CD4085372A800C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 25"; + rLen = 0; + rLoc = 440; + rType = 0; + vrLen = 428; + vrLoc = 132; + }; + 8EFC6CD5085372A800C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 25"; + rLen = 0; + rLoc = 440; + rType = 0; + vrLen = 428; + vrLoc = 132; + }; + 8EFC6CD6085372A800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 42"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 622; + vrLoc = 629; + }; + 8EFC6CD7085372A800C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 25"; + rLen = 0; + rLoc = 439; + rType = 0; + vrLen = 425; + vrLoc = 132; + }; + 8EFC6CE3085372F200C67D06 = { + comments = "error: too few arguments to function 'get_AAC_format'"; + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + rLen = 0; + rLoc = 15; + rType = 1; + }; + 8EFC6CE4085372F200C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 40"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 570; + vrLoc = 629; + }; + 8EFC6CEA0853732D00C67D06 = { + comments = "warning: unused variable 'cap'"; + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + rLen = 0; + rLoc = 15; + rType = 1; + }; + 8EFC6CEB0853732D00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "unsigned long cap = NeAACDecGetCapabilities();"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 563; + vrLoc = 28; + }; + 8EFC6CFA0853745400C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "unsigned long cap = NeAACDecGetCapabilities();"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 559; + vrLoc = 28; + }; + 8EFC6D0D0853760900C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D100853768500C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D130853769900C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D16085376C100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D18085376D100C67D06 = { + fRef = 8EF6FA69082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MPEGFile.h: 14"; + rLen = 0; + rLoc = 245; + rType = 0; + vrLen = 272; + vrLoc = 0; + }; + 8EFC6D19085376D100C67D06 = { + fRef = 8EF6FA68082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MonkeysFile.m: 30"; + rLen = 0; + rLoc = 571; + rType = 0; + vrLen = 627; + vrLoc = 219; + }; + 8EFC6D1A085376D100C67D06 = { + fRef = 8EF6FA65082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.h: SAMPLE_BUFFER_SIZE"; + rLen = 0; + rLoc = 342; + rType = 0; + vrLen = 617; + vrLoc = 0; + }; + 8EFC6D1B085376D100C67D06 = { + fRef = 8EF6FA6C082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MusepackFile.m: 83"; + rLen = 0; + rLoc = 1593; + rType = 0; + vrLen = 506; + vrLoc = 1274; + }; + 8EFC6D1C085376D100C67D06 = { + fRef = 8EF6FA6B082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MusepackFile.h: buffer"; + rLen = 0; + rLoc = 383; + rType = 0; + vrLen = 564; + vrLoc = 35; + }; + 8EFC6D1D085376D100C67D06 = { + fRef = 8EF6FA6A082DA526006F7BE6; + isa = PBXTextBookmark; + name = return; + rLen = 6; + rLoc = 1584; + rType = 0; + vrLen = 652; + vrLoc = 1199; + }; + 8EFC6D1E085376D100C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 32"; + rLen = 0; + rLoc = 554; + rType = 0; + vrLen = 425; + vrLoc = 135; + }; + 8EFC6D1F085376D100C67D06 = { + fRef = 8EF6FA66082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.m: close"; + rLen = 44; + rLoc = 4065; + rType = 0; + vrLen = 365; + vrLoc = 3928; + }; + 8EFC6D20085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 60"; + rLen = 0; + rLoc = 1418; + rType = 0; + vrLen = 599; + vrLoc = 1291; + }; + 8EFC6D21085376D100C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: info"; + rLen = 0; + rLoc = 439; + rType = 0; + vrLen = 442; + vrLoc = 132; + }; + 8EFC6D22085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 10"; + rLen = 0; + rLoc = 181; + rType = 0; + vrLen = 591; + vrLoc = 0; + }; + 8EFC6D23085376D100C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 13"; + rLen = 0; + rLoc = 184; + rType = 0; + vrLen = 524; + vrLoc = 73; + }; + 8EFC6D24085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 34"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 766; + vrLoc = 591; + }; + 8EFC6D25085376D100C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 12"; + rLen = 0; + rLoc = 184; + rType = 0; + vrLen = 500; + vrLoc = 73; + }; + 8EFC6D26085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 10"; + rLen = 0; + rLoc = 181; + rType = 0; + vrLen = 616; + vrLoc = 0; + }; + 8EFC6D27085376D100C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 12"; + rLen = 0; + rLoc = 184; + rType = 0; + vrLen = 500; + vrLoc = 73; + }; + 8EFC6D28085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 10"; + rLen = 0; + rLoc = 181; + rType = 0; + vrLen = 616; + vrLoc = 0; + }; + 8EFC6D29085376D100C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 25"; + rLen = 0; + rLoc = 439; + rType = 0; + vrLen = 482; + vrLoc = 73; + }; + 8EFC6D2A085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 567; + vrLoc = 1207; + }; + 8EFC6D2B085376D100C67D06 = { + fRef = 8EF6FA69082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MPEGFile.h: 14"; + rLen = 0; + rLoc = 245; + rType = 0; + vrLen = 272; + vrLoc = 0; + }; + 8EFC6D2C085376D100C67D06 = { + fRef = 8EF6FA6A082DA526006F7BE6; + isa = PBXTextBookmark; + name = "totalSize = (long int)(duration*(double)frequency/1000.0*channels*bitsPerSample/8);"; + rLen = 85; + rLoc = 829; + rType = 0; + vrLen = 813; + vrLoc = 464; + }; + 8EFC6D2D085376D100C67D06 = { + fRef = 8EF6FA66082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.m: 48"; + rLen = 0; + rLoc = 1625; + rType = 0; + vrLen = 994; + vrLoc = 1134; + }; + 8EFC6D2E085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 65"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 629; + vrLoc = 1207; + }; + 8EFC6D2F085376D100C67D06 = { + fRef = 8EF6FA65082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.h: SAMPLE_BUFFER_SIZE"; + rLen = 0; + rLoc = 342; + rType = 0; + vrLen = 617; + vrLoc = 0; + }; + 8EFC6D30085376D100C67D06 = { + fRef = 8EF6FA66082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.m: open:"; + rLen = 42; + rLoc = 2633; + rType = 0; + vrLen = 628; + vrLoc = 2420; + }; + 8EFC6D31085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "- (BOOL)readInfo"; + rLen = 40; + rLoc = 1593; + rType = 0; + vrLen = 441; + vrLoc = 135; + }; + 8EFC6D32085376D100C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: readInfo"; + rLen = 0; + rLoc = 554; + rType = 0; + vrLen = 439; + vrLoc = 135; + }; + 8EFC6D33085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 17"; + rLen = 0; + rLoc = 247; + rType = 0; + vrLen = 552; + vrLoc = 183; + }; + 8EFC6D34085376D100C67D06 = { + fRef = 8EF6FA68082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MonkeysFile.m: 30"; + rLen = 0; + rLoc = 571; + rType = 0; + vrLen = 627; + vrLoc = 219; + }; + 8EFC6D35085376D100C67D06 = { + fRef = 8EF6FA65082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.h: SAMPLE_BUFFER_SIZE"; + rLen = 0; + rLoc = 342; + rType = 0; + vrLen = 617; + vrLoc = 0; + }; + 8EFC6D36085376D100C67D06 = { + fRef = 8EF6FA66082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.m: 106"; + rLen = 0; + rLoc = 3034; + rType = 0; + vrLen = 560; + vrLoc = 2595; + }; + 8EFC6D37085376D100C67D06 = { + fRef = 8EF6FA6A082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MPEGFile.m: 72"; + rLen = 0; + rLoc = 1639; + rType = 0; + vrLen = 604; + vrLoc = 1159; + }; + 8EFC6D38085376D100C67D06 = { + fRef = 8EF6FA6C082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MusepackFile.m: 83"; + rLen = 0; + rLoc = 1593; + rType = 0; + vrLen = 506; + vrLoc = 1274; + }; + 8EFC6D39085376D100C67D06 = { + fRef = 8EF6FA6B082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MusepackFile.h: buffer"; + rLen = 0; + rLoc = 383; + rType = 0; + vrLen = 564; + vrLoc = 35; + }; + 8EFC6D3A085376D100C67D06 = { + fRef = 8EF6FA6A082DA526006F7BE6; + isa = PBXTextBookmark; + name = return; + rLen = 6; + rLoc = 1584; + rType = 0; + vrLen = 652; + vrLoc = 1199; + }; + 8EFC6D3B085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 73"; + rLen = 0; + rLoc = 1708; + rType = 0; + vrLen = 599; + vrLoc = 1291; + }; + 8EFC6D3C085376D100C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 32"; + rLen = 0; + rLoc = 554; + rType = 0; + vrLen = 425; + vrLoc = 135; + }; + 8EFC6D3D085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 60"; + rLen = 0; + rLoc = 1418; + rType = 0; + vrLen = 599; + vrLoc = 1291; + }; + 8EFC6D3E085376D100C67D06 = { + fRef = 8EF6FA66082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.m: close"; + rLen = 44; + rLoc = 4065; + rType = 0; + vrLen = 365; + vrLoc = 3928; + }; + 8EFC6D3F085376D100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 150"; + rLen = 0; + rLoc = 3839; + rType = 0; + vrLen = 436; + vrLoc = 3238; + }; + 8EFC6D440853772000C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D47085377A400C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D4A085377D900C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D4F0853786000C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D520853787100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D570853791100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D5A0853793800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D5D0853798C00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D64085379E100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D67085379F000C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D6A08537A1200C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D7D08537A5D00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D8008537A7700C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D8308537A9600C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D8608537AB100C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6D9E08537CAE00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DAD08537D1F00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DB008537D4300C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DB308537D6700C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DB608537D9F00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DB908537DB700C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DBC08537DD400C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DBF08537E1F00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DC208537E7400C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DC508537ED200C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DC808537EEA00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DCB08537F0000C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DCE08537F0D00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DD108537F8D00C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DD408537FB000C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DD708537FC200C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DDA08537FD200C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DDD08537FE600C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DE4085380B400C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 67"; + rLen = 0; + rLoc = 1590; + rType = 0; + vrLen = 467; + vrLoc = 28; + }; + 8EFC6DE7085380B800C67D06 = { + fRef = 8EC18EB9084E57D500AE0BA9; + isa = PBXTextBookmark; + name = "libmp4.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 578; + vrLoc = 0; + }; + 8EFC6DE8085380B800C67D06 = { + fRef = 8EF6FA6B082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MusepackFile.h: buffer"; + rLen = 0; + rLoc = 383; + rType = 0; + vrLen = 564; + vrLoc = 35; + }; + 8EFC6DE9085380B800C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 32"; + rLen = 0; + rLoc = 554; + rType = 0; + vrLen = 428; + vrLoc = 132; + }; + 8EFC6DEA085380B800C67D06 = { + fRef = 8EF6FA6D082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.h: seekToTime:"; + rLen = 0; + rLoc = 1030; + rType = 0; + vrLen = 670; + vrLoc = 461; + }; + 8EFC6DEB085380B800C67D06 = { + fRef = 8EF6FA6A082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MPEGFile.m: close"; + rLen = 0; + rLoc = 2209; + rType = 0; + vrLen = 455; + vrLoc = 1874; + }; + 8EFC6DEC085380B800C67D06 = { + fRef = 8EF6FA68082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MonkeysFile.m: close"; + rLen = 0; + rLoc = 1738; + rType = 0; + vrLen = 475; + vrLoc = 1471; + }; + 8EFC6DED085380B800C67D06 = { + fRef = 8EF6FA66082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.m: 166"; + rLen = 0; + rLoc = 4219; + rType = 0; + vrLen = 367; + vrLoc = 3928; + }; + 8EFC6DEE085380B800C67D06 = { + fRef = 8EF6FA6C082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MusepackFile.m: 197"; + rLen = 0; + rLoc = 4116; + rType = 0; + vrLen = 508; + vrLoc = 3624; + }; + 8EFC6DEF085380B800C67D06 = { + fRef = 8EF6FA70082DA526006F7BE6; + isa = PBXTextBookmark; + name = "VorbisFile.m: 75"; + rLen = 0; + rLoc = 1416; + rType = 0; + vrLen = 520; + vrLoc = 901; + }; + 8EFC6DF0085380B800C67D06 = { + fRef = 8EF6FA71082DA526006F7BE6; + isa = PBXTextBookmark; + name = "WaveFile.h: readInfo"; + rLen = 0; + rLoc = 302; + rType = 0; + vrLen = 309; + vrLoc = 0; + }; + 8EFC6DF1085380B800C67D06 = { + fRef = 8EF6FA72082DA526006F7BE6; + isa = PBXTextBookmark; + name = "WaveFile.m: close"; + rLen = 0; + rLoc = 2003; + rType = 0; + vrLen = 393; + vrLoc = 1742; + }; + 8EFC6DF2085380B800C67D06 = { + fRef = 8EF6FA6E082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.m: open:"; + rLen = 0; + rLoc = 2052; + rType = 0; + vrLen = 446; + vrLoc = 1850; + }; + 8EFC6DF3085380B800C67D06 = { + fRef = 8E45227A0832898A00F8BA7C; + isa = PBXTextBookmark; + name = current; + rLen = 7; + rLoc = 1056; + rType = 0; + vrLen = 629; + vrLoc = 780; + }; + 8EFC6DF4085380B800C67D06 = { + fRef = 8E45227B0832898A00F8BA7C; + isa = PBXTextBookmark; + name = "Sound.m: 332"; + rLen = 0; + rLoc = 9218; + rType = 0; + vrLen = 630; + vrLoc = 8684; + }; + 8EFC6DF5085380B800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 161"; + rLen = 0; + rLoc = 3862; + rType = 0; + vrLen = 502; + vrLoc = 3503; + }; + 8EFC6DF6085380B800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 150"; + rLen = 0; + rLoc = 3839; + rType = 0; + vrLen = 436; + vrLoc = 3238; + }; + 8EFC6DF7085380B800C67D06 = { + fRef = 8EC18EB9084E57D500AE0BA9; + isa = PBXTextBookmark; + name = "libmp4.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 578; + vrLoc = 0; + }; + 8EFC6DF8085380B800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 151"; + rLen = 0; + rLoc = 3820; + rType = 0; + vrLen = 521; + vrLoc = 3238; + }; + 8EFC6DF9085380B800C67D06 = { + fRef = 8E45227B0832898A00F8BA7C; + isa = PBXTextBookmark; + name = "Sound.m: 557"; + rLen = 201; + rLoc = 15780; + rType = 0; + vrLen = 695; + vrLoc = 15168; + }; + 8EFC6DFA085380B800C67D06 = { + fRef = 8EF6FA71082DA526006F7BE6; + isa = PBXTextBookmark; + name = "WaveFile.h: readInfo"; + rLen = 0; + rLoc = 302; + rType = 0; + vrLen = 309; + vrLoc = 0; + }; + 8EFC6DFB085380B800C67D06 = { + fRef = 8EF6FA6B082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MusepackFile.h: buffer"; + rLen = 0; + rLoc = 383; + rType = 0; + vrLen = 564; + vrLoc = 35; + }; + 8EFC6DFC085380B800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 153"; + rLen = 0; + rLoc = 3608; + rType = 0; + vrLen = 527; + vrLoc = 3429; + }; + 8EFC6DFD085380B800C67D06 = { + fRef = 8EF6FA6D082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.h: seek:"; + rLen = 0; + rLoc = 992; + rType = 0; + vrLen = 668; + vrLoc = 461; + }; + 8EFC6DFE085380B800C67D06 = { + fRef = 8EF6FA6E082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.m: 25"; + rLen = 0; + rLoc = 490; + rType = 0; + vrLen = 508; + vrLoc = 0; + }; + 8EFC6DFF085380B800C67D06 = { + fRef = 8E45227B0832898A00F8BA7C; + isa = PBXTextBookmark; + name = "Sound.m: 313"; + rLen = 0; + rLoc = 8808; + rType = 0; + vrLen = 657; + vrLoc = 8484; + }; + 8EFC6E00085380B800C67D06 = { + fRef = 8EF6FA6D082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.h: 47"; + rLen = 0; + rLoc = 985; + rType = 0; + vrLen = 670; + vrLoc = 461; + }; + 8EFC6E01085380B800C67D06 = { + fRef = 8EF6FA6E082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.m: 123"; + rLen = 0; + rLoc = 2319; + rType = 0; + vrLen = 538; + vrLoc = 2085; + }; + 8EFC6E02085380B800C67D06 = { + fRef = 8EF6FA6D082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.h: seekToTime:"; + rLen = 0; + rLoc = 1030; + rType = 0; + vrLen = 670; + vrLoc = 461; + }; + 8EFC6E03085380B800C67D06 = { + fRef = 8E14E479084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.h: 32"; + rLen = 0; + rLoc = 554; + rType = 0; + vrLen = 428; + vrLoc = 132; + }; + 8EFC6E04085380B800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 153"; + rLen = 0; + rLoc = 3605; + rType = 0; + vrLen = 580; + vrLoc = 3429; + }; + 8EFC6E05085380B800C67D06 = { + fRef = 8EF6FA6D082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.h: seekToTime:"; + rLen = 0; + rLoc = 1030; + rType = 0; + vrLen = 670; + vrLoc = 461; + }; + 8EFC6E06085380B800C67D06 = { + fRef = 8EF6FA72082DA526006F7BE6; + isa = PBXTextBookmark; + name = "WaveFile.m: readInfo"; + rLen = 0; + rLoc = 1534; + rType = 0; + vrLen = 460; + vrLoc = 1194; + }; + 8EFC6E07085380B800C67D06 = { + fRef = 8EF6FA6E082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.m: open:"; + rLen = 0; + rLoc = 2052; + rType = 0; + vrLen = 446; + vrLoc = 1850; + }; + 8EFC6E08085380B800C67D06 = { + fRef = 8E45227B0832898A00F8BA7C; + isa = PBXTextBookmark; + name = "Sound.m: 313"; + rLen = 0; + rLoc = 8746; + rType = 0; + vrLen = 675; + vrLoc = 8666; + }; + 8EFC6E09085380B800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 153"; + rLen = 0; + rLoc = 3605; + rType = 0; + vrLen = 590; + vrLoc = 3429; + }; + 8EFC6E0A085380B800C67D06 = { + fRef = 8EF6FA66082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.m: 166"; + rLen = 0; + rLoc = 4219; + rType = 0; + vrLen = 367; + vrLoc = 3928; + }; + 8EFC6E0B085380B800C67D06 = { + fRef = 8EF6FA68082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MonkeysFile.m: 85"; + rLen = 0; + rLoc = 1943; + rType = 0; + vrLen = 448; + vrLoc = 1497; + }; + 8EFC6E0C085380B800C67D06 = { + fRef = 8EF6FA6A082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MPEGFile.m: close"; + rLen = 0; + rLoc = 2209; + rType = 0; + vrLen = 455; + vrLoc = 1874; + }; + 8EFC6E0D085380B800C67D06 = { + fRef = 8EF6FA68082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MonkeysFile.m: close"; + rLen = 0; + rLoc = 1738; + rType = 0; + vrLen = 475; + vrLoc = 1471; + }; + 8EFC6E0E085380B800C67D06 = { + fRef = 8EF6FA66082DA526006F7BE6; + isa = PBXTextBookmark; + name = "FlacFile.m: 166"; + rLen = 0; + rLoc = 4219; + rType = 0; + vrLen = 367; + vrLoc = 3928; + }; + 8EFC6E0F085380B800C67D06 = { + fRef = 8EF6FA6C082DA526006F7BE6; + isa = PBXTextBookmark; + name = "MusepackFile.m: 197"; + rLen = 0; + rLoc = 4116; + rType = 0; + vrLen = 508; + vrLoc = 3624; + }; + 8EFC6E10085380B800C67D06 = { + fRef = 8EF6FA70082DA526006F7BE6; + isa = PBXTextBookmark; + name = "VorbisFile.m: 75"; + rLen = 0; + rLoc = 1416; + rType = 0; + vrLen = 520; + vrLoc = 901; + }; + 8EFC6E11085380B800C67D06 = { + fRef = 8EF6FA71082DA526006F7BE6; + isa = PBXTextBookmark; + name = "WaveFile.h: readInfo"; + rLen = 0; + rLoc = 302; + rType = 0; + vrLen = 309; + vrLoc = 0; + }; + 8EFC6E12085380B800C67D06 = { + fRef = 8EF6FA72082DA526006F7BE6; + isa = PBXTextBookmark; + name = "WaveFile.m: close"; + rLen = 0; + rLoc = 2003; + rType = 0; + vrLen = 393; + vrLoc = 1742; + }; + 8EFC6E13085380B800C67D06 = { + fRef = 8EF6FA6E082DA526006F7BE6; + isa = PBXTextBookmark; + name = "SoundFile.m: open:"; + rLen = 0; + rLoc = 2052; + rType = 0; + vrLen = 446; + vrLoc = 1850; + }; + 8EFC6E14085380B800C67D06 = { + fRef = 8E45227B0832898A00F8BA7C; + isa = PBXTextBookmark; + name = "Sound.m: 327"; + rLen = 0; + rLoc = 9217; + rType = 0; + vrLen = 591; + vrLoc = 8666; + }; + 8EFC6E15085380B800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 161"; + rLen = 0; + rLoc = 3862; + rType = 0; + vrLen = 489; + vrLoc = 3516; + }; + 8EFC6E16085380B800C67D06 = { + fRef = 8E45227B0832898A00F8BA7C; + isa = PBXTextBookmark; + name = "Sound.m: 332"; + rLen = 0; + rLoc = 9217; + rType = 0; + vrLen = 567; + vrLoc = 8666; + }; + 8EFC6E17085380B800C67D06 = { + fRef = 8E45227A0832898A00F8BA7C; + isa = PBXTextBookmark; + name = current; + rLen = 7; + rLoc = 1056; + rType = 0; + vrLen = 629; + vrLoc = 780; + }; + 8EFC6E18085380B800C67D06 = { + fRef = 8E45227B0832898A00F8BA7C; + isa = PBXTextBookmark; + name = "Sound.m: 332"; + rLen = 0; + rLoc = 9217; + rType = 0; + vrLen = 567; + vrLoc = 8666; + }; + 8EFC6E19085380B800C67D06 = { + fRef = 8E45227A0832898A00F8BA7C; + isa = PBXTextBookmark; + name = current; + rLen = 7; + rLoc = 1056; + rType = 0; + vrLen = 629; + vrLoc = 780; + }; + 8EFC6E1A085380B800C67D06 = { + fRef = 8E45227B0832898A00F8BA7C; + isa = PBXTextBookmark; + name = "Sound.m: 332"; + rLen = 0; + rLoc = 9218; + rType = 0; + vrLen = 630; + vrLoc = 8684; + }; + 8EFC6E1B085380B800C67D06 = { + fRef = 8E14E47A084CF1A200246BCC; + isa = PBXTextBookmark; + name = "AACFile.m: 152"; + rLen = 0; + rLoc = 3595; + rType = 0; + vrLen = 492; + vrLoc = 3503; + }; } diff --git a/English.lproj/MainMenu.nib/classes.nib b/English.lproj/MainMenu.nib/classes.nib index 7f8d579a7..976e35619 100644 --- a/English.lproj/MainMenu.nib/classes.nib +++ b/English.lproj/MainMenu.nib/classes.nib @@ -12,9 +12,18 @@ CLASS = AppController; LANGUAGE = ObjC; OUTLETS = { + addButton = NSButton; + infoButton = NSButton; infoPanel = NSPanel; mainWindow = NSWindow; + nextButton = NSButton; + playButton = NSButton; playlistController = PlaylistController; + prevButton = NSButton; + remButton = NSButton; + repeatButton = NSButton; + shuffleButton = NSButton; + stopButton = NSButton; }; SUPERCLASS = NSObject; }, diff --git a/English.lproj/MainMenu.nib/info.nib b/English.lproj/MainMenu.nib/info.nib index c6c863b06..1dd2768ca 100644 --- a/English.lproj/MainMenu.nib/info.nib +++ b/English.lproj/MainMenu.nib/info.nib @@ -13,8 +13,8 @@ 437.0 IBOpenObjects - 21 29 + 21 IBSystem Version 8B15 diff --git a/English.lproj/MainMenu.nib/keyedobjects.nib b/English.lproj/MainMenu.nib/keyedobjects.nib index 108d281660500b6fe651123cbe887f38c98ef36c..e456168ac2708e855634d20884236359327c1a38 100644 GIT binary patch delta 24253 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 delta 23313 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

aOa6>QB`Z)pOM=)mznjHKNAUJT<)b zr>51WTD67RT5YFxRJ*8qs6Eu)YF~ALI#?}HhpVI1G3t1Ak~&qLq0Un0steS`>N0hu zTB@#9H>jJ`3bj(*u2!i#)&0~1)kD-e^)U5F^%(Vd^(6IF^>p=2^=$QA^#b)`^-}c; z^(yrm^*Z$i^(OU?>MiQ+>YeIc>b+|10rg?^G4%=cY4thvMfI)D$({PnuR6c(oYOhK zb5Z9voy$AF?fkBDUFY|mKXm@oxvlf(&R;wCbnfpw)Oob?c;~6kvz-?@FLz$+yxDoX z^KR#Z&PSb3J709Z?tItzLBrMH8d4+B7;8itGmWLjMq{sW(zt5G8c&Un#$OYp>8aI( zX(BZ-ns`l;CRLN6$=2j)3Nd*{3rj^WFRy>%U1wgJ*XFHhHm&BP=`da9v*|H?#yVgI%`Yky3?#9|XRBN1D$9XpW> z10fYwq#+##a2T05hAf=MIpiP@`6xgkicpLaD{i9{Whh4lDp7@MJi~L;qXCV0hZeNq z6FSk2ujs`${J>BA;qakG2acvAo#?`GoWO~6qdTW?DyMNKz3D?=`q7^O3}g@&GMFJ; z!cZ<_I9D=)kzC6tMsowL8yU+u#xsG5OyV}~;4UUJg`k+qJ>1KEOy_4{T=#JK4=I z?6I0$dc`PKaf(-h5|yN_8h&83TPcF1R9Tg#bnTb*pfYqs$Cag1I;(8u zC{Gu3Q3Wd06FavBarConfig PBXProjectModuleGUID - 8E3852EB084CECAD00D715B8 + 8EFC6C4708536D2500C67D06 XCBarModuleItemNames XCBarModuleItems @@ -254,19 +254,22 @@ PBXSmartGroupTreeModuleOutlineStateExpansionKey 0867D691FE84028FC02AAC07 - 034768DDFF38A45A11DB9C8B - 8D07F2C80486CC7A007CD1D0 + 8E64758F08536C4B007B91CB + 8EFC6BFF08536C9D00C67D06 1C37FBAC04509CD000000102 1C37FABC05509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey + 3 + 2 + 1 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey - {{0, 0}, {186, 338}} + {{0, 0}, {186, 567}} PBXTopSmartGroupGIDs @@ -278,14 +281,14 @@ GeometryConfiguration Frame - {{0, 0}, {203, 356}} + {{0, 0}, {203, 585}} GroupTreeTableConfiguration MainColumn 186 RubberWindowFrame - 167 339 690 397 0 0 1024 746 + -1 120 1024 626 0 0 1024 746 Module PBXSmartGroupTreeModule @@ -296,12 +299,14 @@ Dock + BecomeActive + ContentConfiguration PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel - MyNewFile14.java + aacinfo.c PBXSplitModuleInNavigatorKey Split0 @@ -309,7 +314,25 @@ PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel - MyNewFile14.java + aacinfo.c + _historyCapacity + 0 + bookmark + 8EFC6D8908537AB900C67D06 + history + + 8EFC6C7308536F3A00C67D06 + 8EFC6D6F08537A5300C67D06 + 8EFC6D7008537A5300C67D06 + 8EFC6D7908537A5300C67D06 + + prevStack + + 8EFC6C4208536D2500C67D06 + 8EFC6C4308536D2500C67D06 + 8EFC6C7708536F3A00C67D06 + 8EFC6D7308537A5300C67D06 + SplitCount 1 @@ -320,18 +343,16 @@ GeometryConfiguration Frame - {{0, 0}, {482, 0}} + {{0, 0}, {816, 406}} RubberWindowFrame - 167 339 690 397 0 0 1024 746 + -1 120 1024 626 0 0 1024 746 Module PBXNavigatorGroup Proportion - 0pt + 406pt - BecomeActive - ContentConfiguration PBXProjectModuleGUID @@ -342,18 +363,18 @@ GeometryConfiguration Frame - {{0, 5}, {482, 351}} + {{0, 411}, {816, 174}} RubberWindowFrame - 167 339 690 397 0 0 1024 746 + -1 120 1024 626 0 0 1024 746 Module XCDetailModule Proportion - 351pt + 174pt Proportion - 482pt + 816pt Name @@ -368,9 +389,9 @@ TableOfContents - 8ED1CC1B084F86C700771E1E + 8EFC6D8A08537AB900C67D06 1CE0B1FE06471DED0097A5F4 - 8ED1CC1C084F86C700771E1E + 8EFC6D8B08537AB900C67D06 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 @@ -507,7 +528,7 @@ /Users/xugg/Projects/Cog/Libraries/FAAD2/FAAD2.xcode WindowString - 167 339 690 397 0 0 1024 746 + -1 120 1024 626 0 0 1024 746 WindowTools @@ -523,30 +544,30 @@ Dock - BecomeActive - ContentConfiguration PBXProjectModuleGUID 1CD0528F0623707200166675 PBXProjectModuleLabel - huffman.c + mp4ff.c StatusBarVisibility GeometryConfiguration Frame - {{0, 0}, {1024, 343}} + {{0, 0}, {500, 218}} RubberWindowFrame - 0 121 1024 625 0 0 1024 746 + 31 223 500 500 0 0 1024 746 Module PBXNavigatorGroup Proportion - 343pt + 218pt + BecomeActive + ContentConfiguration PBXProjectModuleGUID @@ -561,9 +582,9 @@ GeometryConfiguration Frame - {{0, 348}, {1024, 236}} + {{0, 223}, {500, 236}} RubberWindowFrame - 0 121 1024 625 0 0 1024 746 + 31 223 500 500 0 0 1024 746 Module PBXBuildResultsModule @@ -572,7 +593,7 @@ Proportion - 584pt + 459pt Name @@ -585,17 +606,17 @@ TableOfContents - 8E3852E7084CECAC00D715B8 - 8E45D7BA084E82EF00867D39 + 8EFC6C5508536DA800C67D06 + 8EFC6C5608536DA800C67D06 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID ToolbarConfiguration xcode.toolbar.config.build WindowString - 0 121 1024 625 0 0 1024 746 + 31 223 500 500 0 0 1024 746 WindowToolGUID - 8E3852E7084CECAC00D715B8 + 8EFC6C5508536DA800C67D06 WindowToolIsVisible @@ -702,12 +723,8 @@ 0 - FirstTimeWindowDisplayed - Identifier windowTool.find - IsVertical - Layout @@ -722,16 +739,26 @@ PBXProjectModuleGUID 1CDD528C0622207200134675 PBXProjectModuleLabel - + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CD0528D0623707200166675 + + SplitCount + 1 + StatusBarVisibility - + 1 GeometryConfiguration Frame - {{0, 0}, {781, 212}} + {{0, 0}, {781, 167}} RubberWindowFrame - 188 243 781 470 0 0 1024 746 + 62 385 781 470 0 0 1440 878 Module PBXNavigatorGroup @@ -740,9 +767,11 @@ Proportion - 212pt + 50% + BecomeActive + 1 ContentConfiguration PBXProjectModuleGUID @@ -753,18 +782,18 @@ GeometryConfiguration Frame - {{0, 217}, {781, 212}} + {{8, 0}, {773, 254}} RubberWindowFrame - 188 243 781 470 0 0 1024 746 + 62 385 781 470 0 0 1440 878 Module PBXProjectFindModule Proportion - 212pt + 50% Proportion - 429pt + 428pt Name @@ -774,21 +803,23 @@ PBXProjectFindModule StatusbarIsVisible - + 1 TableOfContents 1C530D57069F1CE1000CFCEE - 8E146003084CEE5800DB7064 - 8E146004084CEE5800DB7064 + 1C530D58069F1CE1000CFCEE + 1C530D59069F1CE1000CFCEE 1CDD528C0622207200134675 + 1C530D5A069F1CE1000CFCEE + 1CE0B1FE06471DED0097A5F4 1CD0528E0623707200166675 WindowString - 188 243 781 470 0 0 1024 746 + 62 385 781 470 0 0 1440 878 WindowToolGUID 1C530D57069F1CE1000CFCEE WindowToolIsVisible - + 0 Identifier @@ -847,8 +878,12 @@ 650 41 440 400 0 0 1280 1002 + FirstTimeWindowDisplayed + Identifier windowTool.run + IsVertical + Layout @@ -877,8 +912,8 @@ yes sizes - {{0, 0}, {493, 167}} - {{0, 176}, {493, 267}} + {{0, 0}, {493, 168}} + {{0, 173}, {493, 270}} VerticalSplitView @@ -893,8 +928,8 @@ yes sizes - {{0, 0}, {405, 443}} - {{414, 0}, {514, 443}} + {{0, 0}, {406, 443}} + {{411, 0}, {517, 443}} @@ -902,9 +937,9 @@ GeometryConfiguration Frame - {{0, 0}, {460, 159}} + {{0, 0}, {459, 159}} RubberWindowFrame - 316 696 459 200 0 0 1280 1002 + 41 523 459 200 0 0 1024 746 Module PBXRunSessionModule @@ -923,22 +958,22 @@ PBXRunSessionModule StatusbarIsVisible - 1 + TableOfContents 1C0AD2B3069F1EA900FABCE6 - 1C0AD2B4069F1EA900FABCE6 + 8EFC6C7108536F2C00C67D06 1CD0528B0623707200166675 - 1C0AD2B5069F1EA900FABCE6 + 8EFC6C7208536F2C00C67D06 ToolbarConfiguration xcode.toolbar.config.run WindowString - 316 696 459 200 0 0 1280 1002 + 41 523 459 200 0 0 1024 746 WindowToolGUID 1C0AD2B3069F1EA900FABCE6 WindowToolIsVisible - 0 + Identifier diff --git a/Libraries/FAAD2/FAAD2.xcode/xugg.pbxuser b/Libraries/FAAD2/FAAD2.xcode/xugg.pbxuser index bb1d2dccb..4a6ba1c88 100644 --- a/Libraries/FAAD2/FAAD2.xcode/xugg.pbxuser +++ b/Libraries/FAAD2/FAAD2.xcode/xugg.pbxuser @@ -1,19 +1,21 @@ // !$*UTF8*$! { 0867D690FE84028FC02AAC07 = { - activeBuildStyle = 4F0BB7ED011F40E904CA0E50; + activeBuildStyle = 4F0BB7EC011F40E904CA0E50; activeTarget = 8D07F2BC0486CC7A007CD1D0; addToTargets = ( 8D07F2BC0486CC7A007CD1D0, ); - codeSenseManager = 8E3851F6084CEC2000D715B8; + breakpoints = ( + ); + codeSenseManager = 8EFC6C3908536C9D00C67D06; perUserDictionary = { PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, - 243, + 577, 20, 48, 43, @@ -52,17 +54,57 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 139429230; - PBXWorkspaceStateSaveDate = 139429230; + PBXPerProjectTemplateStateSaveDate = 139688536; + PBXWorkspaceStateSaveDate = 139688536; }; - sourceControlManager = 8E3851F5084CEC2000D715B8; + perUserProjectItems = { + 8EFC6C4208536D2500C67D06 = 8EFC6C4208536D2500C67D06; + 8EFC6C4308536D2500C67D06 = 8EFC6C4308536D2500C67D06; + 8EFC6C7308536F3A00C67D06 = 8EFC6C7308536F3A00C67D06; + 8EFC6C7708536F3A00C67D06 = 8EFC6C7708536F3A00C67D06; + 8EFC6D6F08537A5300C67D06 = 8EFC6D6F08537A5300C67D06; + 8EFC6D7008537A5300C67D06 = 8EFC6D7008537A5300C67D06; + 8EFC6D7308537A5300C67D06 = 8EFC6D7308537A5300C67D06; + 8EFC6D7908537A5300C67D06 = 8EFC6D7908537A5300C67D06; + 8EFC6D8908537AB900C67D06 = 8EFC6D8908537AB900C67D06; + }; + sourceControlManager = 8EFC6C3808536C9D00C67D06; userBuildSettings = { }; }; 8D07F2BC0486CC7A007CD1D0 = { activeExec = 0; }; - 8E3851F5084CEC2000D715B8 = { + 8EFC6C0008536C9D00C67D06 = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {775, 5124}}"; + sepNavSelRange = "{4791, 0}"; + sepNavVisRect = "{{0, 1880}, {775, 374}}"; + }; + }; + 8EFC6C0108536C9D00C67D06 = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {775, 770}}"; + sepNavSelRange = "{1285, 0}"; + sepNavVisRect = "{{0, 382}, {775, 374}}"; + sepNavWindowFrame = "{{15, 72}, {1017, 669}}"; + }; + }; + 8EFC6C0308536C9D00C67D06 = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {775, 798}}"; + sepNavSelRange = "{1983, 0}"; + sepNavVisRect = "{{0, 250}, {775, 548}}"; + }; + }; + 8EFC6C1508536C9D00C67D06 = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {710, 6650}}"; + sepNavSelRange = "{3042, 0}"; + sepNavVisRect = "{{0, 1356}, {459, 186}}"; + }; + }; + 8EFC6C3808536C9D00C67D06 = { fallbackIsa = XCSourceControlManager; isSCMEnabled = 0; isa = PBXSourceControlManager; @@ -70,29 +112,98 @@ }; scmType = ""; }; - 8E3851F6084CEC2000D715B8 = { + 8EFC6C3908536C9D00C67D06 = { indexTemplatePath = ""; isa = PBXCodeSenseManager; }; - 8E3851FC084CEC6100D715B8 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {983, 2996}}"; - sepNavSelRange = "{1209, 0}"; - sepNavVisRect = "{{0, 272}, {983, 311}}"; - }; + 8EFC6C4208536D2500C67D06 = { + fRef = 8EFC6C0008536C9D00C67D06; + isa = PBXTextBookmark; + name = "aacinfo.c: read_ADTS_header"; + rLen = 0; + rLoc = 2624; + rType = 0; + vrLen = 254; + vrLoc = 9592; }; - 8E385210084CEC6100D715B8 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {983, 5964}}"; - sepNavSelRange = "{1253, 13}"; - sepNavVisRect = "{{0, 291}, {983, 311}}"; - }; + 8EFC6C4308536D2500C67D06 = { + fRef = 8EFC6C0108536C9D00C67D06; + isa = PBXTextBookmark; + name = "aacinfo.h: 20"; + rLen = 0; + rLoc = 961; + rType = 0; + vrLen = 1250; + vrLoc = 658; }; - 8E38521D084CEC6100D715B8 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {983, 7798}}"; - sepNavSelRange = "{8543, 47}"; - sepNavVisRect = "{{0, 4192}, {983, 311}}"; - }; + 8EFC6C7308536F3A00C67D06 = { + fRef = 8EFC6C0308536C9D00C67D06; + isa = PBXTextBookmark; + name = "filestream.h: 57"; + rLen = 0; + rLoc = 1983; + rType = 0; + vrLen = 1114; + vrLoc = 869; + }; + 8EFC6C7708536F3A00C67D06 = { + fRef = 8EFC6C0308536C9D00C67D06; + isa = PBXTextBookmark; + name = "filestream.h: 57"; + rLen = 0; + rLoc = 1983; + rType = 0; + vrLen = 1114; + vrLoc = 869; + }; + 8EFC6D6F08537A5300C67D06 = { + fRef = 8EFC6C1508536C9D00C67D06; + isa = PBXTextBookmark; + name = "{"; + rLen = 2; + rLoc = 3056; + rType = 0; + vrLen = 465; + vrLoc = 2873; + }; + 8EFC6D7008537A5300C67D06 = { + fRef = 8EFC6C0108536C9D00C67D06; + isa = PBXTextBookmark; + name = "aacinfo.h: 35"; + rLen = 0; + rLoc = 1285; + rType = 0; + vrLen = 746; + vrLoc = 1165; + }; + 8EFC6D7308537A5300C67D06 = { + fRef = 8EFC6C1508536C9D00C67D06; + isa = PBXTextBookmark; + name = "{"; + rLen = 2; + rLoc = 3056; + rType = 0; + vrLen = 465; + vrLoc = 2873; + }; + 8EFC6D7908537A5300C67D06 = { + fRef = 8EFC6C0008536C9D00C67D06; + isa = PBXTextBookmark; + name = "aacinfo.c: 152"; + rLen = 0; + rLoc = 4787; + rType = 0; + vrLen = 822; + vrLoc = 4290; + }; + 8EFC6D8908537AB900C67D06 = { + fRef = 8EFC6C0008536C9D00C67D06; + isa = PBXTextBookmark; + name = "aacinfo.c: 152"; + rLen = 0; + rLoc = 4791; + rType = 0; + vrLen = 826; + vrLoc = 4290; }; } diff --git a/Libraries/MAC/MAC.xcode/xugg.mode1 b/Libraries/MAC/MAC.xcode/xugg.mode1 index 60b7f629f..8204b0fc8 100644 --- a/Libraries/MAC/MAC.xcode/xugg.mode1 +++ b/Libraries/MAC/MAC.xcode/xugg.mode1 @@ -218,6 +218,8 @@ Layout + BecomeActive + ContentConfiguration PBXBottomSmartGroupGIDs @@ -263,12 +265,11 @@ PBXSmartGroupTreeModuleOutlineStateSelectionKey - 69 - 68 + 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey - {{0, 760}, {231, 566}} + {{0, 0}, {231, 566}} PBXTopSmartGroupGIDs @@ -315,7 +316,7 @@ _historyCapacity 0 bookmark - 8E2BC800084F898E004518D1 + 8EFC6BF608536C8300C67D06 history 8EEBC7F2084F5C3C009FE5BE @@ -338,7 +339,7 @@ 8E2BC7F7084F898E004518D1 8E2BC7F8084F898E004518D1 8E2BC7F9084F898E004518D1 - 8E65785D084F5EDB00F28C07 + 8E2BC800084F898E004518D1 prevStack @@ -363,9 +364,6 @@ 8E2BC7FA084F898E004518D1 8E2BC7FB084F898E004518D1 8E2BC7FC084F898E004518D1 - 8E2BC7FD084F898E004518D1 - 8E2BC7FE084F898E004518D1 - 8E2BC7FF084F898E004518D1 SplitCount @@ -387,8 +385,6 @@ 109pt - BecomeActive - ContentConfiguration PBXProjectModuleGUID @@ -425,9 +421,9 @@ TableOfContents - 8E2BC801084F898E004518D1 + 8EFC6BF708536C8300C67D06 1CE0B1FE06471DED0097A5F4 - 8E2BC802084F898E004518D1 + 8EFC6BF808536C8300C67D06 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 diff --git a/Libraries/MAC/MAC.xcode/xugg.pbxuser b/Libraries/MAC/MAC.xcode/xugg.pbxuser index e262d62b4..210eedad2 100644 --- a/Libraries/MAC/MAC.xcode/xugg.pbxuser +++ b/Libraries/MAC/MAC.xcode/xugg.pbxuser @@ -80,8 +80,8 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 139430228; - PBXWorkspaceStateSaveDate = 139430228; + PBXPerProjectTemplateStateSaveDate = 139684956; + PBXWorkspaceStateSaveDate = 139684956; }; perUserProjectItems = { 8E2BC7F4084F898E004518D1 = 8E2BC7F4084F898E004518D1; @@ -93,11 +93,7 @@ 8E2BC7FA084F898E004518D1 = 8E2BC7FA084F898E004518D1; 8E2BC7FB084F898E004518D1 = 8E2BC7FB084F898E004518D1; 8E2BC7FC084F898E004518D1 = 8E2BC7FC084F898E004518D1; - 8E2BC7FD084F898E004518D1 = 8E2BC7FD084F898E004518D1; - 8E2BC7FE084F898E004518D1 = 8E2BC7FE084F898E004518D1; - 8E2BC7FF084F898E004518D1 = 8E2BC7FF084F898E004518D1; 8E2BC800084F898E004518D1 = 8E2BC800084F898E004518D1; - 8E65785D084F5EDB00F28C07 = 8E65785D084F5EDB00F28C07; 8E65785E084F5EDB00F28C07 = 8E65785E084F5EDB00F28C07; 8E65785F084F5EDB00F28C07 = 8E65785F084F5EDB00F28C07; 8E657860084F5EDB00F28C07 = 8E657860084F5EDB00F28C07; @@ -130,6 +126,7 @@ 8EEBC7FE084F5C3C009FE5BE = 8EEBC7FE084F5C3C009FE5BE; 8EEBC7FF084F5C3C009FE5BE = 8EEBC7FF084F5C3C009FE5BE; 8EEBC800084F5C3C009FE5BE = 8EEBC800084F5C3C009FE5BE; + 8EFC6BF608536C8300C67D06 = 8EFC6BF608536C8300C67D06; }; sourceControlManager = 8E4DD23C082DCA1B004B6830; userBuildSettings = { @@ -228,36 +225,6 @@ vrLen = 195; vrLoc = 0; }; - 8E2BC7FD084F898E004518D1 = { - fRef = 8EEBC75D084F5AF9009FE5BE; - isa = PBXTextBookmark; - name = "m_spIO.Assign(new IO_CLASS_NAME);"; - rLen = 39; - rLoc = 783; - rType = 0; - vrLen = 162; - vrLoc = 709; - }; - 8E2BC7FE084F898E004518D1 = { - fRef = 8EEBC797084F5B65009FE5BE; - isa = PBXTextBookmark; - name = "APEInfo.h: 79"; - rLen = 0; - rLoc = 4830; - rType = 0; - vrLen = 86; - vrLoc = 1090; - }; - 8E2BC7FF084F898E004518D1 = { - fRef = 8EEBC787084F5B30009FE5BE; - isa = PBXTextBookmark; - name = "APETag.h: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 152; - vrLoc = 0; - }; 8E2BC800084F898E004518D1 = { fRef = 8EEBC788084F5B30009FE5BE; isa = PBXTextBookmark; @@ -280,16 +247,6 @@ indexTemplatePath = ""; isa = PBXCodeSenseManager; }; - 8E65785D084F5EDB00F28C07 = { - fRef = 8EEBC788084F5B30009FE5BE; - isa = PBXTextBookmark; - name = "virtual int Open(const wchar_t * pName) = 0;"; - rLen = 50; - rLoc = 351; - rType = 0; - vrLen = 669; - vrLoc = 0; - }; 8E65785E084F5EDB00F28C07 = { fRef = 8EEBC7C5084F5BB3009FE5BE; isa = PBXTextBookmark; @@ -611,7 +568,7 @@ uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {730, 700}}"; sepNavSelRange = "{351, 50}"; - sepNavVisRect = "{{0, 371}, {730, 77}}"; + sepNavVisRect = "{{0, 364}, {730, 77}}"; }; }; 8EEBC78B084F5B30009FE5BE = { @@ -771,4 +728,14 @@ vrLen = 648; vrLoc = 0; }; + 8EFC6BF608536C8300C67D06 = { + fRef = 8EEBC788084F5B30009FE5BE; + isa = PBXTextBookmark; + name = "virtual int Open(const wchar_t * pName) = 0;"; + rLen = 50; + rLoc = 351; + rType = 0; + vrLen = 268; + vrLoc = 401; + }; } diff --git a/PLANNED b/PLANNED index e58af686b..49944d6d7 100644 --- a/PLANNED +++ b/PLANNED @@ -1,10 +1,14 @@ +0.0.2 +mpeg4 support (FAAD) +shorten support +hotkeys for next/prev/stop/shuffle/repeat & info window + +0.0.3 +Stream support for shoutcast/oggcast, or just opening files via URL. + +0.0.4+ A queue system, in which a user can option+click a song, and it will be placed in a queue, whcih will pick the next song. -Stream support for shoutcast/oggcast, or just opening via URL. Audioscrobbler. -Improved tag reading. -mpeg4 support (FAAD) look into realplayer (cook in mplayer) and wma -find better ape decoder visualizer? (libvisualizer perhaps?) -hotkeys for next/prev/stop/shuffle/repeat & info window diff --git a/Sound.m b/Sound.m index 8073c2d17..d1e3bca59 100644 --- a/Sound.m +++ b/Sound.m @@ -306,15 +306,30 @@ static OSStatus Sound_Renderer(void *inRefCon, AudioUnitRenderActionFlags *ioAc NSArray* components = [portMessage components]; NSData *data = [components objectAtIndex:0]; double time; + double newTime; unsigned long pos; + time = (*(double *)[data bytes]); pos = [self calculatePos:time]; - [soundFile seekToTime:time]; - [self resetBuffer]; - [readLock lock]; - currentPosition = pos; - [readLock unlock]; + newTime = [soundFile seekToTime:time]; + if (newTime >= 0) + { + [self resetBuffer]; + + pos = [self calculatePos:newTime]; + + [readLock lock]; + currentPosition = pos; + [readLock unlock]; + } + else + { + newTime = [self calculateTime:currentPosition]; + } + //send a message with newTime + DBLog(@"RESETING TIME TO: %f", newTime); + [self sendPortMessage:kCogPositionUpdateMessage withData:&newTime ofSize:(sizeof(double))]; } else if (msgid == kCogEndOfPlaylistMessage) { diff --git a/SoundFile/AACFile.h b/SoundFile/AACFile.h index 8d52810ab..3cb1d2ea3 100644 --- a/SoundFile/AACFile.h +++ b/SoundFile/AACFile.h @@ -20,6 +20,9 @@ NeAACDecHandle hAac; NeAACDecFrameInfo hInfo; + unsigned long *seekTable; + int seekTableLength; + char buffer[SAMPLE_BUFFER_SIZE]; int bufferAmount; diff --git a/SoundFile/AACFile.m b/SoundFile/AACFile.m index aa0b95985..0e788ef9e 100644 --- a/SoundFile/AACFile.m +++ b/SoundFile/AACFile.m @@ -7,38 +7,41 @@ // #import "AACFile.h" - +#import @implementation AACFile - (BOOL)open:(const char *)filename { - unsigned long cap = NeAACDecGetCapabilities(); + faadAACInfo info; + // unsigned long cap = NeAACDecGetCapabilities(); //Check if decoder has the needed capabilities + inFd = fopen(filename, "r"); + if (!inFd) + return NO; + //Open the library hAac = NeAACDecOpen(); //Get the current config NeAACDecConfigurationPtr conf = NeAACDecGetCurrentConfiguration(hAac); -// conf->useOldADTSFormat = 1; - DBLog(@"CONFIG: %i", conf->useOldADTSFormat); - //if needed, change some of the values in conf conf->outputFormat = FAAD_FMT_32BIT; -// conf->downMatrix = 1; -// channels = 1; bitsPerSample = 32; - + //set the new configuration NeAACDecSetConfiguration(hAac, conf); - inFd = fopen(filename, "r"); - if (!inFd) - return NO; + get_AAC_format(inFd, &info, &seekTable, &seekTableLength, 1); + DBLog(@"INFO TIME"); + DBLog(@"---------"); + DBLog(@"%i %i %i %i %i", info.bitrate, info.channels, info.length, info.sampling_rate, info.version); + DBLog(@""); + fseek(inFd, 0, SEEK_SET); inputAmount = fread(inputBuffer, 1, INPUT_BUFFER_SIZE, inFd); - + unsigned long samplerate; unsigned char c; //Initialize the library using one of the initalization functions @@ -49,18 +52,25 @@ DBLog(@"AAC ERRROR"); return NO; } - inputAmount -= err; memmove(inputBuffer, &inputBuffer[err], inputAmount); - + frequency = (int)samplerate; channels = c; - + + bitRate = (int)((float)info.bitrate/1000.0); + totalSize = (long int)(info.length*(double)frequency/1000.0*channels*bitsPerSample/8); + isBigEndian = YES; return YES; } +- (BOOL)readInfo:(const char *)filename +{ + return [self open:filename]; //they both would do the same damn thing +} + - (int)fillBuffer:(void *)buf ofSize:(UInt32)size { int numread = bufferAmount; @@ -132,8 +142,34 @@ return count + numread; } +- (double)seekToTime:(double)milliseconds +{ + int second; + int i; + unsigned long pos; + unsigned long length; + + if (seekTableLength <= 1) + return -1; + + length = (unsigned long)(totalSize /(frequency * channels*(bitsPerSample/8))); + + second = (int)(milliseconds/1000.0); + i = (int)(((float)second/length)*seekTableLength); + DBLog(@"SEEKING TO: %i %i", seekTable, seekTableLength); + pos = seekTable[i]; + + fseek(inFd, pos, SEEK_SET); + inputAmount = 0; + NeAACDecPostSeekReset(hAac, -1); + + return second*1000.0; +} + - (void)close { + NeAACDecClose(hAac); + fclose(inFd); } @end diff --git a/SoundFile/FlacFile.m b/SoundFile/FlacFile.m index 4fb8606ec..b5fe2e119 100644 --- a/SoundFile/FlacFile.m +++ b/SoundFile/FlacFile.m @@ -159,9 +159,11 @@ void ErrorProc(const FLAC__FileDecoder *decoder, FLAC__StreamDecoderErrorStatus } -- (void)seekToTime:(double)milliseconds +- (double)seekToTime:(double)milliseconds { FLAC__file_decoder_seek_absolute(decoder, frequency * ((double)milliseconds/1000.0)); + + return milliseconds; } //bs methods diff --git a/SoundFile/MPEGFile.m b/SoundFile/MPEGFile.m index 05e2f4d91..a7bd0734f 100644 --- a/SoundFile/MPEGFile.m +++ b/SoundFile/MPEGFile.m @@ -99,9 +99,11 @@ decoder = NULL; } -- (void)seekToTime:(double)milliseconds +- (double)seekToTime:(double)milliseconds { DecMPA_SeekToTime(decoder, (unsigned long)milliseconds); + + return milliseconds; } @end diff --git a/SoundFile/MonkeysFile.m b/SoundFile/MonkeysFile.m index 110d11252..491236da6 100644 --- a/SoundFile/MonkeysFile.m +++ b/SoundFile/MonkeysFile.m @@ -76,11 +76,13 @@ decompress = NULL; } -- (void)seekToTime:(double)milliseconds +- (double)seekToTime:(double)milliseconds { int r; // DBLog(@"HELLO: %i", int(frequency*((double)milliseconds/1000.0))); r = decompress->Seek(int(frequency*((double)milliseconds/1000.0))); + + return milliseconds; } @end diff --git a/SoundFile/MusepackFile.m b/SoundFile/MusepackFile.m index 438fc0d8e..08653c9b8 100644 --- a/SoundFile/MusepackFile.m +++ b/SoundFile/MusepackFile.m @@ -184,7 +184,7 @@ BOOL CanSeekProc(void *data) fclose(inFd); } -- (void)seekToTime:(double)milliseconds +- (double)seekToTime:(double)milliseconds { BOOL r; // double n = milliseconds; @@ -193,6 +193,8 @@ BOOL CanSeekProc(void *data) r = mpc_decoder_seek_sample(&decoder, frequency*((double)milliseconds/1000.0)); // DBLog(@"SEEK RESULT: %i", r); + + return milliseconds; } //accessors diff --git a/SoundFile/SoundFile.h b/SoundFile/SoundFile.h index a4c0a5454..8d9c34cf0 100644 --- a/SoundFile/SoundFile.h +++ b/SoundFile/SoundFile.h @@ -44,8 +44,8 @@ - (UInt32)fillBuffer:(void *)buf ofSize:(UInt32)size; -- (void)seek:(unsigned long)position; -- (void)seekToTime:(double)milliseconds; +//- (BOOL)seek:(unsigned long)position; +- (double)seekToTime:(double)milliseconds; - (void)close; - (void)reset; //START AGAIN diff --git a/SoundFile/SoundFile.m b/SoundFile/SoundFile.m index 83e9e2edd..1a20f4340 100644 --- a/SoundFile/SoundFile.m +++ b/SoundFile/SoundFile.m @@ -11,7 +11,7 @@ @implementation SoundFile -- (void)seek:(unsigned long)position +/*- (void)seek:(unsigned long)position { unsigned long time; unsigned long frame; @@ -21,9 +21,10 @@ currentPosition = position; - [self seekToTime:time]; + time = [self seekToTime:time]; + position = time * (frequency/1000.0)*chanels*(bitsPerSample/8) } - +*/ - (double)length { return (totalSize/channels/(bitsPerSample/8)/(frequency/1000.0)); @@ -119,7 +120,7 @@ - (void)reset { - [self seek:0]; + [self seekToTime:0.0]; } - (void)getFormat:(AudioStreamBasicDescription *)sourceStreamFormat diff --git a/SoundFile/VorbisFile.m b/SoundFile/VorbisFile.m index f77fa74e8..6454aa909 100644 --- a/SoundFile/VorbisFile.m +++ b/SoundFile/VorbisFile.m @@ -71,6 +71,8 @@ - (void)seekToTime:(double)milliseconds { ov_time_seek(&vorbisRef, (double)milliseconds/1000.0); + + return milliseconds; } diff --git a/SoundFile/WaveFile.m b/SoundFile/WaveFile.m index f21f892c8..aaa9134ab 100644 --- a/SoundFile/WaveFile.m +++ b/SoundFile/WaveFile.m @@ -113,9 +113,11 @@ sndFile = NULL; } -- (void)seekToTime:(double)milliseconds +- (double)seekToTime:(double)milliseconds { sf_seek(sndFile, frequency*((double)milliseconds/1000.0), SEEK_SET); + + return milliseconds; } @end