diff --git a/Plugins/MIDI/MIDI.xcodeproj/project.pbxproj b/Plugins/MIDI/MIDI.xcodeproj/project.pbxproj index 83d343074..36069124b 100644 --- a/Plugins/MIDI/MIDI.xcodeproj/project.pbxproj +++ b/Plugins/MIDI/MIDI.xcodeproj/project.pbxproj @@ -14,11 +14,16 @@ 830922102640D3E4005855C1 /* libintl.8.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 830922042640CC16005855C1 /* libintl.8.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; 830922132640D3F1005855C1 /* libpcre.1.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 830922012640CC16005855C1 /* libpcre.1.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; 830922152640D3F7005855C1 /* libreadline.8.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 830921FE2640CC16005855C1 /* libreadline.8.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; - 830922162640D3FD005855C1 /* libsndfile.1.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 830922002640CC16005855C1 /* libsndfile.1.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; 830922192640D45D005855C1 /* libfluidsynth.3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 830921FB2640CC16005855C1 /* libfluidsynth.3.dylib */; }; 833741F126463EE5004E43ED /* libiconv.2.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 833741F026463ECF004E43ED /* libiconv.2.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; 833741F226463EE8004E43ED /* libncurses.6.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 833741EF26463ECF004E43ED /* libncurses.6.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; 833741F326463EEC004E43ED /* libSDL2-2.0.0.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 833741EE26463ECF004E43ED /* libSDL2-2.0.0.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; + 8337420C26467870004E43ED /* libFLAC.8.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8337420226467839004E43ED /* libFLAC.8.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; + 8337420E2646787C004E43ED /* libopus.0.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8337420326467839004E43ED /* libopus.0.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; + 8337420F26467888004E43ED /* libogg.0.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8337420426467839004E43ED /* libogg.0.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; + 833742102646788E004E43ED /* libvorbis.0.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8337420526467839004E43ED /* libvorbis.0.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; + 8337421126467893004E43ED /* libsndfile.1.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 830922002640CC16005855C1 /* libsndfile.1.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; + 83374213264678A4004E43ED /* libvorbisenc.2.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8337420626467839004E43ED /* libvorbisenc.2.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; 834BE91B1DE407CB00A07DCD /* resampler.c in Sources */ = {isa = PBXBuildFile; fileRef = 834BE9191DE407CB00A07DCD /* resampler.c */; }; 83686AAC1C5C69D400671C7A /* AUPlayerView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 83686AAB1C5C69D400671C7A /* AUPlayerView.mm */; }; 83686AB11C5C783000671C7A /* CoreAudioKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 83686AB01C5C783000671C7A /* CoreAudioKit.framework */; }; @@ -75,16 +80,21 @@ dstPath = ""; dstSubfolderSpec = 6; files = ( + 8337420C26467870004E43ED /* libFLAC.8.dylib in CopyFiles */, 8309220D2640D3CF005855C1 /* libfluidsynth.3.dylib in CopyFiles */, 8309220F2640D3D8005855C1 /* libgthread-2.0.0.dylib in CopyFiles */, 8309220E2640D3D3005855C1 /* libglib-2.0.0.dylib in CopyFiles */, 833741F126463EE5004E43ED /* libiconv.2.dylib in CopyFiles */, 830922102640D3E4005855C1 /* libintl.8.dylib in CopyFiles */, 833741F226463EE8004E43ED /* libncurses.6.dylib in CopyFiles */, + 8337420F26467888004E43ED /* libogg.0.dylib in CopyFiles */, + 8337420E2646787C004E43ED /* libopus.0.dylib in CopyFiles */, 830922132640D3F1005855C1 /* libpcre.1.dylib in CopyFiles */, 830922152640D3F7005855C1 /* libreadline.8.dylib in CopyFiles */, 833741F326463EEC004E43ED /* libSDL2-2.0.0.dylib in CopyFiles */, - 830922162640D3FD005855C1 /* libsndfile.1.dylib in CopyFiles */, + 8337421126467893004E43ED /* libsndfile.1.dylib in CopyFiles */, + 833742102646788E004E43ED /* libvorbis.0.dylib in CopyFiles */, + 83374213264678A4004E43ED /* libvorbisenc.2.dylib in CopyFiles */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -103,6 +113,11 @@ 833741EE26463ECF004E43ED /* libSDL2-2.0.0.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = "libSDL2-2.0.0.dylib"; path = "../../ThirdParty/FluidSynth/libSDL2-2.0.0.dylib"; sourceTree = ""; }; 833741EF26463ECF004E43ED /* libncurses.6.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libncurses.6.dylib; path = ../../ThirdParty/FluidSynth/libncurses.6.dylib; sourceTree = ""; }; 833741F026463ECF004E43ED /* libiconv.2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libiconv.2.dylib; path = ../../ThirdParty/FluidSynth/libiconv.2.dylib; sourceTree = ""; }; + 8337420226467839004E43ED /* libFLAC.8.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libFLAC.8.dylib; path = ../../ThirdParty/FluidSynth/libFLAC.8.dylib; sourceTree = ""; }; + 8337420326467839004E43ED /* libopus.0.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libopus.0.dylib; path = ../../ThirdParty/FluidSynth/libopus.0.dylib; sourceTree = ""; }; + 8337420426467839004E43ED /* libogg.0.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libogg.0.dylib; path = ../../ThirdParty/FluidSynth/libogg.0.dylib; sourceTree = ""; }; + 8337420526467839004E43ED /* libvorbis.0.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libvorbis.0.dylib; path = ../../ThirdParty/FluidSynth/libvorbis.0.dylib; sourceTree = ""; }; + 8337420626467839004E43ED /* libvorbisenc.2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libvorbisenc.2.dylib; path = ../../ThirdParty/FluidSynth/libvorbisenc.2.dylib; sourceTree = ""; }; 833F68431CDBCABE00AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = ""; }; 834BE9191DE407CB00A07DCD /* resampler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = resampler.c; sourceTree = ""; }; 834BE91A1DE407CB00A07DCD /* resampler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = resampler.h; sourceTree = ""; }; @@ -163,8 +178,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 83686AB11C5C783000671C7A /* CoreAudioKit.framework in Frameworks */, 8398F2E01C438C7D00EB9639 /* AudioUnit.framework in Frameworks */, + 83686AB11C5C783000671C7A /* CoreAudioKit.framework in Frameworks */, 83B06701180D5747008E3612 /* midi_processing.framework in Frameworks */, 83B0668B180D5668008E3612 /* Cocoa.framework in Frameworks */, 830922192640D45D005855C1 /* libfluidsynth.3.dylib in Frameworks */, @@ -255,16 +270,21 @@ 83B0668F180D5668008E3612 /* AppKit.framework */, 83B0668E180D5668008E3612 /* CoreData.framework */, 83B0668D180D5668008E3612 /* Foundation.framework */, + 8337420226467839004E43ED /* libFLAC.8.dylib */, 830921FB2640CC16005855C1 /* libfluidsynth.3.dylib */, 830922022640CC16005855C1 /* libglib-2.0.0.dylib */, 830921FF2640CC16005855C1 /* libgthread-2.0.0.dylib */, 833741F026463ECF004E43ED /* libiconv.2.dylib */, 830922042640CC16005855C1 /* libintl.8.dylib */, 833741EF26463ECF004E43ED /* libncurses.6.dylib */, + 8337420426467839004E43ED /* libogg.0.dylib */, + 8337420326467839004E43ED /* libopus.0.dylib */, 830922012640CC16005855C1 /* libpcre.1.dylib */, 830921FE2640CC16005855C1 /* libreadline.8.dylib */, 833741EE26463ECF004E43ED /* libSDL2-2.0.0.dylib */, 830922002640CC16005855C1 /* libsndfile.1.dylib */, + 8337420526467839004E43ED /* libvorbis.0.dylib */, + 8337420626467839004E43ED /* libvorbisenc.2.dylib */, ); name = "Other Frameworks"; sourceTree = ""; diff --git a/Plugins/MIDI/MIDI/SFPlayer.cpp b/Plugins/MIDI/MIDI/SFPlayer.cpp index 37b6b1768..54e2b6da7 100644 --- a/Plugins/MIDI/MIDI/SFPlayer.cpp +++ b/Plugins/MIDI/MIDI/SFPlayer.cpp @@ -171,7 +171,7 @@ bool SFPlayer::startup() size_t dot = sSoundFontName.find_last_of( '.' ); if ( dot != std::string::npos ) ext.assign( sSoundFontName.begin() + dot + 1, sSoundFontName.end() ); - if ( !strcasecmp( ext.c_str(), "sf2" ) ) + if ( !strcasecmp( ext.c_str(), "sf2" ) || !strcasecmp( ext.c_str(), "sf3" ) ) { for (unsigned i = 0; i < 3; ++i) { diff --git a/Preferences/Preferences/MIDIPane.m b/Preferences/Preferences/MIDIPane.m index 2b85618bc..d308fb1a0 100644 --- a/Preferences/Preferences/MIDIPane.m +++ b/Preferences/Preferences/MIDIPane.m @@ -24,7 +24,7 @@ - (IBAction)setSoundFont:(id)sender { - NSArray *fileTypes = @[@"sf2", @"sflist"]; + NSArray *fileTypes = @[@"sf3", @"sf2", @"sflist"]; NSOpenPanel * panel = [NSOpenPanel openPanel]; [panel setAllowsMultipleSelection:NO]; [panel setCanChooseDirectories:NO]; diff --git a/ThirdParty/FluidSynth/libFLAC.8.dylib b/ThirdParty/FluidSynth/libFLAC.8.dylib new file mode 100755 index 000000000..9dff2215b Binary files /dev/null and b/ThirdParty/FluidSynth/libFLAC.8.dylib differ diff --git a/ThirdParty/FluidSynth/libfluidsynth.3.dylib b/ThirdParty/FluidSynth/libfluidsynth.3.dylib index 72af7494e..4a8f7ac92 100755 Binary files a/ThirdParty/FluidSynth/libfluidsynth.3.dylib and b/ThirdParty/FluidSynth/libfluidsynth.3.dylib differ diff --git a/ThirdParty/FluidSynth/libogg.0.dylib b/ThirdParty/FluidSynth/libogg.0.dylib new file mode 100755 index 000000000..5d0faebe4 Binary files /dev/null and b/ThirdParty/FluidSynth/libogg.0.dylib differ diff --git a/ThirdParty/FluidSynth/libopus.0.dylib b/ThirdParty/FluidSynth/libopus.0.dylib new file mode 100755 index 000000000..4056d8696 Binary files /dev/null and b/ThirdParty/FluidSynth/libopus.0.dylib differ diff --git a/ThirdParty/FluidSynth/libsndfile.1.dylib b/ThirdParty/FluidSynth/libsndfile.1.dylib index aecdda8cb..a14009982 100755 Binary files a/ThirdParty/FluidSynth/libsndfile.1.dylib and b/ThirdParty/FluidSynth/libsndfile.1.dylib differ diff --git a/ThirdParty/FluidSynth/libvorbis.0.dylib b/ThirdParty/FluidSynth/libvorbis.0.dylib new file mode 100755 index 000000000..44fc8e447 Binary files /dev/null and b/ThirdParty/FluidSynth/libvorbis.0.dylib differ diff --git a/ThirdParty/FluidSynth/libvorbisenc.2.dylib b/ThirdParty/FluidSynth/libvorbisenc.2.dylib new file mode 100755 index 000000000..c17dbb2cc Binary files /dev/null and b/ThirdParty/FluidSynth/libvorbisenc.2.dylib differ