Added AAC seeking. Basic AAC support is finished.

This commit is contained in:
vspader 2005-06-05 18:52:35 +00:00
parent f9d007c21d
commit 013332edb1
27 changed files with 2578 additions and 526 deletions

View file

@ -9,6 +9,17 @@
IBOutlet PlaylistController *playlistController; IBOutlet PlaylistController *playlistController;
IBOutlet NSPanel *infoPanel; IBOutlet NSPanel *infoPanel;
IBOutlet NSWindow *mainWindow; 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)addFiles:(id)sender;
- (IBAction)delEntries:(id)sender; - (IBAction)delEntries:(id)sender;

View file

@ -55,6 +55,17 @@
- (void)awakeFromNib - (void)awakeFromNib
{ {
// DBLog(@"AWAKe"); // 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"; NSString *filename = @"~/Library/Application Support/Cog/Default.playlist";
[playlistController loadPlaylist:[filename stringByExpandingTildeInPath]]; [playlistController loadPlaylist:[filename stringByExpandingTildeInPath]];
} }

View file

@ -559,12 +559,6 @@
refType = 4; refType = 4;
sourceTree = "<group>"; sourceTree = "<group>";
}; };
8E14E47B084CF1A200246BCC = {
fileRef = 8E14E479084CF1A200246BCC;
isa = PBXBuildFile;
settings = {
};
};
8E14E47C084CF1A200246BCC = { 8E14E47C084CF1A200246BCC = {
fileRef = 8E14E47A084CF1A200246BCC; fileRef = 8E14E47A084CF1A200246BCC;
isa = PBXBuildFile; isa = PBXBuildFile;
@ -1657,7 +1651,6 @@
8EFFB6D4083302A500C53833, 8EFFB6D4083302A500C53833,
8EFFB6D5083302A500C53833, 8EFFB6D5083302A500C53833,
8EFFB6D6083302A500C53833, 8EFFB6D6083302A500C53833,
8E14E47B084CF1A200246BCC,
); );
isa = PBXCopyFilesBuildPhase; isa = PBXCopyFilesBuildPhase;
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;

View file

@ -255,18 +255,16 @@
<array> <array>
<string>29B97314FDCFA39411CA2CEA</string> <string>29B97314FDCFA39411CA2CEA</string>
<string>080E96DDFE201D6D7F000001</string> <string>080E96DDFE201D6D7F000001</string>
<string>8E267D080837F7A6004ACBC5</string>
<string>8E47215C08318D12001F89FA</string>
<string>8EF6FA64082DA525006F7BE6</string> <string>8EF6FA64082DA525006F7BE6</string>
<string>29B97323FDCFA39411CA2CEA</string>
<string>1C37FBAC04509CD000000102</string> <string>1C37FBAC04509CD000000102</string>
<string>8EFC6D17085376D100C67D06</string>
<string>1C37FABC05509CD000000102</string> <string>1C37FABC05509CD000000102</string>
</array> </array>
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key> <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array> <array>
<array> <array>
<integer>7</integer> <integer>7</integer>
<integer>3</integer> <integer>5</integer>
<integer>1</integer> <integer>1</integer>
<integer>0</integer> <integer>0</integer>
</array> </array>
@ -291,7 +289,7 @@
<real>186</real> <real>186</real>
</array> </array>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>1 122 1024 624 0 0 1024 746 </string> <string>2 122 1024 624 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXSmartGroupTreeModule</string> <string>PBXSmartGroupTreeModule</string>
@ -309,7 +307,7 @@
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>1CE0B20306471E060097A5F4</string> <string>1CE0B20306471E060097A5F4</string>
<key>PBXProjectModuleLabel</key> <key>PBXProjectModuleLabel</key>
<string>UpdateController.m</string> <string>AACFile.m</string>
<key>PBXSplitModuleInNavigatorKey</key> <key>PBXSplitModuleInNavigatorKey</key>
<dict> <dict>
<key>Split0</key> <key>Split0</key>
@ -317,18 +315,17 @@
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>1CE0B20406471E060097A5F4</string> <string>1CE0B20406471E060097A5F4</string>
<key>PBXProjectModuleLabel</key> <key>PBXProjectModuleLabel</key>
<string>UpdateController.m</string> <string>AACFile.m</string>
<key>_historyCapacity</key> <key>_historyCapacity</key>
<integer>0</integer> <integer>0</integer>
<key>bookmark</key> <key>bookmark</key>
<string>8E9E2E85084FA7E400599965</string> <string>8EFC6E1B085380B800C67D06</string>
<key>history</key> <key>history</key>
<array> <array>
<string>8EF6FACD082DAA2B006F7BE6</string> <string>8EF6FACD082DAA2B006F7BE6</string>
<string>8EF6FAD1082DAA2B006F7BE6</string> <string>8EF6FAD1082DAA2B006F7BE6</string>
<string>8E9BF100082FEF6B00B26943</string> <string>8E9BF100082FEF6B00B26943</string>
<string>8E267DDB0837FE5F004ACBC5</string> <string>8E267DDB0837FE5F004ACBC5</string>
<string>8E267E0008380176004ACBC5</string>
<string>8E1A1826083806B700AEA302</string> <string>8E1A1826083806B700AEA302</string>
<string>8E6082C7083920310017AECF</string> <string>8E6082C7083920310017AECF</string>
<string>8E25B5E5083CDD4A0064353E</string> <string>8E25B5E5083CDD4A0064353E</string>
@ -340,49 +337,49 @@
<string>8EC8FBD20842932A00DF2C98</string> <string>8EC8FBD20842932A00DF2C98</string>
<string>8EDC88A90842F8DE007D1532</string> <string>8EDC88A90842F8DE007D1532</string>
<string>8EDC88B50842F936007D1532</string> <string>8EDC88B50842F936007D1532</string>
<string>8E1BDA7908430E7700A08868</string>
<string>8ED833CD08457E6B0033CDBD</string> <string>8ED833CD08457E6B0033CDBD</string>
<string>8E6F2A2708480D900011F126</string> <string>8E6F2A2708480D900011F126</string>
<string>8E6F2A2808480D900011F126</string>
<string>8E10DC00084BBE490013815C</string> <string>8E10DC00084BBE490013815C</string>
<string>8E10DC01084BBE490013815C</string>
<string>8E10DC02084BBE490013815C</string> <string>8E10DC02084BBE490013815C</string>
<string>8E94D973084BE3D1007F0AEB</string>
<string>8E94D9D2084BEA32007F0AEB</string> <string>8E94D9D2084BEA32007F0AEB</string>
<string>8E94D9D3084BEA32007F0AEB</string> <string>8E94D9D3084BEA32007F0AEB</string>
<string>8E94DA67084BF01F007F0AEB</string>
<string>8E94DA68084BF01F007F0AEB</string>
<string>8E5A8EA4084CB19900AE6D62</string> <string>8E5A8EA4084CB19900AE6D62</string>
<string>8E5A9054084CB7FE00AE6D62</string>
<string>8E5A90B7084CC25900AE6D62</string> <string>8E5A90B7084CC25900AE6D62</string>
<string>8E5A90B8084CC25900AE6D62</string> <string>8E5A90B8084CC25900AE6D62</string>
<string>8EA0A215084CC43F008DFEC9</string> <string>8EA0A215084CC43F008DFEC9</string>
<string>8EA0A216084CC43F008DFEC9</string> <string>8EA0A216084CC43F008DFEC9</string>
<string>8EA0A217084CC43F008DFEC9</string>
<string>8EA0A218084CC43F008DFEC9</string>
<string>8EA0A21A084CC43F008DFEC9</string> <string>8EA0A21A084CC43F008DFEC9</string>
<string>8E14E4A5084D089100246BCC</string> <string>8E14E4A5084D089100246BCC</string>
<string>8E14E4A6084D089100246BCC</string>
<string>8E14E4A7084D089100246BCC</string>
<string>8E14E4AD084D089100246BCC</string>
<string>8E14E4B0084D089100246BCC</string>
<string>8E74C915084D451C00DF47F3</string>
<string>8E74C916084D451C00DF47F3</string> <string>8E74C916084D451C00DF47F3</string>
<string>8E74C919084D451C00DF47F3</string>
<string>8E74C91A084D451C00DF47F3</string>
<string>8E74C91B084D451C00DF47F3</string>
<string>8EC18D9D084E3D8200AE0BA9</string>
<string>8EC18D9E084E3D8200AE0BA9</string>
<string>8EC18D9F084E3D8200AE0BA9</string> <string>8EC18D9F084E3D8200AE0BA9</string>
<string>8EC18DDB084E403100AE0BA9</string>
<string>8EC18EA5084E55A800AE0BA9</string>
<string>8EC18EB8084E57D500AE0BA9</string>
<string>8EC7DA89084E672F00A079A7</string>
<string>8EC7DA8A084E672F00A079A7</string>
<string>8E9E2E7F084FA7E400599965</string>
<string>8E9E2E80084FA7E400599965</string>
<string>8E9E2E81084FA7E400599965</string> <string>8E9E2E81084FA7E400599965</string>
<string>8ED3C9B1084915CE00BB7797</string> <string>8EC156F4084FEB8900BB24E8</string>
<string>8EC156F5084FEB8900BB24E8</string>
<string>8E2752B70850A92E001618CD</string>
<string>8E2BC83D0850F56200BEAC36</string>
<string>8EE2A5B808511A1800367489</string>
<string>8EE2A5B908511A1800367489</string>
<string>8E72BC630851408F00E34F1D</string>
<string>8E72BC640851408F00E34F1D</string>
<string>8E72BC650851408F00E34F1D</string>
<string>8EFC6CC00853721700C67D06</string>
<string>8EFC6D18085376D100C67D06</string>
<string>8EFC6D1A085376D100C67D06</string>
<string>8EFC6DE7085380B800C67D06</string>
<string>8EFC6DE8085380B800C67D06</string>
<string>8EFC6DE9085380B800C67D06</string>
<string>8EFC6DEA085380B800C67D06</string>
<string>8EFC6DEB085380B800C67D06</string>
<string>8EFC6DEC085380B800C67D06</string>
<string>8EFC6DED085380B800C67D06</string>
<string>8EFC6DEE085380B800C67D06</string>
<string>8EFC6DEF085380B800C67D06</string>
<string>8EFC6DF0085380B800C67D06</string>
<string>8EFC6DF1085380B800C67D06</string>
<string>8EFC6DF2085380B800C67D06</string>
<string>8EFC6DF3085380B800C67D06</string>
<string>8EFC6DF4085380B800C67D06</string>
<string>8EFC6DF5085380B800C67D06</string>
</array> </array>
<key>prevStack</key> <key>prevStack</key>
<array> <array>
@ -442,12 +439,80 @@
<string>8E14E4B3084D089100246BCC</string> <string>8E14E4B3084D089100246BCC</string>
<string>8E14E4B4084D089100246BCC</string> <string>8E14E4B4084D089100246BCC</string>
<string>8E14E4B5084D089100246BCC</string> <string>8E14E4B5084D089100246BCC</string>
<string>8E14E4CB084D089100246BCC</string>
<string>8EC18EAA084E55A800AE0BA9</string>
<string>8EC18EBD084E57D500AE0BA9</string> <string>8EC18EBD084E57D500AE0BA9</string>
<string>8E9E2E82084FA7E400599965</string> <string>8EC156F9084FEB8900BB24E8</string>
<string>8E9E2E83084FA7E400599965</string> <string>8EFC6CC30853721700C67D06</string>
<string>8E9E2E84084FA7E400599965</string> <string>8EFC6CC40853721700C67D06</string>
<string>8EFC6CC50853721700C67D06</string>
<string>8EFC6CD5085372A800C67D06</string>
<string>8EFC6CD6085372A800C67D06</string>
<string>8EFC6D21085376D100C67D06</string>
<string>8EFC6D22085376D100C67D06</string>
<string>8EFC6D23085376D100C67D06</string>
<string>8EFC6D24085376D100C67D06</string>
<string>8EFC6D25085376D100C67D06</string>
<string>8EFC6D26085376D100C67D06</string>
<string>8EFC6D27085376D100C67D06</string>
<string>8EFC6D28085376D100C67D06</string>
<string>8EFC6D29085376D100C67D06</string>
<string>8EFC6D2A085376D100C67D06</string>
<string>8EFC6D2B085376D100C67D06</string>
<string>8EFC6D2C085376D100C67D06</string>
<string>8EFC6D2D085376D100C67D06</string>
<string>8EFC6D2E085376D100C67D06</string>
<string>8EFC6D2F085376D100C67D06</string>
<string>8EFC6D30085376D100C67D06</string>
<string>8EFC6D31085376D100C67D06</string>
<string>8EFC6D32085376D100C67D06</string>
<string>8EFC6D33085376D100C67D06</string>
<string>8EFC6D34085376D100C67D06</string>
<string>8EFC6D35085376D100C67D06</string>
<string>8EFC6D36085376D100C67D06</string>
<string>8EFC6D37085376D100C67D06</string>
<string>8EFC6D38085376D100C67D06</string>
<string>8EFC6D39085376D100C67D06</string>
<string>8EFC6D3A085376D100C67D06</string>
<string>8EFC6D3B085376D100C67D06</string>
<string>8EFC6D3C085376D100C67D06</string>
<string>8EFC6D3D085376D100C67D06</string>
<string>8EFC6D3E085376D100C67D06</string>
<string>8EFC6DF6085380B800C67D06</string>
<string>8EFC6DF7085380B800C67D06</string>
<string>8EFC6DF8085380B800C67D06</string>
<string>8EFC6DF9085380B800C67D06</string>
<string>8EFC6DFA085380B800C67D06</string>
<string>8EFC6DFB085380B800C67D06</string>
<string>8EFC6DFC085380B800C67D06</string>
<string>8EFC6DFD085380B800C67D06</string>
<string>8EFC6DFE085380B800C67D06</string>
<string>8EFC6DFF085380B800C67D06</string>
<string>8EFC6E00085380B800C67D06</string>
<string>8EFC6E01085380B800C67D06</string>
<string>8EFC6E02085380B800C67D06</string>
<string>8EFC6E03085380B800C67D06</string>
<string>8EFC6E04085380B800C67D06</string>
<string>8EFC6E05085380B800C67D06</string>
<string>8EFC6E06085380B800C67D06</string>
<string>8EFC6E07085380B800C67D06</string>
<string>8EFC6E08085380B800C67D06</string>
<string>8EFC6E09085380B800C67D06</string>
<string>8EFC6E0A085380B800C67D06</string>
<string>8EFC6E0B085380B800C67D06</string>
<string>8EFC6E0C085380B800C67D06</string>
<string>8EFC6E0D085380B800C67D06</string>
<string>8EFC6E0E085380B800C67D06</string>
<string>8EFC6E0F085380B800C67D06</string>
<string>8EFC6E10085380B800C67D06</string>
<string>8EFC6E11085380B800C67D06</string>
<string>8EFC6E12085380B800C67D06</string>
<string>8EFC6E13085380B800C67D06</string>
<string>8EFC6E14085380B800C67D06</string>
<string>8EFC6E15085380B800C67D06</string>
<string>8EFC6E16085380B800C67D06</string>
<string>8EFC6E17085380B800C67D06</string>
<string>8EFC6E18085380B800C67D06</string>
<string>8EFC6E19085380B800C67D06</string>
<string>8EFC6E1A085380B800C67D06</string>
</array> </array>
</dict> </dict>
<key>SplitCount</key> <key>SplitCount</key>
@ -461,7 +526,7 @@
<key>Frame</key> <key>Frame</key>
<string>{{0, 0}, {816, 404}}</string> <string>{{0, 0}, {816, 404}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>1 122 1024 624 0 0 1024 746 </string> <string>2 122 1024 624 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXNavigatorGroup</string> <string>PBXNavigatorGroup</string>
@ -481,7 +546,7 @@
<key>Frame</key> <key>Frame</key>
<string>{{0, 409}, {816, 174}}</string> <string>{{0, 409}, {816, 174}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>1 122 1024 624 0 0 1024 746 </string> <string>2 122 1024 624 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>XCDetailModule</string> <string>XCDetailModule</string>
@ -505,9 +570,9 @@
</array> </array>
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>8E9E2E86084FA7E400599965</string> <string>8EFC6CC70853721700C67D06</string>
<string>1CE0B1FE06471DED0097A5F4</string> <string>1CE0B1FE06471DED0097A5F4</string>
<string>8E9E2E87084FA7E400599965</string> <string>8EFC6CC80853721700C67D06</string>
<string>1CE0B20306471E060097A5F4</string> <string>1CE0B20306471E060097A5F4</string>
<string>1CE0B20506471E060097A5F4</string> <string>1CE0B20506471E060097A5F4</string>
</array> </array>
@ -642,10 +707,11 @@
<key>WindowOrderList</key> <key>WindowOrderList</key>
<array> <array>
<string>1C0AD2B3069F1EA900FABCE6</string> <string>1C0AD2B3069F1EA900FABCE6</string>
<string>8EF6FAA6082DA951006F7BE6</string>
<string>/Users/xugg/Projects/Cog/Cog.xcode</string> <string>/Users/xugg/Projects/Cog/Cog.xcode</string>
</array> </array>
<key>WindowString</key> <key>WindowString</key>
<string>1 122 1024 624 0 0 1024 746 </string> <string>2 122 1024 624 0 0 1024 746 </string>
<key>WindowTools</key> <key>WindowTools</key>
<array> <array>
<dict> <dict>
@ -661,14 +727,12 @@
<key>Dock</key> <key>Dock</key>
<array> <array>
<dict> <dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
<dict> <dict>
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>1CD0528F0623707200166675</string> <string>1CD0528F0623707200166675</string>
<key>PBXProjectModuleLabel</key> <key>PBXProjectModuleLabel</key>
<string>MusepackFile.m</string> <string>AACFile.m</string>
<key>StatusBarVisibility</key> <key>StatusBarVisibility</key>
<true/> <true/>
</dict> </dict>
@ -685,6 +749,8 @@
<string>342pt</string> <string>342pt</string>
</dict> </dict>
<dict> <dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
<dict> <dict>
<key>PBXBuildLogShowsTranscriptDefaultKey</key> <key>PBXBuildLogShowsTranscriptDefaultKey</key>
@ -726,7 +792,7 @@
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>8EF6FAA6082DA951006F7BE6</string> <string>8EF6FAA6082DA951006F7BE6</string>
<string>8E2BC808084F8A05004518D1</string> <string>8EFC6CE5085372F200C67D06</string>
<string>1CD0528F0623707200166675</string> <string>1CD0528F0623707200166675</string>
<string>XCMainBuildResultsModuleGUID</string> <string>XCMainBuildResultsModuleGUID</string>
</array> </array>
@ -1038,8 +1104,8 @@
<string>yes</string> <string>yes</string>
<key>sizes</key> <key>sizes</key>
<array> <array>
<string>{{0, 0}, {493, 168}}</string> <string>{{0, 0}, {367, 168}}</string>
<string>{{0, 173}, {493, 270}}</string> <string>{{0, 173}, {367, 270}}</string>
</array> </array>
</dict> </dict>
<key>VerticalSplitView</key> <key>VerticalSplitView</key>
@ -1065,7 +1131,7 @@
<key>Frame</key> <key>Frame</key>
<string>{{0, 0}, {1024, 583}}</string> <string>{{0, 0}, {1024, 583}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>0 123 1024 623 0 0 1024 746 </string> <string>4 123 1024 623 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXRunSessionModule</string> <string>PBXRunSessionModule</string>
@ -1088,14 +1154,14 @@
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>1C0AD2B3069F1EA900FABCE6</string> <string>1C0AD2B3069F1EA900FABCE6</string>
<string>8E9E2E7D084FA1E200599965</string> <string>8EFC6CFB0853745400C67D06</string>
<string>1CD0528B0623707200166675</string> <string>1CD0528B0623707200166675</string>
<string>8E9E2E7E084FA1E200599965</string> <string>8EFC6CFC0853745400C67D06</string>
</array> </array>
<key>ToolbarConfiguration</key> <key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.run</string> <string>xcode.toolbar.config.run</string>
<key>WindowString</key> <key>WindowString</key>
<string>0 123 1024 623 0 0 1024 746 </string> <string>4 123 1024 623 0 0 1024 746 </string>
<key>WindowToolGUID</key> <key>WindowToolGUID</key>
<string>1C0AD2B3069F1EA900FABCE6</string> <string>1C0AD2B3069F1EA900FABCE6</string>
<key>WindowToolIsVisible</key> <key>WindowToolIsVisible</key>

File diff suppressed because it is too large Load diff

View file

@ -12,9 +12,18 @@
CLASS = AppController; CLASS = AppController;
LANGUAGE = ObjC; LANGUAGE = ObjC;
OUTLETS = { OUTLETS = {
addButton = NSButton;
infoButton = NSButton;
infoPanel = NSPanel; infoPanel = NSPanel;
mainWindow = NSWindow; mainWindow = NSWindow;
nextButton = NSButton;
playButton = NSButton;
playlistController = PlaylistController; playlistController = PlaylistController;
prevButton = NSButton;
remButton = NSButton;
repeatButton = NSButton;
shuffleButton = NSButton;
stopButton = NSButton;
}; };
SUPERCLASS = NSObject; SUPERCLASS = NSObject;
}, },

View file

@ -13,8 +13,8 @@
<string>437.0</string> <string>437.0</string>
<key>IBOpenObjects</key> <key>IBOpenObjects</key>
<array> <array>
<integer>21</integer>
<integer>29</integer> <integer>29</integer>
<integer>21</integer>
</array> </array>
<key>IBSystem Version</key> <key>IBSystem Version</key>
<string>8B15</string> <string>8B15</string>

Binary file not shown.

View file

@ -23,7 +23,11 @@
- (void)alertDidEnd:(NSAlert *)alert returnCode:(int)returnCode contextInfo:(void *)contextInfo - (void)alertDidEnd:(NSAlert *)alert returnCode:(int)returnCode contextInfo:(void *)contextInfo
{ {
[feedbackWindow close]; NSLog(@"CONTEXT: %i", contextInfo);
if (contextInfo == YES)
{
[feedbackWindow close];
}
} }
- (void)FeedbackErrorOccurred:(NSNotification *)aNotification - (void)FeedbackErrorOccurred:(NSNotification *)aNotification
@ -36,7 +40,7 @@
[alert setMessageText:@"Failed"]; [alert setMessageText:@"Failed"];
[alert setInformativeText:@"Feedback failed to send."]; [alert setInformativeText:@"Feedback failed to send."];
[alert beginSheetModalForWindow:feedbackWindow modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:NULL]; [alert beginSheetModalForWindow:feedbackWindow modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:NO];
} }
- (void)FeedbackSent:(NSNotification *)aNotification - (void)FeedbackSent:(NSNotification *)aNotification
@ -49,7 +53,7 @@
[alert setMessageText:@"Success"]; [alert setMessageText:@"Success"];
[alert setInformativeText:@"Feedback successfully sent!"]; [alert setInformativeText:@"Feedback successfully sent!"];
[alert beginSheetModalForWindow:feedbackWindow modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:NULL]; [alert beginSheetModalForWindow:feedbackWindow modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:YES];
} }

View file

@ -42,7 +42,7 @@ NSString *encodeForURL(NSString *s)
NSURLResponse* response; NSURLResponse* response;
NSData* resultData = [NSURLConnection sendSynchronousRequest:post returningResponse:&response error:&error]; NSData* resultData = [NSURLConnection sendSynchronousRequest:post returningResponse:&response error:&error];
NSString *resultString = [[[NSString alloc] initWithData:resultData encoding:NSASCIIStringEncoding] autorelease]; NSString *resultString = [[[NSString alloc] initWithData:resultData encoding:NSASCIIStringEncoding] autorelease];
NSLog(@"RESULT: %@", resultString);
if ([resultString caseInsensitiveCompare:@"SUCCESS"] == NSOrderedSame) if ([resultString caseInsensitiveCompare:@"SUCCESS"] == NSOrderedSame)
{ {
[self performSelectorOnMainThread:@selector(returnSuccess:) withObject:nil waitUntilDone:NO]; [self performSelectorOnMainThread:@selector(returnSuccess:) withObject:nil waitUntilDone:NO];

View file

@ -42,6 +42,7 @@
}; };
0867D691FE84028FC02AAC07 = { 0867D691FE84028FC02AAC07 = {
children = ( children = (
8E64758F08536C4B007B91CB,
8E3852DB084CEC6A00D715B8, 8E3852DB084CEC6A00D715B8,
08FB77ACFE841707C02AAC07, 08FB77ACFE841707C02AAC07,
089C1665FE841158C02AAC07, 089C1665FE841158C02AAC07,
@ -243,7 +244,7 @@
GCC_OPTIMIZATION_LEVEL = 3; GCC_OPTIMIZATION_LEVEL = 3;
GCC_PRECOMPILE_PREFIX_HEADER = NO; GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_PREFIX_HEADER = ""; GCC_PREFIX_HEADER = "";
HEADER_SEARCH_PATHS = Files/libfaad/; HEADER_SEARCH_PATHS = "Files/libfaad/ Files/common/faad";
INFOPLIST_FILE = Info.plist; INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@executable_path/../Frameworks"; INSTALL_PATH = "@executable_path/../Frameworks";
LIBRARY_STYLE = DYNAMIC; LIBRARY_STYLE = DYNAMIC;
@ -327,6 +328,7 @@
8E3852DF084CEC7B00D715B8, 8E3852DF084CEC7B00D715B8,
8E3852E0084CEC7B00D715B8, 8E3852E0084CEC7B00D715B8,
8E3852ED084CED5500D715B8, 8E3852ED084CED5500D715B8,
8EFC6C1E08536C9D00C67D06,
); );
isa = PBXHeadersBuildPhase; isa = PBXHeadersBuildPhase;
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
@ -386,6 +388,7 @@
8E3852D3084CEC6200D715B8, 8E3852D3084CEC6200D715B8,
8E3852D6084CEC6200D715B8, 8E3852D6084CEC6200D715B8,
8E3852D8084CEC6200D715B8, 8E3852D8084CEC6200D715B8,
8EFC6C1D08536C9D00C67D06,
); );
isa = PBXSourcesBuildPhase; isa = PBXSourcesBuildPhase;
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
@ -1986,6 +1989,238 @@
settings = { settings = {
}; };
}; };
8E64758F08536C4B007B91CB = {
children = (
8EFC6BFF08536C9D00C67D06,
8EFC6C0808536C9D00C67D06,
);
isa = PBXGroup;
name = Common;
refType = 4;
sourceTree = "<group>";
};
8EFC6BFF08536C9D00C67D06 = {
children = (
8EFC6C0008536C9D00C67D06,
8EFC6C0108536C9D00C67D06,
8EFC6C0208536C9D00C67D06,
8EFC6C0308536C9D00C67D06,
8EFC6C0408536C9D00C67D06,
8EFC6C0508536C9D00C67D06,
8EFC6C0608536C9D00C67D06,
8EFC6C0708536C9D00C67D06,
);
isa = PBXGroup;
name = faad;
path = Files/common/faad;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0008536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = aacinfo.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0108536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = aacinfo.h;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0208536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = filestream.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0308536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = filestream.h;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0408536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = getopt.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0508536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = getopt.h;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0608536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = id3v2tag.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0708536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = id3v2tag.h;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0808536C9D00C67D06 = {
children = (
8EFC6C0908536C9D00C67D06,
8EFC6C1108536C9D00C67D06,
8EFC6C1208536C9D00C67D06,
8EFC6C1308536C9D00C67D06,
8EFC6C1408536C9D00C67D06,
8EFC6C1508536C9D00C67D06,
8EFC6C1608536C9D00C67D06,
8EFC6C1708536C9D00C67D06,
8EFC6C1808536C9D00C67D06,
8EFC6C1908536C9D00C67D06,
8EFC6C1A08536C9D00C67D06,
8EFC6C1B08536C9D00C67D06,
8EFC6C1C08536C9D00C67D06,
);
isa = PBXGroup;
name = mp4ff;
path = Files/common/mp4ff;
refType = 4;
sourceTree = "<group>";
};
8EFC6C0908536C9D00C67D06 = {
children = (
);
isa = PBXGroup;
path = .deps;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1108536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = drms.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1208536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = drms.h;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1308536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = drmstables.h;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1408536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = mp4atom.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1508536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = mp4ff.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1608536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = mp4ff.h;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1708536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = mp4ff_int_types.h;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1808536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = mp4ffint.h;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1908536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = mp4meta.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1A08536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = mp4sample.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1B08536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = mp4tagupdate.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1C08536C9D00C67D06 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
path = mp4util.c;
refType = 4;
sourceTree = "<group>";
};
8EFC6C1D08536C9D00C67D06 = {
fileRef = 8EFC6C0008536C9D00C67D06;
isa = PBXBuildFile;
settings = {
};
};
8EFC6C1E08536C9D00C67D06 = {
fileRef = 8EFC6C0108536C9D00C67D06;
isa = PBXBuildFile;
settings = {
ATTRIBUTES = (
Public,
);
};
};
}; };
rootObject = 0867D690FE84028FC02AAC07; rootObject = 0867D690FE84028FC02AAC07;
} }

View file

@ -166,7 +166,7 @@
<key>FavBarConfig</key> <key>FavBarConfig</key>
<dict> <dict>
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>8E3852EB084CECAD00D715B8</string> <string>8EFC6C4708536D2500C67D06</string>
<key>XCBarModuleItemNames</key> <key>XCBarModuleItemNames</key>
<dict/> <dict/>
<key>XCBarModuleItems</key> <key>XCBarModuleItems</key>
@ -254,19 +254,22 @@
<key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key> <key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
<array> <array>
<string>0867D691FE84028FC02AAC07</string> <string>0867D691FE84028FC02AAC07</string>
<string>034768DDFF38A45A11DB9C8B</string> <string>8E64758F08536C4B007B91CB</string>
<string>8D07F2C80486CC7A007CD1D0</string> <string>8EFC6BFF08536C9D00C67D06</string>
<string>1C37FBAC04509CD000000102</string> <string>1C37FBAC04509CD000000102</string>
<string>1C37FABC05509CD000000102</string> <string>1C37FABC05509CD000000102</string>
</array> </array>
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key> <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array> <array>
<array> <array>
<integer>3</integer>
<integer>2</integer>
<integer>1</integer>
<integer>0</integer> <integer>0</integer>
</array> </array>
</array> </array>
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key> <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
<string>{{0, 0}, {186, 338}}</string> <string>{{0, 0}, {186, 567}}</string>
</dict> </dict>
<key>PBXTopSmartGroupGIDs</key> <key>PBXTopSmartGroupGIDs</key>
<array/> <array/>
@ -278,14 +281,14 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 0}, {203, 356}}</string> <string>{{0, 0}, {203, 585}}</string>
<key>GroupTreeTableConfiguration</key> <key>GroupTreeTableConfiguration</key>
<array> <array>
<string>MainColumn</string> <string>MainColumn</string>
<real>186</real> <real>186</real>
</array> </array>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>167 339 690 397 0 0 1024 746 </string> <string>-1 120 1024 626 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXSmartGroupTreeModule</string> <string>PBXSmartGroupTreeModule</string>
@ -296,12 +299,14 @@
<key>Dock</key> <key>Dock</key>
<array> <array>
<dict> <dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
<dict> <dict>
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>1CE0B20306471E060097A5F4</string> <string>1CE0B20306471E060097A5F4</string>
<key>PBXProjectModuleLabel</key> <key>PBXProjectModuleLabel</key>
<string>MyNewFile14.java</string> <string>aacinfo.c</string>
<key>PBXSplitModuleInNavigatorKey</key> <key>PBXSplitModuleInNavigatorKey</key>
<dict> <dict>
<key>Split0</key> <key>Split0</key>
@ -309,7 +314,25 @@
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>1CE0B20406471E060097A5F4</string> <string>1CE0B20406471E060097A5F4</string>
<key>PBXProjectModuleLabel</key> <key>PBXProjectModuleLabel</key>
<string>MyNewFile14.java</string> <string>aacinfo.c</string>
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
<string>8EFC6D8908537AB900C67D06</string>
<key>history</key>
<array>
<string>8EFC6C7308536F3A00C67D06</string>
<string>8EFC6D6F08537A5300C67D06</string>
<string>8EFC6D7008537A5300C67D06</string>
<string>8EFC6D7908537A5300C67D06</string>
</array>
<key>prevStack</key>
<array>
<string>8EFC6C4208536D2500C67D06</string>
<string>8EFC6C4308536D2500C67D06</string>
<string>8EFC6C7708536F3A00C67D06</string>
<string>8EFC6D7308537A5300C67D06</string>
</array>
</dict> </dict>
<key>SplitCount</key> <key>SplitCount</key>
<string>1</string> <string>1</string>
@ -320,18 +343,16 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 0}, {482, 0}}</string> <string>{{0, 0}, {816, 406}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>167 339 690 397 0 0 1024 746 </string> <string>-1 120 1024 626 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXNavigatorGroup</string> <string>PBXNavigatorGroup</string>
<key>Proportion</key> <key>Proportion</key>
<string>0pt</string> <string>406pt</string>
</dict> </dict>
<dict> <dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
<dict> <dict>
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
@ -342,18 +363,18 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 5}, {482, 351}}</string> <string>{{0, 411}, {816, 174}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>167 339 690 397 0 0 1024 746 </string> <string>-1 120 1024 626 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>XCDetailModule</string> <string>XCDetailModule</string>
<key>Proportion</key> <key>Proportion</key>
<string>351pt</string> <string>174pt</string>
</dict> </dict>
</array> </array>
<key>Proportion</key> <key>Proportion</key>
<string>482pt</string> <string>816pt</string>
</dict> </dict>
</array> </array>
<key>Name</key> <key>Name</key>
@ -368,9 +389,9 @@
</array> </array>
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>8ED1CC1B084F86C700771E1E</string> <string>8EFC6D8A08537AB900C67D06</string>
<string>1CE0B1FE06471DED0097A5F4</string> <string>1CE0B1FE06471DED0097A5F4</string>
<string>8ED1CC1C084F86C700771E1E</string> <string>8EFC6D8B08537AB900C67D06</string>
<string>1CE0B20306471E060097A5F4</string> <string>1CE0B20306471E060097A5F4</string>
<string>1CE0B20506471E060097A5F4</string> <string>1CE0B20506471E060097A5F4</string>
</array> </array>
@ -507,7 +528,7 @@
<string>/Users/xugg/Projects/Cog/Libraries/FAAD2/FAAD2.xcode</string> <string>/Users/xugg/Projects/Cog/Libraries/FAAD2/FAAD2.xcode</string>
</array> </array>
<key>WindowString</key> <key>WindowString</key>
<string>167 339 690 397 0 0 1024 746 </string> <string>-1 120 1024 626 0 0 1024 746 </string>
<key>WindowTools</key> <key>WindowTools</key>
<array> <array>
<dict> <dict>
@ -523,30 +544,30 @@
<key>Dock</key> <key>Dock</key>
<array> <array>
<dict> <dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
<dict> <dict>
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>1CD0528F0623707200166675</string> <string>1CD0528F0623707200166675</string>
<key>PBXProjectModuleLabel</key> <key>PBXProjectModuleLabel</key>
<string>huffman.c</string> <string>mp4ff.c</string>
<key>StatusBarVisibility</key> <key>StatusBarVisibility</key>
<true/> <true/>
</dict> </dict>
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 0}, {1024, 343}}</string> <string>{{0, 0}, {500, 218}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>0 121 1024 625 0 0 1024 746 </string> <string>31 223 500 500 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXNavigatorGroup</string> <string>PBXNavigatorGroup</string>
<key>Proportion</key> <key>Proportion</key>
<string>343pt</string> <string>218pt</string>
</dict> </dict>
<dict> <dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
<dict> <dict>
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
@ -561,9 +582,9 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 348}, {1024, 236}}</string> <string>{{0, 223}, {500, 236}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>0 121 1024 625 0 0 1024 746 </string> <string>31 223 500 500 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXBuildResultsModule</string> <string>PBXBuildResultsModule</string>
@ -572,7 +593,7 @@
</dict> </dict>
</array> </array>
<key>Proportion</key> <key>Proportion</key>
<string>584pt</string> <string>459pt</string>
</dict> </dict>
</array> </array>
<key>Name</key> <key>Name</key>
@ -585,17 +606,17 @@
<true/> <true/>
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>8E3852E7084CECAC00D715B8</string> <string>8EFC6C5508536DA800C67D06</string>
<string>8E45D7BA084E82EF00867D39</string> <string>8EFC6C5608536DA800C67D06</string>
<string>1CD0528F0623707200166675</string> <string>1CD0528F0623707200166675</string>
<string>XCMainBuildResultsModuleGUID</string> <string>XCMainBuildResultsModuleGUID</string>
</array> </array>
<key>ToolbarConfiguration</key> <key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.build</string> <string>xcode.toolbar.config.build</string>
<key>WindowString</key> <key>WindowString</key>
<string>0 121 1024 625 0 0 1024 746 </string> <string>31 223 500 500 0 0 1024 746 </string>
<key>WindowToolGUID</key> <key>WindowToolGUID</key>
<string>8E3852E7084CECAC00D715B8</string> <string>8EFC6C5508536DA800C67D06</string>
<key>WindowToolIsVisible</key> <key>WindowToolIsVisible</key>
<false/> <false/>
</dict> </dict>
@ -702,12 +723,8 @@
<integer>0</integer> <integer>0</integer>
</dict> </dict>
<dict> <dict>
<key>FirstTimeWindowDisplayed</key>
<false/>
<key>Identifier</key> <key>Identifier</key>
<string>windowTool.find</string> <string>windowTool.find</string>
<key>IsVertical</key>
<true/>
<key>Layout</key> <key>Layout</key>
<array> <array>
<dict> <dict>
@ -722,16 +739,26 @@
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>1CDD528C0622207200134675</string> <string>1CDD528C0622207200134675</string>
<key>PBXProjectModuleLabel</key> <key>PBXProjectModuleLabel</key>
<string></string> <string>&lt;No Editor&gt;</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
<dict>
<key>PBXProjectModuleGUID</key>
<string>1CD0528D0623707200166675</string>
</dict>
<key>SplitCount</key>
<string>1</string>
</dict>
<key>StatusBarVisibility</key> <key>StatusBarVisibility</key>
<true/> <integer>1</integer>
</dict> </dict>
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 0}, {781, 212}}</string> <string>{{0, 0}, {781, 167}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>188 243 781 470 0 0 1024 746 </string> <string>62 385 781 470 0 0 1440 878 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXNavigatorGroup</string> <string>PBXNavigatorGroup</string>
@ -740,9 +767,11 @@
</dict> </dict>
</array> </array>
<key>Proportion</key> <key>Proportion</key>
<string>212pt</string> <string>50%</string>
</dict> </dict>
<dict> <dict>
<key>BecomeActive</key>
<integer>1</integer>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
<dict> <dict>
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
@ -753,18 +782,18 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 217}, {781, 212}}</string> <string>{{8, 0}, {773, 254}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>188 243 781 470 0 0 1024 746 </string> <string>62 385 781 470 0 0 1440 878 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXProjectFindModule</string> <string>PBXProjectFindModule</string>
<key>Proportion</key> <key>Proportion</key>
<string>212pt</string> <string>50%</string>
</dict> </dict>
</array> </array>
<key>Proportion</key> <key>Proportion</key>
<string>429pt</string> <string>428pt</string>
</dict> </dict>
</array> </array>
<key>Name</key> <key>Name</key>
@ -774,21 +803,23 @@
<string>PBXProjectFindModule</string> <string>PBXProjectFindModule</string>
</array> </array>
<key>StatusbarIsVisible</key> <key>StatusbarIsVisible</key>
<true/> <integer>1</integer>
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>1C530D57069F1CE1000CFCEE</string> <string>1C530D57069F1CE1000CFCEE</string>
<string>8E146003084CEE5800DB7064</string> <string>1C530D58069F1CE1000CFCEE</string>
<string>8E146004084CEE5800DB7064</string> <string>1C530D59069F1CE1000CFCEE</string>
<string>1CDD528C0622207200134675</string> <string>1CDD528C0622207200134675</string>
<string>1C530D5A069F1CE1000CFCEE</string>
<string>1CE0B1FE06471DED0097A5F4</string>
<string>1CD0528E0623707200166675</string> <string>1CD0528E0623707200166675</string>
</array> </array>
<key>WindowString</key> <key>WindowString</key>
<string>188 243 781 470 0 0 1024 746 </string> <string>62 385 781 470 0 0 1440 878 </string>
<key>WindowToolGUID</key> <key>WindowToolGUID</key>
<string>1C530D57069F1CE1000CFCEE</string> <string>1C530D57069F1CE1000CFCEE</string>
<key>WindowToolIsVisible</key> <key>WindowToolIsVisible</key>
<false/> <integer>0</integer>
</dict> </dict>
<dict> <dict>
<key>Identifier</key> <key>Identifier</key>
@ -847,8 +878,12 @@
<string>650 41 440 400 0 0 1280 1002 </string> <string>650 41 440 400 0 0 1280 1002 </string>
</dict> </dict>
<dict> <dict>
<key>FirstTimeWindowDisplayed</key>
<false/>
<key>Identifier</key> <key>Identifier</key>
<string>windowTool.run</string> <string>windowTool.run</string>
<key>IsVertical</key>
<true/>
<key>Layout</key> <key>Layout</key>
<array> <array>
<dict> <dict>
@ -877,8 +912,8 @@
<string>yes</string> <string>yes</string>
<key>sizes</key> <key>sizes</key>
<array> <array>
<string>{{0, 0}, {493, 167}}</string> <string>{{0, 0}, {493, 168}}</string>
<string>{{0, 176}, {493, 267}}</string> <string>{{0, 173}, {493, 270}}</string>
</array> </array>
</dict> </dict>
<key>VerticalSplitView</key> <key>VerticalSplitView</key>
@ -893,8 +928,8 @@
<string>yes</string> <string>yes</string>
<key>sizes</key> <key>sizes</key>
<array> <array>
<string>{{0, 0}, {405, 443}}</string> <string>{{0, 0}, {406, 443}}</string>
<string>{{414, 0}, {514, 443}}</string> <string>{{411, 0}, {517, 443}}</string>
</array> </array>
</dict> </dict>
</dict> </dict>
@ -902,9 +937,9 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 0}, {460, 159}}</string> <string>{{0, 0}, {459, 159}}</string>
<key>RubberWindowFrame</key> <key>RubberWindowFrame</key>
<string>316 696 459 200 0 0 1280 1002 </string> <string>41 523 459 200 0 0 1024 746 </string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXRunSessionModule</string> <string>PBXRunSessionModule</string>
@ -923,22 +958,22 @@
<string>PBXRunSessionModule</string> <string>PBXRunSessionModule</string>
</array> </array>
<key>StatusbarIsVisible</key> <key>StatusbarIsVisible</key>
<integer>1</integer> <true/>
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>1C0AD2B3069F1EA900FABCE6</string> <string>1C0AD2B3069F1EA900FABCE6</string>
<string>1C0AD2B4069F1EA900FABCE6</string> <string>8EFC6C7108536F2C00C67D06</string>
<string>1CD0528B0623707200166675</string> <string>1CD0528B0623707200166675</string>
<string>1C0AD2B5069F1EA900FABCE6</string> <string>8EFC6C7208536F2C00C67D06</string>
</array> </array>
<key>ToolbarConfiguration</key> <key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.run</string> <string>xcode.toolbar.config.run</string>
<key>WindowString</key> <key>WindowString</key>
<string>316 696 459 200 0 0 1280 1002 </string> <string>41 523 459 200 0 0 1024 746 </string>
<key>WindowToolGUID</key> <key>WindowToolGUID</key>
<string>1C0AD2B3069F1EA900FABCE6</string> <string>1C0AD2B3069F1EA900FABCE6</string>
<key>WindowToolIsVisible</key> <key>WindowToolIsVisible</key>
<integer>0</integer> <false/>
</dict> </dict>
<dict> <dict>
<key>Identifier</key> <key>Identifier</key>

View file

@ -1,19 +1,21 @@
// !$*UTF8*$! // !$*UTF8*$!
{ {
0867D690FE84028FC02AAC07 = { 0867D690FE84028FC02AAC07 = {
activeBuildStyle = 4F0BB7ED011F40E904CA0E50; activeBuildStyle = 4F0BB7EC011F40E904CA0E50;
activeTarget = 8D07F2BC0486CC7A007CD1D0; activeTarget = 8D07F2BC0486CC7A007CD1D0;
addToTargets = ( addToTargets = (
8D07F2BC0486CC7A007CD1D0, 8D07F2BC0486CC7A007CD1D0,
); );
codeSenseManager = 8E3851F6084CEC2000D715B8; breakpoints = (
);
codeSenseManager = 8EFC6C3908536C9D00C67D06;
perUserDictionary = { perUserDictionary = {
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = ( PBXFileTableDataSourceColumnWidthsKey = (
20, 20,
243, 577,
20, 20,
48, 48,
43, 43,
@ -52,17 +54,57 @@
PBXFileDataSource_Warnings_ColumnID, PBXFileDataSource_Warnings_ColumnID,
); );
}; };
PBXPerProjectTemplateStateSaveDate = 139429230; PBXPerProjectTemplateStateSaveDate = 139688536;
PBXWorkspaceStateSaveDate = 139429230; 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 = { userBuildSettings = {
}; };
}; };
8D07F2BC0486CC7A007CD1D0 = { 8D07F2BC0486CC7A007CD1D0 = {
activeExec = 0; 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; fallbackIsa = XCSourceControlManager;
isSCMEnabled = 0; isSCMEnabled = 0;
isa = PBXSourceControlManager; isa = PBXSourceControlManager;
@ -70,29 +112,98 @@
}; };
scmType = ""; scmType = "";
}; };
8E3851F6084CEC2000D715B8 = { 8EFC6C3908536C9D00C67D06 = {
indexTemplatePath = ""; indexTemplatePath = "";
isa = PBXCodeSenseManager; isa = PBXCodeSenseManager;
}; };
8E3851FC084CEC6100D715B8 = { 8EFC6C4208536D2500C67D06 = {
uiCtxt = { fRef = 8EFC6C0008536C9D00C67D06;
sepNavIntBoundsRect = "{{0, 0}, {983, 2996}}"; isa = PBXTextBookmark;
sepNavSelRange = "{1209, 0}"; name = "aacinfo.c: read_ADTS_header";
sepNavVisRect = "{{0, 272}, {983, 311}}"; rLen = 0;
}; rLoc = 2624;
rType = 0;
vrLen = 254;
vrLoc = 9592;
}; };
8E385210084CEC6100D715B8 = { 8EFC6C4308536D2500C67D06 = {
uiCtxt = { fRef = 8EFC6C0108536C9D00C67D06;
sepNavIntBoundsRect = "{{0, 0}, {983, 5964}}"; isa = PBXTextBookmark;
sepNavSelRange = "{1253, 13}"; name = "aacinfo.h: 20";
sepNavVisRect = "{{0, 291}, {983, 311}}"; rLen = 0;
}; rLoc = 961;
rType = 0;
vrLen = 1250;
vrLoc = 658;
}; };
8E38521D084CEC6100D715B8 = { 8EFC6C7308536F3A00C67D06 = {
uiCtxt = { fRef = 8EFC6C0308536C9D00C67D06;
sepNavIntBoundsRect = "{{0, 0}, {983, 7798}}"; isa = PBXTextBookmark;
sepNavSelRange = "{8543, 47}"; name = "filestream.h: 57";
sepNavVisRect = "{{0, 4192}, {983, 311}}"; 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;
}; };
} }

View file

@ -218,6 +218,8 @@
<key>Layout</key> <key>Layout</key>
<array> <array>
<dict> <dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
<dict> <dict>
<key>PBXBottomSmartGroupGIDs</key> <key>PBXBottomSmartGroupGIDs</key>
@ -263,12 +265,11 @@
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key> <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array> <array>
<array> <array>
<integer>69</integer> <integer>0</integer>
<integer>68</integer>
</array> </array>
</array> </array>
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key> <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
<string>{{0, 760}, {231, 566}}</string> <string>{{0, 0}, {231, 566}}</string>
</dict> </dict>
<key>PBXTopSmartGroupGIDs</key> <key>PBXTopSmartGroupGIDs</key>
<array/> <array/>
@ -315,7 +316,7 @@
<key>_historyCapacity</key> <key>_historyCapacity</key>
<integer>0</integer> <integer>0</integer>
<key>bookmark</key> <key>bookmark</key>
<string>8E2BC800084F898E004518D1</string> <string>8EFC6BF608536C8300C67D06</string>
<key>history</key> <key>history</key>
<array> <array>
<string>8EEBC7F2084F5C3C009FE5BE</string> <string>8EEBC7F2084F5C3C009FE5BE</string>
@ -338,7 +339,7 @@
<string>8E2BC7F7084F898E004518D1</string> <string>8E2BC7F7084F898E004518D1</string>
<string>8E2BC7F8084F898E004518D1</string> <string>8E2BC7F8084F898E004518D1</string>
<string>8E2BC7F9084F898E004518D1</string> <string>8E2BC7F9084F898E004518D1</string>
<string>8E65785D084F5EDB00F28C07</string> <string>8E2BC800084F898E004518D1</string>
</array> </array>
<key>prevStack</key> <key>prevStack</key>
<array> <array>
@ -363,9 +364,6 @@
<string>8E2BC7FA084F898E004518D1</string> <string>8E2BC7FA084F898E004518D1</string>
<string>8E2BC7FB084F898E004518D1</string> <string>8E2BC7FB084F898E004518D1</string>
<string>8E2BC7FC084F898E004518D1</string> <string>8E2BC7FC084F898E004518D1</string>
<string>8E2BC7FD084F898E004518D1</string>
<string>8E2BC7FE084F898E004518D1</string>
<string>8E2BC7FF084F898E004518D1</string>
</array> </array>
</dict> </dict>
<key>SplitCount</key> <key>SplitCount</key>
@ -387,8 +385,6 @@
<string>109pt</string> <string>109pt</string>
</dict> </dict>
<dict> <dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
<dict> <dict>
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
@ -425,9 +421,9 @@
</array> </array>
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>8E2BC801084F898E004518D1</string> <string>8EFC6BF708536C8300C67D06</string>
<string>1CE0B1FE06471DED0097A5F4</string> <string>1CE0B1FE06471DED0097A5F4</string>
<string>8E2BC802084F898E004518D1</string> <string>8EFC6BF808536C8300C67D06</string>
<string>1CE0B20306471E060097A5F4</string> <string>1CE0B20306471E060097A5F4</string>
<string>1CE0B20506471E060097A5F4</string> <string>1CE0B20506471E060097A5F4</string>
</array> </array>

View file

@ -80,8 +80,8 @@
PBXFileDataSource_Warnings_ColumnID, PBXFileDataSource_Warnings_ColumnID,
); );
}; };
PBXPerProjectTemplateStateSaveDate = 139430228; PBXPerProjectTemplateStateSaveDate = 139684956;
PBXWorkspaceStateSaveDate = 139430228; PBXWorkspaceStateSaveDate = 139684956;
}; };
perUserProjectItems = { perUserProjectItems = {
8E2BC7F4084F898E004518D1 = 8E2BC7F4084F898E004518D1; 8E2BC7F4084F898E004518D1 = 8E2BC7F4084F898E004518D1;
@ -93,11 +93,7 @@
8E2BC7FA084F898E004518D1 = 8E2BC7FA084F898E004518D1; 8E2BC7FA084F898E004518D1 = 8E2BC7FA084F898E004518D1;
8E2BC7FB084F898E004518D1 = 8E2BC7FB084F898E004518D1; 8E2BC7FB084F898E004518D1 = 8E2BC7FB084F898E004518D1;
8E2BC7FC084F898E004518D1 = 8E2BC7FC084F898E004518D1; 8E2BC7FC084F898E004518D1 = 8E2BC7FC084F898E004518D1;
8E2BC7FD084F898E004518D1 = 8E2BC7FD084F898E004518D1;
8E2BC7FE084F898E004518D1 = 8E2BC7FE084F898E004518D1;
8E2BC7FF084F898E004518D1 = 8E2BC7FF084F898E004518D1;
8E2BC800084F898E004518D1 = 8E2BC800084F898E004518D1; 8E2BC800084F898E004518D1 = 8E2BC800084F898E004518D1;
8E65785D084F5EDB00F28C07 = 8E65785D084F5EDB00F28C07;
8E65785E084F5EDB00F28C07 = 8E65785E084F5EDB00F28C07; 8E65785E084F5EDB00F28C07 = 8E65785E084F5EDB00F28C07;
8E65785F084F5EDB00F28C07 = 8E65785F084F5EDB00F28C07; 8E65785F084F5EDB00F28C07 = 8E65785F084F5EDB00F28C07;
8E657860084F5EDB00F28C07 = 8E657860084F5EDB00F28C07; 8E657860084F5EDB00F28C07 = 8E657860084F5EDB00F28C07;
@ -130,6 +126,7 @@
8EEBC7FE084F5C3C009FE5BE = 8EEBC7FE084F5C3C009FE5BE; 8EEBC7FE084F5C3C009FE5BE = 8EEBC7FE084F5C3C009FE5BE;
8EEBC7FF084F5C3C009FE5BE = 8EEBC7FF084F5C3C009FE5BE; 8EEBC7FF084F5C3C009FE5BE = 8EEBC7FF084F5C3C009FE5BE;
8EEBC800084F5C3C009FE5BE = 8EEBC800084F5C3C009FE5BE; 8EEBC800084F5C3C009FE5BE = 8EEBC800084F5C3C009FE5BE;
8EFC6BF608536C8300C67D06 = 8EFC6BF608536C8300C67D06;
}; };
sourceControlManager = 8E4DD23C082DCA1B004B6830; sourceControlManager = 8E4DD23C082DCA1B004B6830;
userBuildSettings = { userBuildSettings = {
@ -228,36 +225,6 @@
vrLen = 195; vrLen = 195;
vrLoc = 0; 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 = { 8E2BC800084F898E004518D1 = {
fRef = 8EEBC788084F5B30009FE5BE; fRef = 8EEBC788084F5B30009FE5BE;
isa = PBXTextBookmark; isa = PBXTextBookmark;
@ -280,16 +247,6 @@
indexTemplatePath = ""; indexTemplatePath = "";
isa = PBXCodeSenseManager; 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 = { 8E65785E084F5EDB00F28C07 = {
fRef = 8EEBC7C5084F5BB3009FE5BE; fRef = 8EEBC7C5084F5BB3009FE5BE;
isa = PBXTextBookmark; isa = PBXTextBookmark;
@ -611,7 +568,7 @@
uiCtxt = { uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {730, 700}}"; sepNavIntBoundsRect = "{{0, 0}, {730, 700}}";
sepNavSelRange = "{351, 50}"; sepNavSelRange = "{351, 50}";
sepNavVisRect = "{{0, 371}, {730, 77}}"; sepNavVisRect = "{{0, 364}, {730, 77}}";
}; };
}; };
8EEBC78B084F5B30009FE5BE = { 8EEBC78B084F5B30009FE5BE = {
@ -771,4 +728,14 @@
vrLen = 648; vrLen = 648;
vrLoc = 0; 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;
};
} }

14
PLANNED
View file

@ -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 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. in a queue, whcih will pick the next song.
Stream support for shoutcast/oggcast, or just opening via URL.
Audioscrobbler. Audioscrobbler.
Improved tag reading.
mpeg4 support (FAAD)
look into realplayer (cook in mplayer) and wma look into realplayer (cook in mplayer) and wma
find better ape decoder
visualizer? (libvisualizer perhaps?) visualizer? (libvisualizer perhaps?)
hotkeys for next/prev/stop/shuffle/repeat & info window

25
Sound.m
View file

@ -306,15 +306,30 @@ static OSStatus Sound_Renderer(void *inRefCon, AudioUnitRenderActionFlags *ioAc
NSArray* components = [portMessage components]; NSArray* components = [portMessage components];
NSData *data = [components objectAtIndex:0]; NSData *data = [components objectAtIndex:0];
double time; double time;
double newTime;
unsigned long pos; unsigned long pos;
time = (*(double *)[data bytes]); time = (*(double *)[data bytes]);
pos = [self calculatePos:time]; pos = [self calculatePos:time];
[soundFile seekToTime:time]; newTime = [soundFile seekToTime:time];
[self resetBuffer]; if (newTime >= 0)
[readLock lock]; {
currentPosition = pos; [self resetBuffer];
[readLock unlock];
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) else if (msgid == kCogEndOfPlaylistMessage)
{ {

View file

@ -20,6 +20,9 @@
NeAACDecHandle hAac; NeAACDecHandle hAac;
NeAACDecFrameInfo hInfo; NeAACDecFrameInfo hInfo;
unsigned long *seekTable;
int seekTableLength;
char buffer[SAMPLE_BUFFER_SIZE]; char buffer[SAMPLE_BUFFER_SIZE];
int bufferAmount; int bufferAmount;

View file

@ -7,38 +7,41 @@
// //
#import "AACFile.h" #import "AACFile.h"
#import <FAAD2/aacinfo.h>
@implementation AACFile @implementation AACFile
- (BOOL)open:(const char *)filename - (BOOL)open:(const char *)filename
{ {
unsigned long cap = NeAACDecGetCapabilities(); faadAACInfo info;
// unsigned long cap = NeAACDecGetCapabilities();
//Check if decoder has the needed capabilities //Check if decoder has the needed capabilities
inFd = fopen(filename, "r");
if (!inFd)
return NO;
//Open the library //Open the library
hAac = NeAACDecOpen(); hAac = NeAACDecOpen();
//Get the current config //Get the current config
NeAACDecConfigurationPtr conf = NeAACDecGetCurrentConfiguration(hAac); 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->outputFormat = FAAD_FMT_32BIT;
// conf->downMatrix = 1;
// channels = 1;
bitsPerSample = 32; bitsPerSample = 32;
//set the new configuration //set the new configuration
NeAACDecSetConfiguration(hAac, conf); NeAACDecSetConfiguration(hAac, conf);
inFd = fopen(filename, "r"); get_AAC_format(inFd, &info, &seekTable, &seekTableLength, 1);
if (!inFd) DBLog(@"INFO TIME");
return NO; 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); inputAmount = fread(inputBuffer, 1, INPUT_BUFFER_SIZE, inFd);
unsigned long samplerate; unsigned long samplerate;
unsigned char c; unsigned char c;
//Initialize the library using one of the initalization functions //Initialize the library using one of the initalization functions
@ -49,18 +52,25 @@
DBLog(@"AAC ERRROR"); DBLog(@"AAC ERRROR");
return NO; return NO;
} }
inputAmount -= err; inputAmount -= err;
memmove(inputBuffer, &inputBuffer[err], inputAmount); memmove(inputBuffer, &inputBuffer[err], inputAmount);
frequency = (int)samplerate; frequency = (int)samplerate;
channels = c; channels = c;
bitRate = (int)((float)info.bitrate/1000.0);
totalSize = (long int)(info.length*(double)frequency/1000.0*channels*bitsPerSample/8);
isBigEndian = YES; isBigEndian = YES;
return 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)fillBuffer:(void *)buf ofSize:(UInt32)size
{ {
int numread = bufferAmount; int numread = bufferAmount;
@ -132,8 +142,34 @@
return count + numread; 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 - (void)close
{ {
NeAACDecClose(hAac);
fclose(inFd);
} }
@end @end

View file

@ -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)); FLAC__file_decoder_seek_absolute(decoder, frequency * ((double)milliseconds/1000.0));
return milliseconds;
} }
//bs methods //bs methods

View file

@ -99,9 +99,11 @@
decoder = NULL; decoder = NULL;
} }
- (void)seekToTime:(double)milliseconds - (double)seekToTime:(double)milliseconds
{ {
DecMPA_SeekToTime(decoder, (unsigned long)milliseconds); DecMPA_SeekToTime(decoder, (unsigned long)milliseconds);
return milliseconds;
} }
@end @end

View file

@ -76,11 +76,13 @@
decompress = NULL; decompress = NULL;
} }
- (void)seekToTime:(double)milliseconds - (double)seekToTime:(double)milliseconds
{ {
int r; int r;
// DBLog(@"HELLO: %i", int(frequency*((double)milliseconds/1000.0))); // DBLog(@"HELLO: %i", int(frequency*((double)milliseconds/1000.0)));
r = decompress->Seek(int(frequency*((double)milliseconds/1000.0))); r = decompress->Seek(int(frequency*((double)milliseconds/1000.0)));
return milliseconds;
} }
@end @end

View file

@ -184,7 +184,7 @@ BOOL CanSeekProc(void *data)
fclose(inFd); fclose(inFd);
} }
- (void)seekToTime:(double)milliseconds - (double)seekToTime:(double)milliseconds
{ {
BOOL r; BOOL r;
// double n = milliseconds; // double n = milliseconds;
@ -193,6 +193,8 @@ BOOL CanSeekProc(void *data)
r = mpc_decoder_seek_sample(&decoder, frequency*((double)milliseconds/1000.0)); r = mpc_decoder_seek_sample(&decoder, frequency*((double)milliseconds/1000.0));
// DBLog(@"SEEK RESULT: %i", r); // DBLog(@"SEEK RESULT: %i", r);
return milliseconds;
} }
//accessors //accessors

View file

@ -44,8 +44,8 @@
- (UInt32)fillBuffer:(void *)buf ofSize:(UInt32)size; - (UInt32)fillBuffer:(void *)buf ofSize:(UInt32)size;
- (void)seek:(unsigned long)position; //- (BOOL)seek:(unsigned long)position;
- (void)seekToTime:(double)milliseconds; - (double)seekToTime:(double)milliseconds;
- (void)close; - (void)close;
- (void)reset; //START AGAIN - (void)reset; //START AGAIN

View file

@ -11,7 +11,7 @@
@implementation SoundFile @implementation SoundFile
- (void)seek:(unsigned long)position /*- (void)seek:(unsigned long)position
{ {
unsigned long time; unsigned long time;
unsigned long frame; unsigned long frame;
@ -21,9 +21,10 @@
currentPosition = position; currentPosition = position;
[self seekToTime:time]; time = [self seekToTime:time];
position = time * (frequency/1000.0)*chanels*(bitsPerSample/8)
} }
*/
- (double)length - (double)length
{ {
return (totalSize/channels/(bitsPerSample/8)/(frequency/1000.0)); return (totalSize/channels/(bitsPerSample/8)/(frequency/1000.0));
@ -119,7 +120,7 @@
- (void)reset - (void)reset
{ {
[self seek:0]; [self seekToTime:0.0];
} }
- (void)getFormat:(AudioStreamBasicDescription *)sourceStreamFormat - (void)getFormat:(AudioStreamBasicDescription *)sourceStreamFormat

View file

@ -71,6 +71,8 @@
- (void)seekToTime:(double)milliseconds - (void)seekToTime:(double)milliseconds
{ {
ov_time_seek(&vorbisRef, (double)milliseconds/1000.0); ov_time_seek(&vorbisRef, (double)milliseconds/1000.0);
return milliseconds;
} }

View file

@ -113,9 +113,11 @@
sndFile = NULL; sndFile = NULL;
} }
- (void)seekToTime:(double)milliseconds - (double)seekToTime:(double)milliseconds
{ {
sf_seek(sndFile, frequency*((double)milliseconds/1000.0), SEEK_SET); sf_seek(sndFile, frequency*((double)milliseconds/1000.0), SEEK_SET);
return milliseconds;
} }
@end @end