Test commit

CQTexperiment
vspader 2005-06-29 15:28:20 +00:00
parent 474a5236a4
commit 9fd139e0f8
32 changed files with 1901 additions and 1436 deletions

View File

@ -22,7 +22,6 @@
- (IBAction)addFiles:(id)sender;
- (IBAction)delEntries:(id)sender;
- (IBAction)showInfo:(id)sender;
- (IBAction)savePlaylist:(id)sender;
- (IBAction)savePlaylistAs:(id)sender;
- (IBAction)loadPlaylist:(id)sender;

View File

@ -1,3 +1,12 @@
0.04
----
Fixed id3v1 tag issue when taggers use spaces to fill empty bytes.
Fixed minor UI (Hide NewApplication) bug.
Fixed version number, so autoupdate should work.
Compiled with GCC3.3, which should hopefully fix issues with 10.3.
Now ignores case when dealing with file extensions.
Added volume slider.
0.0.3
-----
Fixed bug where Default.playlist referred to non-existent files, resulting in a crash.

View File

@ -13,17 +13,12 @@
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
8E0EBF0F084BA776003A6E64 /* DBLog.c in Sources */ = {isa = PBXBuildFile; fileRef = 8E0EBF0D084BA776003A6E64 /* DBLog.c */; };
8E10DBF0084BBCF00013815C /* Credits.html in Resources */ = {isa = PBXBuildFile; fileRef = 8E10DBEF084BBCF00013815C /* Credits.html */; };
8E14E469084CF15C00246BCC /* FAAD2.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8E14E468084CF15C00246BCC /* FAAD2.framework */; };
8E14E472084CF16400246BCC /* FAAD2.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8E14E468084CF15C00246BCC /* FAAD2.framework */; };
8E14E47C084CF1A200246BCC /* AACFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E14E47A084CF1A200246BCC /* AACFile.m */; };
8E267D0E0837F7A6004ACBC5 /* FeedbackController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E267D050837F7A6004ACBC5 /* FeedbackController.m */; };
8E267D100837F7A6004ACBC5 /* FeedbackSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E267D070837F7A6004ACBC5 /* FeedbackSocket.m */; };
8E267D120837F7A6004ACBC5 /* MacPADSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E267D0A0837F7A6004ACBC5 /* MacPADSocket.m */; };
8E267D140837F7A6004ACBC5 /* UpdateController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E267D0C0837F7A6004ACBC5 /* UpdateController.m */; };
8E28710B0836934A0013CE39 /* VirtualRingBuffer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E2871090836934A0013CE39 /* VirtualRingBuffer.m */; };
8E287E4A0855F2EC00562C66 /* InfoView.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8E287E480855F2EC00562C66 /* InfoView.h */; };
8E287E4B0855F2EC00562C66 /* InfoView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E287E490855F2EC00562C66 /* InfoView.m */; };
8E29790A083D891500F2C55A /* TrackingCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E297908083D891500F2C55A /* TrackingCell.m */; };
8E45227C0832898A00F8BA7C /* Sound.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E45227B0832898A00F8BA7C /* Sound.m */; };
8E47218D08318D7A001F89FA /* DNDArrayController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E47218608318D7A001F89FA /* DNDArrayController.m */; };
8E47218E08318D7A001F89FA /* PlaylistController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E47218808318D7A001F89FA /* PlaylistController.m */; };
@ -31,21 +26,13 @@
8E47219008318D7A001F89FA /* PlaylistView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E47218C08318D7A001F89FA /* PlaylistView.m */; };
8E4721D308319294001F89FA /* AppController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E4721D208319294001F89FA /* AppController.m */; };
8E4721D6083192C2001F89FA /* SoundController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E4721D5083192C2001F89FA /* SoundController.m */; };
8E5A9032084CB48500AE6D62 /* TagLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8E5A9031084CB48500AE6D62 /* TagLib.framework */; };
8E5A908D084CB92D00AE6D62 /* TagLib.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8E5A9031084CB48500AE6D62 /* TagLib.framework */; };
8E5A90B1084CBC2F00AE6D62 /* Changelog in Resources */ = {isa = PBXBuildFile; fileRef = 8E5A90B0084CBC2F00AE6D62 /* Changelog */; };
8E652A02083D93EB00A7AF1B /* TrackingSlider.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E652A00083D93EB00A7AF1B /* TrackingSlider.m */; };
8E6F2A1908480D010011F126 /* wheel.icns in Resources */ = {isa = PBXBuildFile; fileRef = 8E6F2A1808480D010011F126 /* wheel.icns */; };
8E7DAB4F0867423900615930 /* ClickField.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8E7DAB4D0867423900615930 /* ClickField.h */; };
8E7DAB500867423900615930 /* ClickField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E7DAB4E0867423900615930 /* ClickField.m */; };
8E81BC33083673ED0025A375 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8E81BC31083673ED0025A375 /* AudioToolbox.framework */; };
8E81BC34083673ED0025A375 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8E81BC32083673ED0025A375 /* AudioUnit.framework */; };
8E847F73086DEBD600162B93 /* TODO in Resources */ = {isa = PBXBuildFile; fileRef = 8E847F72086DEBD600162B93 /* TODO */; };
8E8BAE5408548BD500E9F14D /* WavPackFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E8BAE5208548BD500E9F14D /* WavPackFile.m */; };
8E8BAE5808548BE800E9F14D /* ShnFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E8BAE5608548BE800E9F14D /* ShnFile.m */; };
8E8BAE9908548C5500E9F14D /* Shorten.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8E8BAE9808548C5500E9F14D /* Shorten.framework */; };
8E8BAE9D08548C6300E9F14D /* WavPack.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8E8BAE9C08548C6300E9F14D /* WavPack.framework */; };
8E8BAEA508548C8200E9F14D /* WavPack.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8E8BAE9C08548C6300E9F14D /* WavPack.framework */; };
8E8BAEA608548C8200E9F14D /* Shorten.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8E8BAE9808548C5500E9F14D /* Shorten.framework */; };
8E8F3F9C0855499500BCF803 /* README in Resources */ = {isa = PBXBuildFile; fileRef = 8E8F3F9B0855499500BCF803 /* README */; };
8EAB752D0856205B0021C2BF /* repeat_on.png in Resources */ = {isa = PBXBuildFile; fileRef = 8EAB75290856205B0021C2BF /* repeat_on.png */; };
8EAB752E0856205B0021C2BF /* repeat_off.png in Resources */ = {isa = PBXBuildFile; fileRef = 8EAB752A0856205B0021C2BF /* repeat_off.png */; };
@ -68,15 +55,34 @@
8EAFD28F08465E5600107BA5 /* remove_gray.png in Resources */ = {isa = PBXBuildFile; fileRef = 8EAFD27B08465E5600107BA5 /* remove_gray.png */; };
8EAFD29408465E5600107BA5 /* stop_blue.png in Resources */ = {isa = PBXBuildFile; fileRef = 8EAFD28008465E5600107BA5 /* stop_blue.png */; };
8EAFD29508465E5600107BA5 /* stop_gray.png in Resources */ = {isa = PBXBuildFile; fileRef = 8EAFD28108465E5600107BA5 /* stop_gray.png */; };
8EC4BB7E0872E2FB00ACF986 /* ClickField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EC4BB760872E2FB00ACF986 /* ClickField.m */; };
8EC4BB800872E2FB00ACF986 /* InfoView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EC4BB780872E2FB00ACF986 /* InfoView.m */; };
8EC4BB820872E2FB00ACF986 /* TrackingCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EC4BB7A0872E2FB00ACF986 /* TrackingCell.m */; };
8EC4BB840872E2FB00ACF986 /* TrackingSlider.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EC4BB7C0872E2FB00ACF986 /* TrackingSlider.m */; };
8EC4BCC20872EEB800ACF986 /* WavPack.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCC10872EEB800ACF986 /* WavPack.framework */; };
8EC4BCCF0872EEFC00ACF986 /* Vorbis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCCE0872EEFC00ACF986 /* Vorbis.framework */; };
8EC4BCD30872EF0C00ACF986 /* TagLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCD20872EF0C00ACF986 /* TagLib.framework */; };
8EC4BCD70872EF1600ACF986 /* SndFile.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCD60872EF1600ACF986 /* SndFile.framework */; };
8EC4BCDB0872EF1F00ACF986 /* Shorten.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCDA0872EF1F00ACF986 /* Shorten.framework */; };
8EC4BCDF0872EF3100ACF986 /* Ogg.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCDE0872EF3100ACF986 /* Ogg.framework */; };
8EC4BCE30872EF3A00ACF986 /* MPCDec.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCE20872EF3A00ACF986 /* MPCDec.framework */; };
8EC4BCE70872EF4400ACF986 /* MAC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCE60872EF4400ACF986 /* MAC.framework */; };
8EC4BCEB0872EF4D00ACF986 /* FLAC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCEA0872EF4D00ACF986 /* FLAC.framework */; };
8EC4BCEF0872EF5600ACF986 /* FAAD2.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCEE0872EF5600ACF986 /* FAAD2.framework */; };
8EC4BCF30872EF6300ACF986 /* DecMPA.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EC4BCF20872EF6300ACF986 /* DecMPA.framework */; };
8EC4BD310872EF6A00ACF986 /* DecMPA.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCF20872EF6300ACF986 /* DecMPA.framework */; };
8EC4BD320872EF6A00ACF986 /* FAAD2.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCEE0872EF5600ACF986 /* FAAD2.framework */; };
8EC4BD330872EF6A00ACF986 /* FLAC.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCEA0872EF4D00ACF986 /* FLAC.framework */; };
8EC4BD340872EF6A00ACF986 /* MAC.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCE60872EF4400ACF986 /* MAC.framework */; };
8EC4BD350872EF6A00ACF986 /* MPCDec.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCE20872EF3A00ACF986 /* MPCDec.framework */; };
8EC4BD360872EF6A00ACF986 /* Ogg.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCDE0872EF3100ACF986 /* Ogg.framework */; };
8EC4BD370872EF6A00ACF986 /* Shorten.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCDA0872EF1F00ACF986 /* Shorten.framework */; };
8EC4BD380872EF6A00ACF986 /* SndFile.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCD60872EF1600ACF986 /* SndFile.framework */; };
8EC4BD390872EF6A00ACF986 /* TagLib.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCD20872EF0C00ACF986 /* TagLib.framework */; };
8EC4BD3A0872EF6A00ACF986 /* Vorbis.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCCE0872EEFC00ACF986 /* Vorbis.framework */; };
8EC4BD3B0872EF6A00ACF986 /* WavPack.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EC4BCC10872EEB800ACF986 /* WavPack.framework */; };
8EDCBDCB0840617B00F5C7E3 /* Cog.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = 8EDCBDCA0840617B00F5C7E3 /* Cog.scriptTerminology */; };
8EDCBDCD0840618900F5C7E3 /* Cog.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = 8EDCBDCC0840618900F5C7E3 /* Cog.scriptSuite */; };
8EE4A685082E6E5100415456 /* DecMPA.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EE4A684082E6E5100415456 /* DecMPA.framework */; };
8EE4A689082E6E6000415456 /* FLAC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EE4A688082E6E6000415456 /* FLAC.framework */; };
8EE4A68D082E6E7000415456 /* MAC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EE4A68C082E6E7000415456 /* MAC.framework */; };
8EE4A691082E6E8000415456 /* MPCDec.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EE4A690082E6E8000415456 /* MPCDec.framework */; };
8EE4A695082E6E9100415456 /* Ogg.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EE4A694082E6E9100415456 /* Ogg.framework */; };
8EE4A699082E6EA000415456 /* SndFile.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EE4A698082E6EA000415456 /* SndFile.framework */; };
8EE4A69C082E6EB200415456 /* Vorbis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EE4A69B082E6EB200415456 /* Vorbis.framework */; };
8EF6FA73082DA526006F7BE6 /* FlacFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EF6FA66082DA526006F7BE6 /* FlacFile.m */; };
8EF6FA74082DA526006F7BE6 /* MonkeysFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EF6FA68082DA526006F7BE6 /* MonkeysFile.m */; };
8EF6FA75082DA526006F7BE6 /* MPEGFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EF6FA6A082DA526006F7BE6 /* MPEGFile.m */; };
@ -84,15 +90,27 @@
8EF6FA77082DA526006F7BE6 /* SoundFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EF6FA6E082DA526006F7BE6 /* SoundFile.m */; };
8EF6FA78082DA526006F7BE6 /* VorbisFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EF6FA70082DA526006F7BE6 /* VorbisFile.m */; };
8EF6FA79082DA526006F7BE6 /* WaveFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EF6FA72082DA526006F7BE6 /* WaveFile.m */; };
8EFFB6D0083302A500C53833 /* Vorbis.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EE4A69B082E6EB200415456 /* Vorbis.framework */; };
8EFFB6D1083302A500C53833 /* SndFile.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EE4A698082E6EA000415456 /* SndFile.framework */; };
8EFFB6D2083302A500C53833 /* Ogg.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EE4A694082E6E9100415456 /* Ogg.framework */; };
8EFFB6D3083302A500C53833 /* MPCDec.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EE4A690082E6E8000415456 /* MPCDec.framework */; };
8EFFB6D4083302A500C53833 /* MAC.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EE4A68C082E6E7000415456 /* MAC.framework */; };
8EFFB6D5083302A500C53833 /* FLAC.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EE4A688082E6E6000415456 /* FLAC.framework */; };
8EFFB6D6083302A500C53833 /* DecMPA.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8EE4A684082E6E5100415456 /* DecMPA.framework */; };
/* End PBXBuildFile section */
/* Begin PBXBuildRule section */
8E6A0CCE086CCB5900B90CF9 /* PBXBuildRule */ = {
isa = PBXBuildRule;
compilerSpec = com.apple.compilers.gcc.3_3;
fileType = sourcecode.c;
isEditable = 1;
outputFiles = (
);
};
8E6A0CCF086CCB6600B90CF9 /* PBXBuildRule */ = {
isa = PBXBuildRule;
compilerSpec = com.apple.compilers.gcc.3_3;
fileType = sourcecode.asm;
isEditable = 1;
outputFiles = (
);
};
/* End PBXBuildRule section */
/* Begin PBXBuildStyle section */
4A9504CCFFE6A4B311CA0CBA /* Development */ = {
isa = PBXBuildStyle;
@ -133,19 +151,17 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
8E8BAEA508548C8200E9F14D /* WavPack.framework in CopyFiles */,
8E8BAEA608548C8200E9F14D /* Shorten.framework in CopyFiles */,
8E14E472084CF16400246BCC /* FAAD2.framework in CopyFiles */,
8E5A908D084CB92D00AE6D62 /* TagLib.framework in CopyFiles */,
8EFFB6D0083302A500C53833 /* Vorbis.framework in CopyFiles */,
8EFFB6D1083302A500C53833 /* SndFile.framework in CopyFiles */,
8EFFB6D2083302A500C53833 /* Ogg.framework in CopyFiles */,
8EFFB6D3083302A500C53833 /* MPCDec.framework in CopyFiles */,
8EFFB6D4083302A500C53833 /* MAC.framework in CopyFiles */,
8EFFB6D5083302A500C53833 /* FLAC.framework in CopyFiles */,
8EFFB6D6083302A500C53833 /* DecMPA.framework in CopyFiles */,
8E287E4A0855F2EC00562C66 /* InfoView.h in CopyFiles */,
8E7DAB4F0867423900615930 /* ClickField.h in CopyFiles */,
8EC4BD310872EF6A00ACF986 /* DecMPA.framework in CopyFiles */,
8EC4BD320872EF6A00ACF986 /* FAAD2.framework in CopyFiles */,
8EC4BD330872EF6A00ACF986 /* FLAC.framework in CopyFiles */,
8EC4BD340872EF6A00ACF986 /* MAC.framework in CopyFiles */,
8EC4BD350872EF6A00ACF986 /* MPCDec.framework in CopyFiles */,
8EC4BD360872EF6A00ACF986 /* Ogg.framework in CopyFiles */,
8EC4BD370872EF6A00ACF986 /* Shorten.framework in CopyFiles */,
8EC4BD380872EF6A00ACF986 /* SndFile.framework in CopyFiles */,
8EC4BD390872EF6A00ACF986 /* TagLib.framework in CopyFiles */,
8EC4BD3A0872EF6A00ACF986 /* Vorbis.framework in CopyFiles */,
8EC4BD3B0872EF6A00ACF986 /* WavPack.framework in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -165,7 +181,6 @@
8E0EBF0C084BA776003A6E64 /* DBLog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DBLog.h; sourceTree = "<group>"; };
8E0EBF0D084BA776003A6E64 /* DBLog.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; path = DBLog.c; sourceTree = "<group>"; };
8E10DBEF084BBCF00013815C /* Credits.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = Credits.html; sourceTree = "<group>"; };
8E14E468084CF15C00246BCC /* FAAD2.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FAAD2.framework; path = Libraries/FAAD2/build/FAAD2.framework; sourceTree = "<group>"; };
8E14E479084CF1A200246BCC /* AACFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AACFile.h; sourceTree = "<group>"; };
8E14E47A084CF1A200246BCC /* AACFile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AACFile.m; sourceTree = "<group>"; };
8E267D040837F7A6004ACBC5 /* FeedbackController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FeedbackController.h; sourceTree = "<group>"; };
@ -178,10 +193,6 @@
8E267D0C0837F7A6004ACBC5 /* UpdateController.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = UpdateController.m; sourceTree = "<group>"; };
8E2871080836934A0013CE39 /* VirtualRingBuffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = VirtualRingBuffer.h; sourceTree = "<group>"; };
8E2871090836934A0013CE39 /* VirtualRingBuffer.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = VirtualRingBuffer.m; sourceTree = "<group>"; };
8E287E480855F2EC00562C66 /* InfoView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = InfoView.h; sourceTree = "<group>"; };
8E287E490855F2EC00562C66 /* InfoView.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = InfoView.m; sourceTree = "<group>"; };
8E297908083D891500F2C55A /* TrackingCell.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = TrackingCell.m; sourceTree = "<group>"; };
8E297909083D891500F2C55A /* TrackingCell.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = TrackingCell.h; sourceTree = "<group>"; };
8E45227A0832898A00F8BA7C /* Sound.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Sound.h; sourceTree = "<group>"; };
8E45227B0832898A00F8BA7C /* Sound.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; path = Sound.m; sourceTree = "<group>"; };
8E47218508318D7A001F89FA /* DNDArrayController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = DNDArrayController.h; path = Playlist/DNDArrayController.h; sourceTree = "<group>"; };
@ -189,28 +200,22 @@
8E47218708318D7A001F89FA /* PlaylistController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = PlaylistController.h; path = Playlist/PlaylistController.h; sourceTree = "<group>"; };
8E47218808318D7A001F89FA /* PlaylistController.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 30; name = PlaylistController.m; path = Playlist/PlaylistController.m; sourceTree = "<group>"; };
8E47218908318D7A001F89FA /* PlaylistEntry.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = PlaylistEntry.h; path = Playlist/PlaylistEntry.h; sourceTree = "<group>"; };
8E47218A08318D7A001F89FA /* PlaylistEntry.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = PlaylistEntry.m; path = Playlist/PlaylistEntry.m; sourceTree = "<group>"; };
8E47218A08318D7A001F89FA /* PlaylistEntry.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 30; name = PlaylistEntry.m; path = Playlist/PlaylistEntry.m; sourceTree = "<group>"; };
8E47218B08318D7A001F89FA /* PlaylistView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = PlaylistView.h; path = Playlist/PlaylistView.h; sourceTree = "<group>"; };
8E47218C08318D7A001F89FA /* PlaylistView.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = PlaylistView.m; path = Playlist/PlaylistView.m; sourceTree = "<group>"; };
8E4721D108319294001F89FA /* AppController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AppController.h; sourceTree = "<group>"; };
8E4721D208319294001F89FA /* AppController.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = AppController.m; sourceTree = "<group>"; };
8E4721D4083192C2001F89FA /* SoundController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SoundController.h; sourceTree = "<group>"; };
8E4721D5083192C2001F89FA /* SoundController.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SoundController.m; sourceTree = "<group>"; };
8E5A9031084CB48500AE6D62 /* TagLib.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = TagLib.framework; path = Libraries/TagLib/build/TagLib.framework; sourceTree = "<group>"; };
8E5A90B0084CBC2F00AE6D62 /* Changelog */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Changelog; sourceTree = "<group>"; };
8E6529FF083D93EB00A7AF1B /* TrackingSlider.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = TrackingSlider.h; sourceTree = "<group>"; };
8E652A00083D93EB00A7AF1B /* TrackingSlider.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = TrackingSlider.m; sourceTree = "<group>"; };
8E6F2A1808480D010011F126 /* wheel.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = wheel.icns; path = Icons/wheel.icns; sourceTree = "<group>"; };
8E7DAB4D0867423900615930 /* ClickField.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ClickField.h; sourceTree = "<group>"; };
8E7DAB4E0867423900615930 /* ClickField.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = ClickField.m; sourceTree = "<group>"; };
8E81BC31083673ED0025A375 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = /System/Library/Frameworks/AudioToolbox.framework; sourceTree = "<absolute>"; };
8E81BC32083673ED0025A375 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = "<absolute>"; };
8E847F72086DEBD600162B93 /* TODO */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = TODO; sourceTree = "<group>"; };
8E8BAE5108548BD500E9F14D /* WavPackFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WavPackFile.h; sourceTree = "<group>"; };
8E8BAE5208548BD500E9F14D /* WavPackFile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WavPackFile.m; sourceTree = "<group>"; };
8E8BAE5508548BE800E9F14D /* ShnFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ShnFile.h; sourceTree = "<group>"; };
8E8BAE5608548BE800E9F14D /* ShnFile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ShnFile.m; sourceTree = "<group>"; };
8E8BAE9808548C5500E9F14D /* Shorten.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Shorten.framework; path = Libraries/Shorten/build/Shorten.framework; sourceTree = "<group>"; };
8E8BAE9C08548C6300E9F14D /* WavPack.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WavPack.framework; path = Libraries/WavPack/build/WavPack.framework; sourceTree = "<group>"; };
8E8F3F9B0855499500BCF803 /* README */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = README; sourceTree = "<group>"; };
8EAB75290856205B0021C2BF /* repeat_on.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = repeat_on.png; path = Icons/repeat_on.png; sourceTree = "<group>"; };
8EAB752A0856205B0021C2BF /* repeat_off.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = repeat_off.png; path = Icons/repeat_off.png; sourceTree = "<group>"; };
@ -233,15 +238,27 @@
8EAFD27B08465E5600107BA5 /* remove_gray.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = remove_gray.png; path = Icons/remove_gray.png; sourceTree = "<group>"; };
8EAFD28008465E5600107BA5 /* stop_blue.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = stop_blue.png; path = Icons/stop_blue.png; sourceTree = "<group>"; };
8EAFD28108465E5600107BA5 /* stop_gray.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = stop_gray.png; path = Icons/stop_gray.png; sourceTree = "<group>"; };
8EC4BB750872E2FB00ACF986 /* ClickField.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ClickField.h; path = Custom/ClickField.h; sourceTree = "<group>"; };
8EC4BB760872E2FB00ACF986 /* ClickField.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = ClickField.m; path = Custom/ClickField.m; sourceTree = "<group>"; };
8EC4BB770872E2FB00ACF986 /* InfoView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = InfoView.h; path = Custom/InfoView.h; sourceTree = "<group>"; };
8EC4BB780872E2FB00ACF986 /* InfoView.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = InfoView.m; path = Custom/InfoView.m; sourceTree = "<group>"; };
8EC4BB790872E2FB00ACF986 /* TrackingCell.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = TrackingCell.h; path = Custom/TrackingCell.h; sourceTree = "<group>"; };
8EC4BB7A0872E2FB00ACF986 /* TrackingCell.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = TrackingCell.m; path = Custom/TrackingCell.m; sourceTree = "<group>"; };
8EC4BB7B0872E2FB00ACF986 /* TrackingSlider.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = TrackingSlider.h; path = Custom/TrackingSlider.h; sourceTree = "<group>"; };
8EC4BB7C0872E2FB00ACF986 /* TrackingSlider.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = TrackingSlider.m; path = Custom/TrackingSlider.m; sourceTree = "<group>"; };
8EC4BCC10872EEB800ACF986 /* WavPack.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WavPack.framework; path = Libraries/WavPack/build/Deployment/WavPack.framework; sourceTree = "<group>"; };
8EC4BCCE0872EEFC00ACF986 /* Vorbis.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Vorbis.framework; path = Libraries/Vorbis/build/Deployment/Vorbis.framework; sourceTree = "<group>"; };
8EC4BCD20872EF0C00ACF986 /* TagLib.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = TagLib.framework; path = Libraries/TagLib/build/Deployment/TagLib.framework; sourceTree = "<group>"; };
8EC4BCD60872EF1600ACF986 /* SndFile.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SndFile.framework; path = Libraries/SndFile/build/Deployment/SndFile.framework; sourceTree = "<group>"; };
8EC4BCDA0872EF1F00ACF986 /* Shorten.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Shorten.framework; path = Libraries/Shorten/build/Deployment/Shorten.framework; sourceTree = "<group>"; };
8EC4BCDE0872EF3100ACF986 /* Ogg.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Ogg.framework; path = Libraries/Ogg/build/Deployment/Ogg.framework; sourceTree = "<group>"; };
8EC4BCE20872EF3A00ACF986 /* MPCDec.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MPCDec.framework; path = Libraries/MPCDec/build/Deployment/MPCDec.framework; sourceTree = "<group>"; };
8EC4BCE60872EF4400ACF986 /* MAC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MAC.framework; path = Libraries/MAC/build/Deployment/MAC.framework; sourceTree = "<group>"; };
8EC4BCEA0872EF4D00ACF986 /* FLAC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FLAC.framework; path = Libraries/FLAC/build/Deployment/FLAC.framework; sourceTree = "<group>"; };
8EC4BCEE0872EF5600ACF986 /* FAAD2.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FAAD2.framework; path = Libraries/FAAD2/build/Deployment/FAAD2.framework; sourceTree = "<group>"; };
8EC4BCF20872EF6300ACF986 /* DecMPA.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DecMPA.framework; path = Libraries/DecMPA/build/Deployment/DecMPA.framework; sourceTree = "<group>"; };
8EDCBDCA0840617B00F5C7E3 /* Cog.scriptTerminology */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.scriptTerminology; path = Cog.scriptTerminology; sourceTree = "<group>"; };
8EDCBDCC0840618900F5C7E3 /* Cog.scriptSuite */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.scriptSuite; path = Cog.scriptSuite; sourceTree = "<group>"; };
8EE4A684082E6E5100415456 /* DecMPA.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DecMPA.framework; path = Libraries/DecMPA/build/DecMPA.framework; sourceTree = "<group>"; };
8EE4A688082E6E6000415456 /* FLAC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FLAC.framework; path = Libraries/FLAC/build/FLAC.framework; sourceTree = "<group>"; };
8EE4A68C082E6E7000415456 /* MAC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MAC.framework; path = Libraries/MAC/build/MAC.framework; sourceTree = "<group>"; };
8EE4A690082E6E8000415456 /* MPCDec.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MPCDec.framework; path = Libraries/MPCDec/build/MPCDec.framework; sourceTree = "<group>"; };
8EE4A694082E6E9100415456 /* Ogg.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Ogg.framework; path = Libraries/Ogg/build/Ogg.framework; sourceTree = "<group>"; };
8EE4A698082E6EA000415456 /* SndFile.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SndFile.framework; path = Libraries/SndFile/build/SndFile.framework; sourceTree = "<group>"; };
8EE4A69B082E6EB200415456 /* Vorbis.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Vorbis.framework; path = Libraries/Vorbis/build/Vorbis.framework; sourceTree = "<group>"; };
8EF6FA65082DA526006F7BE6 /* FlacFile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FlacFile.h; sourceTree = "<group>"; };
8EF6FA66082DA526006F7BE6 /* FlacFile.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FlacFile.m; sourceTree = "<group>"; };
8EF6FA67082DA526006F7BE6 /* MonkeysFile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = MonkeysFile.h; sourceTree = "<group>"; };
@ -251,7 +268,7 @@
8EF6FA6B082DA526006F7BE6 /* MusepackFile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = MusepackFile.h; sourceTree = "<group>"; };
8EF6FA6C082DA526006F7BE6 /* MusepackFile.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = MusepackFile.m; sourceTree = "<group>"; };
8EF6FA6D082DA526006F7BE6 /* SoundFile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SoundFile.h; sourceTree = "<group>"; };
8EF6FA6E082DA526006F7BE6 /* SoundFile.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 30; path = SoundFile.m; sourceTree = "<group>"; };
8EF6FA6E082DA526006F7BE6 /* SoundFile.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 30; path = SoundFile.m; sourceTree = "<group>"; };
8EF6FA6F082DA526006F7BE6 /* VorbisFile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = VorbisFile.h; sourceTree = "<group>"; };
8EF6FA70082DA526006F7BE6 /* VorbisFile.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = VorbisFile.m; sourceTree = "<group>"; };
8EF6FA71082DA526006F7BE6 /* WaveFile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WaveFile.h; sourceTree = "<group>"; };
@ -264,19 +281,19 @@
buildActionMask = 2147483647;
files = (
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
8EE4A685082E6E5100415456 /* DecMPA.framework in Frameworks */,
8EE4A689082E6E6000415456 /* FLAC.framework in Frameworks */,
8EE4A68D082E6E7000415456 /* MAC.framework in Frameworks */,
8EE4A691082E6E8000415456 /* MPCDec.framework in Frameworks */,
8EE4A695082E6E9100415456 /* Ogg.framework in Frameworks */,
8EE4A699082E6EA000415456 /* SndFile.framework in Frameworks */,
8EE4A69C082E6EB200415456 /* Vorbis.framework in Frameworks */,
8E81BC33083673ED0025A375 /* AudioToolbox.framework in Frameworks */,
8E81BC34083673ED0025A375 /* AudioUnit.framework in Frameworks */,
8E5A9032084CB48500AE6D62 /* TagLib.framework in Frameworks */,
8E14E469084CF15C00246BCC /* FAAD2.framework in Frameworks */,
8E8BAE9908548C5500E9F14D /* Shorten.framework in Frameworks */,
8E8BAE9D08548C6300E9F14D /* WavPack.framework in Frameworks */,
8EC4BCC20872EEB800ACF986 /* WavPack.framework in Frameworks */,
8EC4BCCF0872EEFC00ACF986 /* Vorbis.framework in Frameworks */,
8EC4BCD30872EF0C00ACF986 /* TagLib.framework in Frameworks */,
8EC4BCD70872EF1600ACF986 /* SndFile.framework in Frameworks */,
8EC4BCDB0872EF1F00ACF986 /* Shorten.framework in Frameworks */,
8EC4BCDF0872EF3100ACF986 /* Ogg.framework in Frameworks */,
8EC4BCE30872EF3A00ACF986 /* MPCDec.framework in Frameworks */,
8EC4BCE70872EF4400ACF986 /* MAC.framework in Frameworks */,
8EC4BCEB0872EF4D00ACF986 /* FLAC.framework in Frameworks */,
8EC4BCEF0872EF5600ACF986 /* FAAD2.framework in Frameworks */,
8EC4BCF30872EF6300ACF986 /* DecMPA.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -291,8 +308,6 @@
8E47215C08318D12001F89FA /* Playlist */,
8EF6FA64082DA525006F7BE6 /* SoundFile */,
8E6529F8083D93AF00A7AF1B /* Custom */,
8E287E480855F2EC00562C66 /* InfoView.h */,
8E287E490855F2EC00562C66 /* InfoView.m */,
8E2871080836934A0013CE39 /* VirtualRingBuffer.h */,
8E2871090836934A0013CE39 /* VirtualRingBuffer.m */,
8E4721D108319294001F89FA /* AppController.h */,
@ -308,20 +323,17 @@
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
8E8BAE9C08548C6300E9F14D /* WavPack.framework */,
8E8BAE9808548C5500E9F14D /* Shorten.framework */,
8E14E468084CF15C00246BCC /* FAAD2.framework */,
8E5A9031084CB48500AE6D62 /* TagLib.framework */,
8E81BC31083673ED0025A375 /* AudioToolbox.framework */,
8E81BC32083673ED0025A375 /* AudioUnit.framework */,
8EE4A69B082E6EB200415456 /* Vorbis.framework */,
8EE4A698082E6EA000415456 /* SndFile.framework */,
8EE4A694082E6E9100415456 /* Ogg.framework */,
8EE4A690082E6E8000415456 /* MPCDec.framework */,
8EE4A68C082E6E7000415456 /* MAC.framework */,
8EE4A688082E6E6000415456 /* FLAC.framework */,
8EE4A684082E6E5100415456 /* DecMPA.framework */,
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
8EC4BCF20872EF6300ACF986 /* DecMPA.framework */,
8EC4BCEE0872EF5600ACF986 /* FAAD2.framework */,
8EC4BCEA0872EF4D00ACF986 /* FLAC.framework */,
8EC4BCE60872EF4400ACF986 /* MAC.framework */,
8EC4BCE20872EF3A00ACF986 /* MPCDec.framework */,
8EC4BCDE0872EF3100ACF986 /* Ogg.framework */,
8EC4BCDA0872EF1F00ACF986 /* Shorten.framework */,
8EC4BCD60872EF1600ACF986 /* SndFile.framework */,
8EC4BCD20872EF0C00ACF986 /* TagLib.framework */,
8EC4BCCE0872EEFC00ACF986 /* Vorbis.framework */,
8EC4BCC10872EEB800ACF986 /* WavPack.framework */,
);
name = "Linked Frameworks";
sourceTree = "<group>";
@ -329,6 +341,9 @@
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = {
isa = PBXGroup;
children = (
8E81BC31083673ED0025A375 /* AudioToolbox.framework */,
8E81BC32083673ED0025A375 /* AudioUnit.framework */,
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
29B97324FDCFA39411CA2CEA /* AppKit.framework */,
13E42FB307B3F0F600E4EEF1 /* CoreData.framework */,
29B97325FDCFA39411CA2CEA /* Foundation.framework */,
@ -379,6 +394,7 @@
8E10DBEF084BBCF00013815C /* Credits.html */,
8E5A90B0084CBC2F00AE6D62 /* Changelog */,
8E8F3F9B0855499500BCF803 /* README */,
8E847F72086DEBD600162B93 /* TODO */,
);
name = Resources;
sourceTree = "<group>";
@ -432,12 +448,14 @@
8E6529F8083D93AF00A7AF1B /* Custom */ = {
isa = PBXGroup;
children = (
8E297908083D891500F2C55A /* TrackingCell.m */,
8E297909083D891500F2C55A /* TrackingCell.h */,
8E6529FF083D93EB00A7AF1B /* TrackingSlider.h */,
8E652A00083D93EB00A7AF1B /* TrackingSlider.m */,
8E7DAB4D0867423900615930 /* ClickField.h */,
8E7DAB4E0867423900615930 /* ClickField.m */,
8EC4BB750872E2FB00ACF986 /* ClickField.h */,
8EC4BB760872E2FB00ACF986 /* ClickField.m */,
8EC4BB770872E2FB00ACF986 /* InfoView.h */,
8EC4BB780872E2FB00ACF986 /* InfoView.m */,
8EC4BB790872E2FB00ACF986 /* TrackingCell.h */,
8EC4BB7A0872E2FB00ACF986 /* TrackingCell.m */,
8EC4BB7B0872E2FB00ACF986 /* TrackingSlider.h */,
8EC4BB7C0872E2FB00ACF986 /* TrackingSlider.m */,
);
name = Custom;
sourceTree = "<group>";
@ -511,6 +529,8 @@
8EFFB6980833028600C53833 /* CopyFiles */,
);
buildRules = (
8E6A0CCF086CCB6600B90CF9 /* PBXBuildRule */,
8E6A0CCE086CCB5900B90CF9 /* PBXBuildRule */,
);
buildSettings = {
FRAMEWORK_SEARCH_PATHS = (
@ -607,6 +627,7 @@
8EAB752E0856205B0021C2BF /* repeat_off.png in Resources */,
8EAB753F085621620021C2BF /* shuffle_off.png in Resources */,
8EABE777085621D4004DF882 /* shuffle_on.png in Resources */,
8E847F73086DEBD600162B93 /* TODO in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -637,14 +658,14 @@
8E267D100837F7A6004ACBC5 /* FeedbackSocket.m in Sources */,
8E267D120837F7A6004ACBC5 /* MacPADSocket.m in Sources */,
8E267D140837F7A6004ACBC5 /* UpdateController.m in Sources */,
8E29790A083D891500F2C55A /* TrackingCell.m in Sources */,
8E652A02083D93EB00A7AF1B /* TrackingSlider.m in Sources */,
8E0EBF0F084BA776003A6E64 /* DBLog.c in Sources */,
8E14E47C084CF1A200246BCC /* AACFile.m in Sources */,
8E8BAE5408548BD500E9F14D /* WavPackFile.m in Sources */,
8E8BAE5808548BE800E9F14D /* ShnFile.m in Sources */,
8E287E4B0855F2EC00562C66 /* InfoView.m in Sources */,
8E7DAB500867423900615930 /* ClickField.m in Sources */,
8EC4BB7E0872E2FB00ACF986 /* ClickField.m in Sources */,
8EC4BB800872E2FB00ACF986 /* InfoView.m in Sources */,
8EC4BB820872E2FB00ACF986 /* TrackingCell.m in Sources */,
8EC4BB840872E2FB00ACF986 /* TrackingSlider.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -687,11 +708,25 @@
/Users/xugg/Projects/Cog/Libraries/FAAD2/build,
/Users/xugg/Projects/Cog/Libraries/Shorten/build,
/Users/xugg/Projects/Cog/Libraries/WavPack/build,
"$(SRCROOT)/Libraries/DecMPA/build/Deployment",
"$(SRCROOT)/Libraries/FAAD2/build/Deployment",
"$(SRCROOT)/Libraries/FLAC/build/Deployment",
"$(SRCROOT)/Libraries/MAC/build/Deployment",
"$(SRCROOT)/Libraries/MPCDec/build/Deployment",
"$(SRCROOT)/Libraries/Ogg/build/Deployment",
"$(SRCROOT)/Libraries/Shorten/build/Deployment",
"$(SRCROOT)/Libraries/SndFile/build/Deployment",
"$(SRCROOT)/Libraries/TagLib/build/Deployment",
"$(SRCROOT)/Libraries/Vorbis/build/Development",
"$(SRCROOT)/Libraries/WavPack/build/Deployment",
"$(SRCROOT)/Libraries/MAC/build/Development",
"$(SRCROOT)/../Cog/Libraries/FLAC/build/Deployment",
"$(SRCROOT)/Libraries/Vorbis/build/Deployment",
);
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_FIX_AND_CONTINUE = YES;
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_OPTIMIZATION_LEVEL = s;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = Cog_Prefix.pch;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
@ -705,10 +740,11 @@
"-DHAVE_CONFIG_H",
);
OTHER_LDFLAGS = "-Wl,-read_only_relocs,warning";
PREBINDING = NO;
PREBINDING = YES;
PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = YES;
PRODUCT_NAME = Cog;
WRAPPER_EXTENSION = app;
ZERO_LINK = YES;
ZERO_LINK = NO;
};
name = Development;
};
@ -717,18 +753,17 @@
buildSettings = {
COPY_PHASE_STRIP = YES;
FRAMEWORK_SEARCH_PATHS = (
/Users/xugg/Projects/Cog/Libraries/DecMPA/build,
/Users/xugg/Projects/Cog/Libraries/FLAC/build,
/Users/xugg/Projects/Cog/Libraries/MAC/build,
/Users/xugg/Projects/Cog/Libraries/MPCDec/build,
/Users/xugg/Projects/Cog/Libraries/Ogg/build,
/Users/xugg/Projects/Cog/Libraries/SndFile/build,
/Users/xugg/Projects/Cog/Libraries/Vorbis/build,
/Users/xugg/Projects/Cog/Libraries/MetaTag/build,
/Users/xugg/Projects/Cog/Libraries/TagLib/build,
/Users/xugg/Projects/Cog/Libraries/FAAD2/build,
/Users/xugg/Projects/Cog/Libraries/Shorten/build,
/Users/xugg/Projects/Cog/Libraries/WavPack/build,
"$(SRCROOT)/Libraries/WavPack/build/Deployment",
"$(SRCROOT)/Libraries/Vorbis/build/Deployment",
"$(SRCROOT)/Libraries/TagLib/build/Deployment",
"$(SRCROOT)/Libraries/SndFile/build/Deployment",
"$(SRCROOT)/Libraries/Shorten/build/Deployment",
"$(SRCROOT)/Libraries/Ogg/build/Deployment",
"$(SRCROOT)/Libraries/MPCDec/build/Deployment",
"$(SRCROOT)/Libraries/MAC/build/Deployment",
"$(SRCROOT)/Libraries/FLAC/build/Deployment",
"$(SRCROOT)/Libraries/FAAD2/build/Deployment",
"$(SRCROOT)/Libraries/DecMPA/build/Deployment",
);
GCC_ENABLE_FIX_AND_CONTINUE = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
@ -768,6 +803,20 @@
/Users/xugg/Projects/Cog/Libraries/FAAD2/build,
/Users/xugg/Projects/Cog/Libraries/Shorten/build,
/Users/xugg/Projects/Cog/Libraries/WavPack/build,
"$(SRCROOT)/Libraries/DecMPA/build/Deployment",
"$(SRCROOT)/Libraries/FAAD2/build/Deployment",
"$(SRCROOT)/Libraries/FLAC/build/Deployment",
"$(SRCROOT)/Libraries/MAC/build/Deployment",
"$(SRCROOT)/Libraries/MPCDec/build/Deployment",
"$(SRCROOT)/Libraries/Ogg/build/Deployment",
"$(SRCROOT)/Libraries/Shorten/build/Deployment",
"$(SRCROOT)/Libraries/SndFile/build/Deployment",
"$(SRCROOT)/Libraries/TagLib/build/Deployment",
"$(SRCROOT)/Libraries/Vorbis/build/Development",
"$(SRCROOT)/Libraries/WavPack/build/Deployment",
"$(SRCROOT)/Libraries/MAC/build/Development",
"$(SRCROOT)/../Cog/Libraries/FLAC/build/Deployment",
"$(SRCROOT)/Libraries/Vorbis/build/Deployment",
);
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_OPTIMIZATION_LEVEL = 3;

View File

@ -255,20 +255,21 @@
<array>
<string>29B97314FDCFA39411CA2CEA</string>
<string>080E96DDFE201D6D7F000001</string>
<string>8E6529F8083D93AF00A7AF1B</string>
<string>29B97317FDCFA39411CA2CEA</string>
<string>29B97323FDCFA39411CA2CEA</string>
<string>1058C7A0FEA54F0111CA2CBB</string>
<string>1C37FABC05509CD000000102</string>
</array>
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array>
<array>
<integer>32</integer>
<integer>24</integer>
<integer>26</integer>
<integer>16</integer>
<integer>0</integer>
</array>
</array>
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
<string>{{0, 51}, {186, 565}}</string>
<string>{{0, 0}, {186, 567}}</string>
</dict>
<key>PBXTopSmartGroupGIDs</key>
<array/>
@ -280,14 +281,14 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 0}, {203, 583}}</string>
<string>{{0, 0}, {203, 585}}</string>
<key>GroupTreeTableConfiguration</key>
<array>
<string>MainColumn</string>
<real>186</real>
</array>
<key>RubberWindowFrame</key>
<string>1 122 1024 624 0 0 1024 746 </string>
<string>0 120 1024 626 0 0 1024 746 </string>
</dict>
<key>Module</key>
<string>PBXSmartGroupTreeModule</string>
@ -305,7 +306,7 @@
<key>PBXProjectModuleGUID</key>
<string>1CE0B20306471E060097A5F4</string>
<key>PBXProjectModuleLabel</key>
<string>Changelog</string>
<string>TODO</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
@ -313,11 +314,11 @@
<key>PBXProjectModuleGUID</key>
<string>1CE0B20406471E060097A5F4</string>
<key>PBXProjectModuleLabel</key>
<string>Changelog</string>
<string>TODO</string>
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
<string>8E7DABA50867470600615930</string>
<string>8EC4BD6B0872EFD900ACF986</string>
<key>history</key>
<array>
<string>8EF6FACD082DAA2B006F7BE6</string>
@ -327,33 +328,13 @@
<string>8E1A1826083806B700AEA302</string>
<string>8E6082C7083920310017AECF</string>
<string>8EDC88A90842F8DE007D1532</string>
<string>8EDC88B50842F936007D1532</string>
<string>8ED833CD08457E6B0033CDBD</string>
<string>8E94D9D2084BEA32007F0AEB</string>
<string>8E94D9D3084BEA32007F0AEB</string>
<string>8E72BC640851408F00E34F1D</string>
<string>8EFC6D18085376D100C67D06</string>
<string>8EFC6DE8085380B800C67D06</string>
<string>8EFC6DF0085380B800C67D06</string>
<string>8EFC6E29085386CE00C67D06</string>
<string>8E3EDBC9085477D0007C6A53</string>
<string>8E8BAF10085494E000E9F14D</string>
<string>8E8BAF790854976A00E9F14D</string>
<string>8E91CCEE08549FEE0055EC68</string>
<string>8EB30D8A0854BEF1009EA87F</string>
<string>8EB30DAE0854BFEE009EA87F</string>
<string>8EB30DDB0854C261009EA87F</string>
<string>8EB30DDC0854C261009EA87F</string>
<string>8EB30DDD0854C261009EA87F</string>
<string>8EB30DDE0854C261009EA87F</string>
<string>8EB30DDF0854C261009EA87F</string>
<string>8EB30DE00854C261009EA87F</string>
<string>8EB30E1F0854C36A009EA87F</string>
<string>8E4D66E90854CD2C00816BEE</string>
<string>8E4D66EA0854CD2C00816BEE</string>
<string>8E4D67D40854E7B100816BEE</string>
<string>8E8F3F59085546B300BCF803</string>
<string>8E8F3F780855483300BCF803</string>
<string>8EF45A7A08557C4D00D2D5D0</string>
<string>8EAB7544085621B10021C2BF</string>
<string>8EAB7545085621B10021C2BF</string>
@ -363,13 +344,10 @@
<string>8EAB754C085621B10021C2BF</string>
<string>8EABE78408562281004DF882</string>
<string>8EABE7C308562FF3004DF882</string>
<string>8EABE7C508562FF3004DF882</string>
<string>8E5CC5020856316C00A299E0</string>
<string>8E98E5D308563D1B0078CAA1</string>
<string>8E65357F08563F6A00E468D9</string>
<string>8E65359E0856401D00E468D9</string>
<string>8E63F6C808587FD400C79B72</string>
<string>8E63F6C908587FD400C79B72</string>
<string>8E63F6CA08587FD400C79B72</string>
<string>8E8C7BFB085E9CD50086DAC7</string>
<string>8E8C7C14085E9DA50086DAC7</string>
@ -379,25 +357,50 @@
<string>8E8C7C85085EA5E30086DAC7</string>
<string>8E8C7D35085EAD460086DAC7</string>
<string>8E8C7D36085EAD460086DAC7</string>
<string>8EE558070866A24B009E7F50</string>
<string>8E7DAAA808673DF600615930</string>
<string>8E7DAAF70867402D00615930</string>
<string>8E7DAAF80867402D00615930</string>
<string>8E7DAAF90867402D00615930</string>
<string>8E7DAAFB0867402D00615930</string>
<string>8E7DAAFC0867402D00615930</string>
<string>8E7DAAFD0867402D00615930</string>
<string>8E7DAAFE0867402D00615930</string>
<string>8E7DAAFF0867402D00615930</string>
<string>8E7DAB430867421200615930</string>
<string>8E7DAB440867421200615930</string>
<string>8E7DAB78086742EB00615930</string>
<string>8E7DAB79086742EB00615930</string>
<string>8E7DAB7A086742EB00615930</string>
<string>8E7DAB9D0867470600615930</string>
<string>8E7DAB9E0867470600615930</string>
<string>8E7DAB9F0867470600615930</string>
<string>8E7DABA00867470600615930</string>
<string>8EB911C208676353008538A7</string>
<string>8EDA5C650869FCFD004E4A55</string>
<string>8EDA5C660869FCFD004E4A55</string>
<string>8EDA5C670869FCFD004E4A55</string>
<string>8EC82088086CD56B0088347D</string>
<string>8EC820C1086CD8890088347D</string>
<string>8EC820C2086CD8890088347D</string>
<string>8EC822A2086CE76C0088347D</string>
<string>8EC822A3086CE76C0088347D</string>
<string>8EC822A5086CE76C0088347D</string>
<string>8E035561086DC742005939B9</string>
<string>8E035562086DC742005939B9</string>
<string>8E035565086DC742005939B9</string>
<string>8E035566086DC742005939B9</string>
<string>8E035567086DC742005939B9</string>
<string>8E035569086DC742005939B9</string>
<string>8E03556A086DC742005939B9</string>
<string>8E78A0BE086DD58B007E14C5</string>
<string>8ECDC91A086DDDCD007D9727</string>
<string>8E4F5F72086E37260043E85E</string>
<string>8E4F5FB8086E38910043E85E</string>
<string>8E4F5FDE086E39190043E85E</string>
<string>8E0AA7B1086F226C00E31C8E</string>
<string>8E0AA7EC086F251100E31C8E</string>
<string>8E0AA808086F259400E31C8E</string>
<string>8E0AA809086F259400E31C8E</string>
<string>8E0AA812086F26A100E31C8E</string>
<string>8EC4BD460872EFD900ACF986</string>
<string>8EC4BD470872EFD900ACF986</string>
<string>8EC4BD480872EFD900ACF986</string>
<string>8EC4BD490872EFD900ACF986</string>
<string>8EC4BD4A0872EFD900ACF986</string>
<string>8EC4BD4B0872EFD900ACF986</string>
<string>8EC4BD4C0872EFD900ACF986</string>
<string>8EC4BD4D0872EFD900ACF986</string>
<string>8EC4BD4E0872EFD900ACF986</string>
<string>8EC4BD4F0872EFD900ACF986</string>
<string>8EC4BD500872EFD900ACF986</string>
</array>
<key>prevStack</key>
<array>
@ -461,10 +464,8 @@
<string>8E8BAEB308548C9600E9F14D</string>
<string>8E8BAEB708548C9600E9F14D</string>
<string>8E8BAF17085494E000E9F14D</string>
<string>8EB30D990854BEF1009EA87F</string>
<string>8E8F3FAE08554B8000BCF803</string>
<string>8E287E5D0855F35400562C66</string>
<string>8E287E5E0855F35400562C66</string>
<string>8EAB7553085621B10021C2BF</string>
<string>8EAB7554085621B10021C2BF</string>
<string>8EAB7555085621B10021C2BF</string>
@ -477,53 +478,35 @@
<string>8E8C7C90085EA5E30086DAC7</string>
<string>8E8C7C92085EA5E30086DAC7</string>
<string>8E8C7C98085EA5E30086DAC7</string>
<string>8E7DAAAA08673DF600615930</string>
<string>8E7DAAAB08673DF600615930</string>
<string>8E7DAB020867402D00615930</string>
<string>8E7DAB030867402D00615930</string>
<string>8E7DAB040867402D00615930</string>
<string>8E7DAB050867402D00615930</string>
<string>8E7DAB060867402D00615930</string>
<string>8E7DAB070867402D00615930</string>
<string>8E7DAB080867402D00615930</string>
<string>8E7DAB090867402D00615930</string>
<string>8E7DAB0A0867402D00615930</string>
<string>8E7DAB0B0867402D00615930</string>
<string>8E7DAB0C0867402D00615930</string>
<string>8E7DAB0D0867402D00615930</string>
<string>8E7DAB0E0867402D00615930</string>
<string>8E7DAB0F0867402D00615930</string>
<string>8E7DAB100867402D00615930</string>
<string>8E7DAB110867402D00615930</string>
<string>8E7DAB320867412700615930</string>
<string>8E7DAB330867412700615930</string>
<string>8E7DAB340867412700615930</string>
<string>8E7DAB350867412700615930</string>
<string>8E7DAB360867412700615930</string>
<string>8E7DAB470867421200615930</string>
<string>8E7DAB480867421200615930</string>
<string>8E7DAB490867421200615930</string>
<string>8E7DAB4A0867421200615930</string>
<string>8E7DAB4B0867421200615930</string>
<string>8E7DAB540867424400615930</string>
<string>8E7DAB550867424400615930</string>
<string>8E7DAB560867424400615930</string>
<string>8E7DAB570867424400615930</string>
<string>8E7DAB580867424400615930</string>
<string>8E7DAB7C086742EB00615930</string>
<string>8E7DAB7D086742EB00615930</string>
<string>8E7DAB7E086742EB00615930</string>
<string>8E7DAB7F086742EB00615930</string>
<string>8E7DAB80086742EB00615930</string>
<string>8E7DAB81086742EB00615930</string>
<string>8E7DAB82086742EB00615930</string>
<string>8E7DAB83086742EB00615930</string>
<string>8E7DAB84086742EB00615930</string>
<string>8E7DAB85086742EB00615930</string>
<string>8E7DABA10867470600615930</string>
<string>8E7DABA20867470600615930</string>
<string>8E7DABA30867470600615930</string>
<string>8E7DABA40867470600615930</string>
<string>8EC822B1086CE76C0088347D</string>
<string>8EC4BD510872EFD900ACF986</string>
<string>8EC4BD520872EFD900ACF986</string>
<string>8EC4BD530872EFD900ACF986</string>
<string>8EC4BD540872EFD900ACF986</string>
<string>8EC4BD550872EFD900ACF986</string>
<string>8EC4BD560872EFD900ACF986</string>
<string>8EC4BD570872EFD900ACF986</string>
<string>8EC4BD580872EFD900ACF986</string>
<string>8EC4BD590872EFD900ACF986</string>
<string>8EC4BD5A0872EFD900ACF986</string>
<string>8EC4BD5B0872EFD900ACF986</string>
<string>8EC4BD5C0872EFD900ACF986</string>
<string>8EC4BD5D0872EFD900ACF986</string>
<string>8EC4BD5E0872EFD900ACF986</string>
<string>8EC4BD5F0872EFD900ACF986</string>
<string>8EC4BD600872EFD900ACF986</string>
<string>8EC4BD610872EFD900ACF986</string>
<string>8EC4BD620872EFD900ACF986</string>
<string>8EC4BD630872EFD900ACF986</string>
<string>8EC4BD640872EFD900ACF986</string>
<string>8EC4BD650872EFD900ACF986</string>
<string>8EC4BD660872EFD900ACF986</string>
<string>8EC4BD670872EFD900ACF986</string>
<string>8EC4BD680872EFD900ACF986</string>
<string>8EC4BD690872EFD900ACF986</string>
<string>8EC4BD6A0872EFD900ACF986</string>
</array>
</dict>
<key>SplitCount</key>
@ -535,14 +518,14 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 0}, {816, 405}}</string>
<string>{{0, 0}, {816, 407}}</string>
<key>RubberWindowFrame</key>
<string>1 122 1024 624 0 0 1024 746 </string>
<string>0 120 1024 626 0 0 1024 746 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
<string>405pt</string>
<string>407pt</string>
</dict>
<dict>
<key>ContentConfiguration</key>
@ -555,9 +538,9 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 410}, {816, 173}}</string>
<string>{{0, 412}, {816, 173}}</string>
<key>RubberWindowFrame</key>
<string>1 122 1024 624 0 0 1024 746 </string>
<string>0 120 1024 626 0 0 1024 746 </string>
</dict>
<key>Module</key>
<string>XCDetailModule</string>
@ -581,9 +564,9 @@
</array>
<key>TableOfContents</key>
<array>
<string>8E7DAAAD08673DF600615930</string>
<string>8EC4BB6E0872D41D00ACF986</string>
<string>1CE0B1FE06471DED0097A5F4</string>
<string>8E7DAAAE08673DF600615930</string>
<string>8EC4BB6F0872D41D00ACF986</string>
<string>1CE0B20306471E060097A5F4</string>
<string>1CE0B20506471E060097A5F4</string>
</array>
@ -717,13 +700,13 @@
<integer>5</integer>
<key>WindowOrderList</key>
<array>
<string>1C0AD2B3069F1EA900FABCE6</string>
<string>1C530D57069F1CE1000CFCEE</string>
<string>8EF6FAA6082DA951006F7BE6</string>
<string>1C0AD2B3069F1EA900FABCE6</string>
<string>/Users/xugg/Projects/Cog/Cog.xcodeproj</string>
</array>
<key>WindowString</key>
<string>1 122 1024 624 0 0 1024 746 </string>
<string>0 120 1024 626 0 0 1024 746 </string>
<key>WindowTools</key>
<array>
<dict>
@ -739,12 +722,14 @@
<key>Dock</key>
<array>
<dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXProjectModuleGUID</key>
<string>1CD0528F0623707200166675</string>
<key>PBXProjectModuleLabel</key>
<string>SoundController.m</string>
<string>FlacFile.h</string>
<key>StatusBarVisibility</key>
<true/>
</dict>
@ -761,10 +746,10 @@
<string>342pt</string>
</dict>
<dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXBuildLogShowsTranscriptDefaultKey</key>
<string>{{0, 17}, {1024, 219}}</string>
<key>PBXProjectModuleGUID</key>
<string>XCMainBuildResultsModuleGUID</string>
<key>PBXProjectModuleLabel</key>
@ -802,7 +787,7 @@
<key>TableOfContents</key>
<array>
<string>8EF6FAA6082DA951006F7BE6</string>
<string>8E7DAAB408673E1600615930</string>
<string>8EC4BB950872E84700ACF986</string>
<string>1CD0528F0623707200166675</string>
<string>XCMainBuildResultsModuleGUID</string>
</array>
@ -844,8 +829,8 @@
<string>yes</string>
<key>sizes</key>
<array>
<string>{{0, 0}, {143, 190}}</string>
<string>{{143, 0}, {881, 190}}</string>
<string>{{0, 0}, {184, 171}}</string>
<string>{{184, 0}, {840, 171}}</string>
</array>
</dict>
<key>VerticalSplitView</key>
@ -860,8 +845,8 @@
<string>yes</string>
<key>sizes</key>
<array>
<string>{{0, 0}, {1024, 190}}</string>
<string>{{0, 190}, {1024, 394}}</string>
<string>{{0, 0}, {1024, 171}}</string>
<string>{{0, 171}, {1024, 413}}</string>
</array>
</dict>
</dict>
@ -908,14 +893,14 @@
<key>TableOfContents</key>
<array>
<string>1CD10A99069EF8BA00B06720</string>
<string>8EC12F0608566E3A00FC8AE7</string>
<string>8E4F5F78086E37260043E85E</string>
<string>1C162984064C10D400B95A72</string>
<string>8EC12F0708566E3A00FC8AE7</string>
<string>8EC12F0808566E3A00FC8AE7</string>
<string>8EC12F0908566E3A00FC8AE7</string>
<string>8EC12F0A08566E3A00FC8AE7</string>
<string>8EC12F0B08566E3A00FC8AE7</string>
<string>8EC12F0C08566E3A00FC8AE7</string>
<string>8E4F5F79086E37260043E85E</string>
<string>8E4F5F7A086E37260043E85E</string>
<string>8E4F5F7B086E37260043E85E</string>
<string>8E4F5F7C086E37260043E85E</string>
<string>8E4F5F7D086E37260043E85E</string>
<string>8E4F5F7E086E37260043E85E</string>
</array>
<key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.debug</string>
@ -947,7 +932,7 @@
<key>PBXProjectModuleGUID</key>
<string>1CDD528C0622207200134675</string>
<key>PBXProjectModuleLabel</key>
<string>SoundFile.m</string>
<string>PlaylistController.m</string>
<key>StatusBarVisibility</key>
<true/>
</dict>
@ -1003,8 +988,8 @@
<key>TableOfContents</key>
<array>
<string>1C530D57069F1CE1000CFCEE</string>
<string>8E7DAABB08673E5400615930</string>
<string>8E7DAABC08673E5400615930</string>
<string>8EC4BBCB0872E9F100ACF986</string>
<string>8EC4BBCC0872E9F100ACF986</string>
<string>1CDD528C0622207200134675</string>
<string>1CD0528E0623707200166675</string>
</array>
@ -1067,7 +1052,7 @@
<key>TableOfContents</key>
<array>
<string>8E7A9371083675B600771E14</string>
<string>8EC12F0D08566E3A00FC8AE7</string>
<string>8E4F5FBD086E38910043E85E</string>
<string>1C78EAAC065D492600B07095</string>
</array>
<key>WindowString</key>
@ -1162,9 +1147,9 @@
<key>TableOfContents</key>
<array>
<string>1C0AD2B3069F1EA900FABCE6</string>
<string>8E7DAB1B086740D100615930</string>
<string>8EC4BB700872D41D00ACF986</string>
<string>1CD0528B0623707200166675</string>
<string>8E7DAB1C086740D100615930</string>
<string>8EC4BB710872D41D00ACF986</string>
</array>
<key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.run</string>

File diff suppressed because it is too large Load Diff

View File

@ -69,6 +69,7 @@
},
{
ACTIONS = {
changeVolume = id;
next = id;
pause = id;
pauseResume = id;

View File

@ -19,9 +19,9 @@
</array>
<key>IBOpenObjects</key>
<array>
<integer>463</integer>
<integer>21</integer>
<integer>29</integer>
<integer>463</integer>
</array>
<key>IBSystem Version</key>
<string>8B15</string>

Binary file not shown.

View File

@ -93,7 +93,7 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>0.01</string>
<string>0.04</string>
<key>NSAppleScriptEnabled</key>
<string>YES</string>
<key>NSMainNibFile</key>

View File

@ -51,6 +51,8 @@
#define FLAC__U64L(x) x##LLU
#endif
#define VERSION "1.1.2"
/* VERSION should come from configure */
FLAC_API const char *FLAC__VERSION_STRING = VERSION;

Binary file not shown.

View File

@ -12,7 +12,7 @@ CNNFilter::CNNFilter(int nOrder, int nShift, int nVersion)
//m_bMMXAvailable = GetMMXAvailable();
m_AltiVecAvailable = IsAltiVecAvailable();
m_rbInput.Create(NN_WINDOW_ELEMENTS, m_nOrder);
m_rbDeltaM.Create(NN_WINDOW_ELEMENTS, m_nOrder);
m_paryM = new short [m_nOrder];

View File

@ -55,7 +55,7 @@ const ID3v1::StringHandler *ID3v1::Tag::TagPrivate::stringHandler = new StringHa
String ID3v1::StringHandler::parse(const ByteVector &data) const
{
return String(data, String::Latin1);
return clean(String(data, String::Latin1));
}
ByteVector ID3v1::StringHandler::render(const String &s) const
@ -63,6 +63,23 @@ ByteVector ID3v1::StringHandler::render(const String &s) const
return s.data(String::Latin1);
}
String ID3v1::StringHandler::clean(const String &s) const
{
String newString;
int i;
newString = s;
i = newString.size() - 1;
while (s[i] == ' ' && i >= 0)
{
newString[i] = '\0';
i--;
}
return newString;
}
////////////////////////////////////////////////////////////////////////////////
// public methods
////////////////////////////////////////////////////////////////////////////////

View File

@ -70,6 +70,10 @@ namespace TagLib {
* ISO-8859-1.
*/
virtual ByteVector render(const String &s) const;
//Fixes buggy taggers which do spaces instead of 0s.
String ID3v1::StringHandler::clean(const String &s) const;
};
//! The main class in the ID3v1 implementation

View File

@ -36,7 +36,7 @@
- (int)insertFile:(NSString *)filename atIndex:(int)index
{
if ([acceptableFileTypes containsObject:[filename pathExtension]] && [[NSFileManager defaultManager] fileExistsAtPath:filename])
if ([acceptableFileTypes containsObject:[[filename pathExtension] lowercaseString]] && [[NSFileManager defaultManager] fileExistsAtPath:filename])
{
PlaylistEntry *pe = [[PlaylistEntry alloc] init];
@ -101,9 +101,14 @@
count = 0;
if (sort == YES)
{
sortedFiles = [paths sortedArrayUsingSelector:@selector(caseInsensitiveCompare:)];
[paths release];
}
else
{
sortedFiles = paths;
}
for(i=0; i < [sortedFiles count]; i++)
{
@ -391,7 +396,7 @@
[currentEntry setCurrent:NO];
[pe setCurrent:YES];
[tableView scrollRowToVisible:[pe index]];
[tableView scrollRowToVisible:[(PlaylistEntry *)pe index]];
[pe retain];
[currentEntry release];

View File

@ -165,7 +165,9 @@
- (void)readInfo
{
SoundFile *sp;
SoundFile *sf = [SoundFile readInfo:filename];
sp= sf;
length = [sf length];
bitRate = [sf bitRate];
@ -176,7 +178,8 @@
[self setLengthString:length];
// DBLog(@"Length: %f bitRate: %i channels: %i bps: %i samplerate: %f", length, bitRate, channels, bitsPerSample, sampleRate);
[sf close];
//[(SoundFile *)sf close];
// [sp close];
}
- (NSString *)lengthString

19
README
View File

@ -1,14 +1,11 @@
---------------------------------------------------------------------------
NOTE ABOUT BUTTONS:
If you are under impression that the buttons are acting strange,
they actually may be acting as intended. The back button goes through
the history of the songs played, that is,it goes to the "previously played"
song, not just the one before it in the playlist. So, for example, if you
had shuffle mode on, and then turned it off, you could go back through the
songs played during shuffle mode. The forward button acts as expected, where
if shuffle is on, it will pick a random song, and if not it goes to the next
song in the playlist.
Please comment, whether you like this behaviour or not!
10.3 USERS!!!
If you are using 10.3.8 or below, I'd like to hear from you. I'm trying to
support all 10.3 systems, as I heard some people have had troubles with
10.3.9, and won't upgrade to it.
I can only fix this if people who actually run those systems wish to help
me debug Cog. Thanks!
---------------------------------------------------------------------------
Cog is released under the GPL. See COPYING for details.
@ -24,7 +21,7 @@ unsuitable for virgin ears.
All Cog code is copywrited by me, and is licensed under the GPL.
If you would like the photoshop sources for the various icons and
If you would like the photoshop sources for the various icons and
graphics, please send me an email, and I will be happy to get them to you.
Share and enjoy.

View File

@ -27,6 +27,7 @@ enum
kCogStopMessage,
kCogSeekMessage,
kCogEndOfPlaylistMessage,
kCogSetVolumeMessage,
//sound to controller
kCogCheckinMessage,
@ -127,6 +128,7 @@ enum
- (double)calculateTime:(unsigned long) pos;
- (unsigned long)calculatePos:(double) time;
- (void)setVolume:(float)v;
@end

39
Sound.m
View File

@ -59,6 +59,9 @@ static OSStatus Sound_ACInputProc(AudioConverterRef inAudioConverter, UInt32* io
Sound *sound = (Sound *)inUserData;
OSStatus err = noErr;
DBLog(@"Convert input proc");
DBLog(@"Numpackets: %i %i", *ioNumberDataPackets, ioData->mNumberBuffers);
int amountToWrite;
int amountWritten;
void *sourceBuf;
@ -67,6 +70,7 @@ static OSStatus Sound_ACInputProc(AudioConverterRef inAudioConverter, UInt32* io
sourceBuf = malloc(amountToWrite);
sound->conversionBuffer = sourceBuf;
DBLog(@"Requesting: %i", amountToWrite);
amountWritten = [sound->soundFile fillBuffer:sourceBuf ofSize:amountToWrite];
// DBLog(@"PACKET NUMBER RECEIVED: %i", *ioNumberDataPackets);
@ -74,7 +78,9 @@ static OSStatus Sound_ACInputProc(AudioConverterRef inAudioConverter, UInt32* io
ioData->mBuffers[0].mDataByteSize = amountWritten;
ioData->mBuffers[0].mNumberChannels = sound->sourceStreamFormat.mChannelsPerFrame;
ioData->mNumberBuffers = 1;
DBLog(@"Input complete");
return err;
}
@ -145,8 +151,8 @@ static OSStatus Sound_Renderer(void *inRefCon, AudioUnitRenderActionFlags *ioAc
readLock = [[NSLock alloc] init];
writeLock = [[NSLock alloc] init];
ringBuffer = [[VirtualRingBuffer alloc] initWithLength:RING_BUFFER_SIZE];
auxRingBuffer = [[VirtualRingBuffer alloc] initWithLength:RING_BUFFER_SIZE];
ringBuffer = [(VirtualRingBuffer *)[VirtualRingBuffer alloc] initWithLength:RING_BUFFER_SIZE];
auxRingBuffer = [(VirtualRingBuffer *)[VirtualRingBuffer alloc] initWithLength:RING_BUFFER_SIZE];
readRingBuffer = ringBuffer;
writeRingBuffer = ringBuffer;
@ -256,8 +262,7 @@ static OSStatus Sound_Renderer(void *inRefCon, AudioUnitRenderActionFlags *ioAc
NS_DURING
[portMessage sendBeforeDate:date];
NS_HANDLER
NSRunAlertPanel(@"Error Panel", @"%@", @"OK", nil, nil,
localException);
NSRunAlertPanel(@"Error Panel", @"%@", @"OK", nil, nil, localException);
NS_ENDHANDLER
[date release];
@ -352,6 +357,16 @@ static OSStatus Sound_Renderer(void *inRefCon, AudioUnitRenderActionFlags *ioAc
{
[self setPlaybackStatus:kCogStatusEndOfPlaylist];
}
else if (msgid == kCogSetVolumeMessage)
{
NSArray* components = [portMessage components];
NSData *data = [components objectAtIndex:0];
float vol;
vol = (*(float *)[data bytes]);
[self setVolume:vol];
}
}
- (void)startPositionTimer
@ -750,5 +765,19 @@ static OSStatus Sound_Renderer(void *inRefCon, AudioUnitRenderActionFlags *ioAc
return YES;
}
- (void)setVolume:(float)v
{
DBLog(@"Setting volume to: %f", v);
//Get the current stream format of the output
OSStatus err = AudioUnitSetParameter (outputUnit,
kHALOutputParam_Volume,
kAudioUnitScope_Global,
0,
v * 0.01f,
0);
DBLog(@"Error: %lu", err);
}
@end

View File

@ -33,6 +33,7 @@
}
- (IBAction)toggleShowTimeRemaining:(id)sender;
- (IBAction)changeVolume:(id)sender;
- (IBAction)playPauseResume:(id)sender;
- (IBAction)pauseResume:(id)sender;

View File

@ -209,6 +209,12 @@
[playButton setAlternateImage:alt];
}
- (IBAction)changeVolume:(id)sender
{
float v = (float)[sender floatValue];
[self sendPortMessage:kCogSetVolumeMessage withData:&v ofSize:sizeof(float)];
}
- (IBAction)toggleShowTimeRemaining:(id)sender
{
NSString *text;

View File

@ -68,7 +68,9 @@
- (BOOL)readInfo:(const char *)filename
{
return [self open:filename]; //they both would do the same damn thing
[self open:filename];
return YES;
}
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size

View File

@ -7,7 +7,7 @@
//
#import <Cocoa/Cocoa.h>
#import "flac/all.h"
#import "FLAC/all.h"
#import "SoundFile.h"
#define SAMPLES_PER_WRITE 512

View File

@ -66,7 +66,9 @@
- (BOOL)readInfo:(const char *)filename
{
return [self open:filename]; //does the same damn thing
[self open:filename];
return YES;
}
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size

View File

@ -34,19 +34,7 @@
- (BOOL)readInfo:(const char *)filename
{
int err;
CAPEInfo apeInfo(&err, filename, NULL);
frequency = apeInfo.GetInfo(APE_INFO_SAMPLE_RATE);
bitsPerSample = apeInfo.GetInfo(APE_INFO_BITS_PER_SAMPLE);
channels = apeInfo.GetInfo(APE_INFO_CHANNELS);
totalSize = apeInfo.GetInfo(APE_INFO_TOTAL_BLOCKS)*bitsPerSample/8*channels;
bitRate = apeInfo.GetInfo(APE_INFO_AVERAGE_BITRATE);
DBLog(@"INFO READ: %i %i %i %i", frequency, bitsPerSample, channels, totalSize);
return YES;
return [self open:filename];
}
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size

View File

@ -54,7 +54,8 @@ BOOL CanSeekProc(void *data)
//real ish
- (BOOL)open:(const char *)filename
{
[self readInfo:filename];
if ([self readInfo:filename] == NO)
return NO;
/* instantiate a decoder with our file reader */
mpc_decoder_setup(&decoder, &reader);
@ -91,7 +92,7 @@ BOOL CanSeekProc(void *data)
channels = 2;
totalSize = mpc_streaminfo_get_length_samples(&info)*channels*bitsPerSample/8;
return YES;
}

View File

@ -13,10 +13,7 @@
- (BOOL)open:(const char *)filename
{
BOOL r;
r = [self readInfo:filename];
if (!r)
if ([self readInfo:filename] == NO)
return NO;
bufferSize = shn_get_buffer_block_size(handle, 512);
@ -54,6 +51,7 @@
bitRate = (int)((double)totalSize/((double)length/1000.0));
DBLog(@"Bitrate; %i", bitRate);
return YES;
}

View File

@ -42,7 +42,7 @@
- (BOOL)readInfo:(const char *)filename; //for getting information
- (UInt32)fillBuffer:(void *)buf ofSize:(UInt32)size;
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size;
//- (BOOL)seek:(unsigned long)position;
- (double)seekToTime:(double)milliseconds;

View File

@ -8,6 +8,15 @@
#import "SoundFile.h"
#import "FlacFile.h"
#import "AACFile.h"
#import "MonkeysFile.h"
#import "MPEGFile.h"
#import "MusepackFile.h"
#import "VorbisFile.h"
#import "WaveFile.h"
#import "WavPackFile.h"
#import "ShnFile.h"
@implementation SoundFile
@ -38,10 +47,11 @@
//this should be done by the soundfile....not seek...
- (double)seekToTime:(double)milliseconds
{
return -1.0;
}
/*
@class FlacFile;
@class MonkeysFile;
@class MPEGFile;
@ -51,44 +61,46 @@
@class AACFile;
@class WavPackFile;
@class ShnFile;
*/
+ (SoundFile *)soundFileFromFilename:(NSString *)filename
{
SoundFile *soundFile;
if ([[filename pathExtension] isEqualToString:@"wav"] || [[filename pathExtension] isEqualToString:@"aiff"] || [[filename pathExtension] isEqualToString:@"aif"])
DBLog(@"FILENAME: %@", [filename pathExtension]);
if (([[filename pathExtension] caseInsensitiveCompare:@"wav"] == NSOrderedSame) || ([[filename pathExtension] caseInsensitiveCompare:@"aiff"] == NSOrderedSame) || ([[filename pathExtension] caseInsensitiveCompare:@"aif"] == NSOrderedSame))
{
soundFile = [[WaveFile alloc] init];
}
else if ([[filename pathExtension] isEqualToString:@"ogg"])
else if ([[filename pathExtension] caseInsensitiveCompare:@"ogg"] == NSOrderedSame)
{
soundFile = [[VorbisFile alloc] init];
}
else if ([[filename pathExtension] isEqualToString:@"mpc"])
else if ([[filename pathExtension] caseInsensitiveCompare:@"mpc"] == NSOrderedSame)
{
soundFile = [[MusepackFile alloc] init];
}
else if ([[filename pathExtension] isEqualToString:@"flac"])
else if ([[filename pathExtension] caseInsensitiveCompare:@"flac"] == NSOrderedSame)
{
soundFile = [[FlacFile alloc] init];
}
else if ([[filename pathExtension] isEqualToString:@"ape"])
else if ([[filename pathExtension] caseInsensitiveCompare:@"ape"] == NSOrderedSame)
{
soundFile = [[MonkeysFile alloc] init];
}
else if ([[filename pathExtension] isEqualToString:@"mp3"])
else if ([[filename pathExtension] caseInsensitiveCompare:@"mp3"] == NSOrderedSame)
{
soundFile = [[MPEGFile alloc] init];
}
else if ([[filename pathExtension] isEqualToString:@"aac"])
else if ([[filename pathExtension] caseInsensitiveCompare:@"aac"] == NSOrderedSame)
{
soundFile = [[AACFile alloc] init];
}
else if ([[filename pathExtension] isEqualToString:@"wv"])
else if ([[filename pathExtension] caseInsensitiveCompare:@"wv"] == NSOrderedSame)
{
soundFile = [[WavPackFile alloc] init];
}
else if ([[filename pathExtension] isEqualToString:@"shn"])
else if ([[filename pathExtension] caseInsensitiveCompare:@"shn"] == NSOrderedSame)
{
soundFile = [[ShnFile alloc] init];
}
@ -122,6 +134,9 @@
soundFile = [SoundFile soundFileFromFilename:filename];
b = [soundFile readInfo:[filename UTF8String]];
[soundFile close];
if (b == YES)
return soundFile;
@ -165,7 +180,7 @@
{
}
- (UInt32)fillBuffer:(void *)buf ofSize:(UInt32)size
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size
{
return 0;
}

View File

@ -42,7 +42,9 @@
- (BOOL)readInfo:(const char *)filename
{
return [self open:filename]; //automatically invokes readInfo
[self open:filename]; //automatically invokes readInfo
return YES;
}
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size

View File

@ -11,12 +11,6 @@
@implementation WavPackFile
- (UInt32)frequency
{
//HACK ALERT
return frequency/2;
}
- (BOOL)open:(const char *)filename
{
int open_flags = 0;
@ -27,8 +21,10 @@
return NO;
channels = WavpackGetNumChannels(wpc);
bitsPerSample = WavpackGetBitsPerSample(wpc);
frequency = WavpackGetSampleRate(wpc)*2;
// bitsPerSample = WavpackGetBitsPerSample(wpc);
bitsPerSample = 32;
frequency = WavpackGetSampleRate(wpc);
int samples;
samples = WavpackGetNumSamples(wpc);
@ -36,14 +32,16 @@
bitRate = (int)(WavpackGetAverageBitrate(wpc, TRUE)/1000.0);
isBigEndian = YES;
//isBigEndian = YES;
return YES;
}
- (BOOL)readInfo:(const char *)filename
{
return [self open:filename]; //does the same damn thing
[self open:filename]; //does the same damn thing
return YES;
}
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size
@ -56,8 +54,14 @@
n = WavpackUnpackSamples(wpc, buf, numsamples);
n *= 4*channels;
// DBLog(@"Read: %i", n);
int i;
for (i = 0; i < n/2; i++)
{
// ((UInt32 *)buf)[i] = CFSwapInt32LittleToHost(((UInt32 *)buf)[i]);
((UInt16 *)buf)[i] = CFSwapInt16LittleToHost(((UInt16 *)buf)[i]);
}
return n;
}

View File

@ -83,7 +83,9 @@
- (BOOL)readInfo:(const char *)filename
{
return [self open:filename];
[self open:filename];
return YES;
}
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size