mirror of
https://github.com/cookiengineer/audacity
synced 2025-08-01 00:19:27 +02:00
Rework of the gstreamer importer.
To test on Windows: 1) Install gstreamer 1.0 devel and runtime 2) Add an GSTREAMER_SDK environment variable which points to the gstreamer base directory 3) Uncomment USE_GSTREAMER in configwin.h
This commit is contained in:
parent
57510415e6
commit
4c771843c2
@ -71,7 +71,6 @@ It handles initialization and termination by subclassing wxApp.
|
||||
#include "effects/VST/VSTEffect.h"
|
||||
#include "widgets/ASlider.h"
|
||||
#include "FFmpeg.h"
|
||||
#include "GStreamerLoader.h"
|
||||
#include "Internat.h"
|
||||
#include "LangChoice.h"
|
||||
#include "Languages.h"
|
||||
@ -1264,10 +1263,6 @@ bool AudacityApp::OnInit()
|
||||
FFmpegStartup();
|
||||
#endif
|
||||
|
||||
#ifdef USE_GSTREAMER
|
||||
GStreamerStartup();
|
||||
#endif
|
||||
|
||||
mImporter = new Importer;
|
||||
|
||||
//
|
||||
|
@ -1,244 +0,0 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
GStreamerLoader.cpp
|
||||
|
||||
Audacity(R) is copyright (c) 1999-2009 Audacity Team.
|
||||
License: GPL v2. See License.txt.
|
||||
|
||||
******************************************************************//**
|
||||
|
||||
\class GStreamerLoader
|
||||
\brief Class used to dynamically load and initialize GStreamer
|
||||
|
||||
*//*******************************************************************/
|
||||
|
||||
#include "Audacity.h" // for config*.h
|
||||
#include "GStreamerLoader.h"
|
||||
#include "import/ImportGStreamer.h"
|
||||
#include "AudacityApp.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#ifdef _MSC_VER
|
||||
#undef THIS_FILE
|
||||
static char*THIS_FILE= __FILE__;
|
||||
#define new new(_NORMAL_BLOCK, THIS_FILE, __LINE__)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(USE_GSTREAMER)
|
||||
/// GStreamer support may or may not be compiled in,
|
||||
/// but Preferences dialog requires this function nevertheless
|
||||
wxString GetGStreamerVersion(wxWindow *parent)
|
||||
{
|
||||
return wxString(wxT("GStreamer support is not compiled in"));
|
||||
}
|
||||
|
||||
void GStreamerStartup()
|
||||
{
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
void GLogHandlerFunction(const gchar *log_domain, GLogLevelFlags log_level, const gchar *message, gpointer user_data);
|
||||
|
||||
GStreamerLoader *GStreamerInst = NULL;
|
||||
|
||||
// This function should dump stream information to debug log.
|
||||
gboolean LogStructure(GQuark field_id, const GValue *value, gpointer user_data)
|
||||
{
|
||||
GString *strinfo = (GString*)user_data;
|
||||
// Get a name of a field
|
||||
const gchar *field_name = g_quark_to_string(field_id);
|
||||
|
||||
gchar *value_str_value = gst_value_serialize(value);
|
||||
|
||||
// TODO: push this into future over and over until wxLogMessage becomes threadsafe (code already in trunk)
|
||||
#if wxCHECK_VERSION(2, 9, 0)
|
||||
wxLogMessage(wxT("Field %s = %s"), wxString::FromUTF8(field_name).c_str(), wxString::FromUTF8(value_str_value).c_str());
|
||||
#endif
|
||||
if (strinfo)
|
||||
g_string_append_printf(strinfo, " %s[%s]",field_name, value_str_value);
|
||||
g_free(value_str_value);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
void GstGLogHandlerFunction(const gchar *string)
|
||||
{
|
||||
#if 0
|
||||
static bool runtimedebugvar = false;
|
||||
if (runtimedebugvar)
|
||||
{
|
||||
FILE *f;
|
||||
errno_t err = 1;
|
||||
while (err != 0)
|
||||
err = fopen_s(&f,"gstreamer.debug.log","ab");
|
||||
fprintf(f,"%s",string);
|
||||
fclose(f);
|
||||
}
|
||||
#else
|
||||
g_printerr("%s",string);
|
||||
#endif
|
||||
}
|
||||
|
||||
bool GStreamerLoader::LoadGStreamer(bool showerror)
|
||||
{
|
||||
// First, we need to intialize GLib threading system
|
||||
if (!g_thread_supported())
|
||||
g_thread_init(NULL);
|
||||
else
|
||||
return false;
|
||||
|
||||
// This will be used in future to give GStreamer additional arguments
|
||||
wxString arguments = wxEmptyString;
|
||||
if (gPrefs) {
|
||||
arguments = gPrefs->Read(wxT("/GStreamer/Arguments"), wxEmptyString);
|
||||
}
|
||||
|
||||
// TODO: convert argument string into argc/argv pair.
|
||||
// TODO: Also, convert prefs control states into arguments and append to argument string
|
||||
int argc = 0;
|
||||
char **argv = NULL;
|
||||
|
||||
wxLogMessage(wxT("Audacity is built against GStreamer version %d.%d.%d-%d"),GST_VERSION_MAJOR,GST_VERSION_MINOR,GST_VERSION_MICRO,GST_VERSION_NANO);
|
||||
wxLogMessage(wxT("Initializing GStreamer with arguments: \"%s\""),arguments.c_str());
|
||||
GError *errorptr = NULL;
|
||||
|
||||
if (!gst_init_check(&argc, &argv,&errorptr))
|
||||
{
|
||||
wxLogMessage(wxT("Failed to initialize GStreamer. Error %d: %s"),errorptr->code, wxString::FromUTF8(errorptr->message).c_str());
|
||||
g_error_free(errorptr);
|
||||
return false;
|
||||
}
|
||||
|
||||
gst_version(&major, &minor, µ, &nano);
|
||||
wxLogMessage(wxT("Linked to GStreamer version %d.%d.%d-%d"),major,minor,micro,nano);
|
||||
|
||||
g_set_printerr_handler(GstGLogHandlerFunction);
|
||||
// Debugging makes GStreamer roughly 4-5 times slower when it is not writing anything and 10 times slower with it writes info into a file
|
||||
#if 0
|
||||
gst_debug_set_active(TRUE);
|
||||
gst_debug_set_default_threshold(GST_LEVEL_LOG);
|
||||
#endif
|
||||
mGStreamerLoaded = true;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// Obtains a list of supported extensions from typefind factories
|
||||
// TODO: improve the list. It is obviously incomplete and also contains unuseful extensions (such as .jpg)
|
||||
wxArrayString GStreamerLoader::GetExtensions()
|
||||
{
|
||||
wxArrayString result;
|
||||
if (!mGStreamerLoaded) return result;
|
||||
|
||||
GList *factories, *list;
|
||||
factories = list = gst_type_find_factory_get_list();
|
||||
while (list)
|
||||
{
|
||||
GstTypeFindFactory *factory = GST_TYPE_FIND_FACTORY(list->data);
|
||||
list = g_list_next(list);
|
||||
|
||||
gchar **extensions = gst_type_find_factory_get_extensions(factory);
|
||||
if (!extensions)
|
||||
continue;
|
||||
for (gint i = 0; extensions[i]; i++)
|
||||
{
|
||||
wxString extension = wxString::FromUTF8(extensions[i]);
|
||||
if (result.Index(extension.c_str(), false) == wxNOT_FOUND)
|
||||
{
|
||||
result.Add(extension);
|
||||
}
|
||||
}
|
||||
}
|
||||
gst_plugin_feature_list_free(factories);
|
||||
|
||||
result.Sort();
|
||||
wxString extensions = wxT("Extensions:");
|
||||
for (size_t i = 0; i < result.GetCount(); i++)
|
||||
extensions = extensions + wxT(" ") + result[i];
|
||||
wxLogMessage(wxT("%s"),extensions.c_str());
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
// This one is for Glib.
|
||||
void GLogHandlerFunction(const gchar *log_domain, GLogLevelFlags log_level, const gchar *message, gpointer user_data)
|
||||
{
|
||||
wxString level;
|
||||
switch (log_level)
|
||||
{
|
||||
case G_LOG_LEVEL_CRITICAL:
|
||||
level = wxT("Critical");
|
||||
break;
|
||||
case G_LOG_LEVEL_DEBUG:
|
||||
level = wxT("Debug");
|
||||
break;
|
||||
case G_LOG_LEVEL_ERROR:
|
||||
level = wxT("Error");
|
||||
break;
|
||||
case G_LOG_LEVEL_INFO:
|
||||
level = wxT("Info");
|
||||
break;
|
||||
case G_LOG_LEVEL_WARNING:
|
||||
level = wxT("Warning");
|
||||
break;
|
||||
case G_LOG_LEVEL_MESSAGE:
|
||||
level = wxT("Message");
|
||||
break;
|
||||
default:
|
||||
level = wxT("Unknown");
|
||||
}
|
||||
#if wxCHECK_VERSION(2, 9, 0)
|
||||
wxLogMessage(_("GStreamer %s: %s"),level.c_str(),wxString::FromUTF8(message).c_str());
|
||||
#endif
|
||||
}
|
||||
|
||||
void GStreamerStartup()
|
||||
{
|
||||
GStreamerInst = new GStreamerLoader;
|
||||
guint handler_id = g_log_set_handler(NULL,GLogLevelFlags(G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL | G_LOG_FLAG_RECURSION),GLogHandlerFunction,(gpointer)GStreamerInst);
|
||||
|
||||
bool enabled = false;
|
||||
gPrefs->Read(wxT("/GStreamer/Enabled"),&enabled);
|
||||
#if _DEBUG //experimental debugging
|
||||
enabled = true;
|
||||
#endif
|
||||
// 'false' means that no errors should be shown whatsoever
|
||||
if (enabled && !GStreamerInst->LoadGStreamer(false))
|
||||
{
|
||||
wxMessageBox(_("GStreamer was configured in preferences and successfully loaded before,\n\
|
||||
but this time Audacity failed to load it at startup.\n\
|
||||
You may want to go back to Preferences > Libraries and re-configure it."),
|
||||
_("GStreamer startup failed"));
|
||||
delete GStreamerInst;
|
||||
}
|
||||
}
|
||||
|
||||
wxString GetGStreamerVersion(wxWindow *parent)
|
||||
{
|
||||
wxString versionString = wxT("GStreamer is not found");
|
||||
|
||||
if (GStreamerInst && GStreamerInst->Loaded()) {
|
||||
versionString = GStreamerInst->GetVersion();
|
||||
}
|
||||
|
||||
return versionString;
|
||||
}
|
||||
//----------------------------------------------------------------------------
|
||||
// GStreamerLoader
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
GStreamerLoader::GStreamerLoader()
|
||||
{
|
||||
mGStreamerLoaded = false;
|
||||
major = minor = micro = nano = 0;
|
||||
}
|
||||
|
||||
GStreamerLoader::~GStreamerLoader()
|
||||
{
|
||||
};
|
||||
|
||||
#endif //USE_GSTREAMER
|
@ -1,103 +0,0 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
GStreamerLoader.h
|
||||
|
||||
Audacity(R) is copyright (c) 1999-2008 Audacity Team.
|
||||
License: GPL v2. See License.txt.
|
||||
|
||||
******************************************************************//**
|
||||
|
||||
Describes shared object that is used to access GStreamer
|
||||
|
||||
*//*******************************************************************/
|
||||
|
||||
#if !defined(__AUDACITY_GSTREAMER__)
|
||||
#define __AUDACITY_GSTREAMER__
|
||||
|
||||
#include "Audacity.h"
|
||||
/* rather earlier than normal, but pulls in config*.h and other program stuff
|
||||
* we need for the next bit */
|
||||
#include <wx/string.h>
|
||||
#include <wx/dynlib.h>
|
||||
#include <wx/log.h> // for wxLogNull
|
||||
#include <wx/msgdlg.h> // for wxMessageBox
|
||||
#include <wx/utils.h>
|
||||
#include "widgets/LinkingHtmlWindow.h"
|
||||
#include "FileDialog.h"
|
||||
#include "ShuttleGui.h"
|
||||
#include "Prefs.h"
|
||||
#include <wx/checkbox.h>
|
||||
#include <wx/textctrl.h>
|
||||
#include <wx/thread.h>
|
||||
|
||||
class GStreamerLoader;
|
||||
|
||||
extern GStreamerLoader *GStreamerInst;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Get GStreamer version
|
||||
//----------------------------------------------------------------------------
|
||||
wxString GetGStreamerVersion(wxWindow *parent);
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Attempt to load and enable/disable GStreamer at startup
|
||||
//----------------------------------------------------------------------------
|
||||
void GStreamerStartup();
|
||||
|
||||
/* From here on in, this stuff only applies when gstreamer is available */
|
||||
#if defined(USE_GSTREAMER)
|
||||
|
||||
// On Windows we don't have configure script to turn this on or off,
|
||||
// so let's use msw-specific pragma to add required libraries.
|
||||
// Of course, library search path still has to be updated manually
|
||||
# if defined(__WXMSW__)
|
||||
# pragma comment(lib,"libgstreamer-0.10.lib")
|
||||
# pragma comment(lib,"libgstapp-0.10.lib")
|
||||
# pragma comment(lib,"libgstbase-0.10.lib")
|
||||
# pragma comment(lib,"glib-2.0.lib")
|
||||
# pragma comment(lib,"gobject-2.0.lib")
|
||||
# pragma comment(lib,"gthread-2.0.lib")
|
||||
# pragma comment(lib,"libxml2.lib")
|
||||
# endif
|
||||
extern "C" {
|
||||
# include <gst/gst.h>
|
||||
# include <glib.h>
|
||||
# include <glib/gstdio.h>
|
||||
}
|
||||
|
||||
bool LoadGStreamer(bool showerror);
|
||||
|
||||
gboolean LogStructure(GQuark field_id, const GValue *value, gpointer user_data);
|
||||
|
||||
class GStreamerLoader
|
||||
{
|
||||
public:
|
||||
GStreamerLoader();
|
||||
~GStreamerLoader();
|
||||
|
||||
bool Loaded()
|
||||
{
|
||||
return mGStreamerLoaded;
|
||||
}
|
||||
|
||||
wxString GetVersion()
|
||||
{
|
||||
return wxString::Format(wxT("%d.%d.%d-%d"),major, minor, micro, nano);
|
||||
}
|
||||
|
||||
wxArrayString GetExtensions();
|
||||
|
||||
bool LoadGStreamer(bool showerr);
|
||||
|
||||
private:
|
||||
|
||||
unsigned int major, minor, micro, nano;
|
||||
|
||||
bool mGStreamerLoaded;
|
||||
};
|
||||
|
||||
#endif // USE_GSTREAMER
|
||||
#endif // __AUDACITY_GSTREAMER__
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -13,9 +13,6 @@ LRN
|
||||
|
||||
#include "ImportPlugin.h"
|
||||
|
||||
class ImportPluginList;
|
||||
class UnusableImportPluginList;
|
||||
|
||||
void GetGStreamerImportPlugin(ImportPluginList *importPluginList,
|
||||
UnusableImportPluginList *unusableImportPluginList);
|
||||
|
||||
|
@ -47,7 +47,7 @@
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="2"
|
||||
AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswu";"$(WXWIN)\include";..\..;"..\..\..\lib-src\expat\lib";"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\FileDialog\win";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\libmad\msvc++";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";..\libsndfile;"..\..\..\lib-src\libsoxr\src";"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame";"..\..\..\lib-src\portmidi\pm_common";"..\..\..\lib-src\portmidi\pm_win";"..\..\..\lib-src\portmidi\porttime";"..\..\..\lib-src\lv2\lilv";"..\..\..\lib-src\lv2\lv2";"..\..\..\lib-src\lame""
|
||||
AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswu";"$(WXWIN)\include";..\..;"..\..\..\lib-src\expat\lib";"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\FileDialog\win";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\libmad\msvc++";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";..\libsndfile;"..\..\..\lib-src\libsoxr\src";"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame";"..\..\..\lib-src\portmidi\pm_common";"..\..\..\lib-src\portmidi\pm_win";"..\..\..\lib-src\portmidi\porttime";"..\..\..\lib-src\lv2\lilv";"..\..\..\lib-src\lv2\lv2";"..\..\..\lib-src\lame";"$(GSTREAMER_SDK)\include\gstreamer-1.0";"$(GSTREAMER_SDK)\include\glib-2.0";"$(GSTREAMER_SDK)\lib\glib-2.0\include";"$(GSTREAMER_SDK)\include\libxml2""
|
||||
PreprocessorDefinitions="BUILDING_AUDACITY;FLAC__NO_DLL;XML_STATIC;__STDC_CONSTANT_MACROS;WXUSINGDLL;__WXMSW__;NDEBUG;WIN32;STRICT"
|
||||
StringPooling="true"
|
||||
RuntimeLibrary="2"
|
||||
@ -74,7 +74,7 @@
|
||||
Name="VCLinkerTool"
|
||||
LinkLibraryDependencies="false"
|
||||
AdditionalDependencies="expat.lib filedialog.lib libsndfile.lib portaudio-v19.lib wxbase28u.lib wxbase28u_net.lib wxmsw28u_adv.lib wxmsw28u_core.lib wxmsw28u_html.lib wxpng.lib wxzlib.lib wxjpeg.lib wxtiff.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
|
||||
AdditionalLibraryDirectories=""$(OutDir)";"$(WXWIN)\lib\vc_dll""
|
||||
AdditionalLibraryDirectories=""$(OutDir)";"$(WXWIN)\lib\vc_dll";"$(GSTREAMER_SDK)\lib""
|
||||
IgnoreDefaultLibraryNames="dsound.lib"
|
||||
SubSystem="2"
|
||||
StackReserveSize="8388608"
|
||||
@ -133,7 +133,7 @@
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswud";"$(WXWIN)\include";..\..;"..\..\..\lib-src\expat\lib";"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\FileDialog\win";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\libmad\msvc++";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";..\libsndfile;"..\..\..\lib-src\libsoxr\src";"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame";"..\..\..\lib-src\portmidi\pm_common";"..\..\..\lib-src\portmidi\pm_win";"..\..\..\lib-src\portmidi\porttime";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lv2\lilv";"..\..\..\lib-src\lv2\lv2";"..\..\..\lib-src\lame""
|
||||
AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswud";"$(WXWIN)\include";..\..;"..\..\..\lib-src\expat\lib";"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\FileDialog\win";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\libmad\msvc++";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";..\libsndfile;"..\..\..\lib-src\libsoxr\src";"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame";"..\..\..\lib-src\portmidi\pm_common";"..\..\..\lib-src\portmidi\pm_win";"..\..\..\lib-src\portmidi\porttime";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lv2\lilv";"..\..\..\lib-src\lv2\lv2";"..\..\..\lib-src\lame";"$(GSTREAMER_SDK)\include\gstreamer-1.0";"$(GSTREAMER_SDK)\include\glib-2.0";"$(GSTREAMER_SDK)\lib\glib-2.0\include";"$(GSTREAMER_SDK)\include\libxml2""
|
||||
PreprocessorDefinitions="BUILDING_AUDACITY;FLAC__NO_DLL;XML_STATIC;__STDC_CONSTANT_MACROS;WXUSINGDLL;__WXMSW__;__WXDEBUG__;_DEBUG;WIN32;STRICT"
|
||||
StringPooling="true"
|
||||
BasicRuntimeChecks="3"
|
||||
@ -164,7 +164,7 @@
|
||||
LinkLibraryDependencies="false"
|
||||
AdditionalDependencies="expat.lib filedialog.lib libsndfile.lib portaudio-v19.lib wxbase28ud.lib wxbase28ud_net.lib wxmsw28ud_adv.lib wxmsw28ud_core.lib wxmsw28ud_html.lib wxpngd.lib wxzlibd.lib wxjpegd.lib wxtiffd.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
|
||||
LinkIncremental="2"
|
||||
AdditionalLibraryDirectories=""$(OutDir)";"$(WXWIN)\lib\vc_dll""
|
||||
AdditionalLibraryDirectories=""$(OutDir)";"$(WXWIN)\lib\vc_dll";"$(GSTREAMER_SDK)\lib""
|
||||
IgnoreDefaultLibraryNames="dsound.lib"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
@ -1368,6 +1368,14 @@
|
||||
RelativePath="..\..\..\src\import\ImportFLAC.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\..\src\import\ImportGStreamer.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\..\src\import\ImportGStreamer.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\..\src\import\ImportLOF.cpp"
|
||||
>
|
||||
|
@ -53,7 +53,7 @@
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>$(WXWIN)\lib\vc_dll\mswu;$(WXWIN)\include;..\..;..\..\..\lib-src\expat\lib;..\..\..\lib-src\FileDialog;..\..\..\lib-src\FileDialog\win;..\..\..\lib-src\ffmpeg\win32;..\..\..\lib-src\ffmpeg;..\..\..\lib-src\lib-widget-extra;..\..\..\lib-src\libflac\include;..\..\..\lib-src\libid3tag;..\..\..\lib-src\libmad\msvc++;..\..\..\lib-src\libmad;..\..\..\lib-src\libnyquist;..\..\..\lib-src\libogg\include;..\..\..\lib-src\libresample\include;..\..\..\lib-src\libsamplerate\src;..\..\..\lib-src\libscorealign;..\libsndfile;..\..\..\lib-src\libsoxr\src;..\..\..\lib-src\libvamp;..\..\..\lib-src\libvorbis\include;..\..\..\lib-src\portaudio-v19\include;..\..\..\lib-src\portmixer\include;..\..\..\lib-src\portsmf;..\..\..\lib-src\sbsms\include;..\..\..\lib-src\soundtouch\include;..\..\..\lib-src\twolame\libtwolame;..\..\..\lib-src\portmidi\pm_common;..\..\..\lib-src\portmidi\pm_win;..\..\..\lib-src\portmidi\porttime;..\..\..\lib-src\lv2\lilv;..\..\..\lib-src\lv2\lv2;..\..\..\lib-src\lame;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(WXWIN)\lib\vc_dll\mswu;$(WXWIN)\include;..\..;..\..\..\lib-src\expat\lib;..\..\..\lib-src\FileDialog;..\..\..\lib-src\FileDialog\win;..\..\..\lib-src\ffmpeg\win32;..\..\..\lib-src\ffmpeg;..\..\..\lib-src\lib-widget-extra;..\..\..\lib-src\libflac\include;..\..\..\lib-src\libid3tag;..\..\..\lib-src\libmad\msvc++;..\..\..\lib-src\libmad;..\..\..\lib-src\libnyquist;..\..\..\lib-src\libogg\include;..\..\..\lib-src\libresample\include;..\..\..\lib-src\libsamplerate\src;..\..\..\lib-src\libscorealign;..\libsndfile;..\..\..\lib-src\libsoxr\src;..\..\..\lib-src\libvamp;..\..\..\lib-src\libvorbis\include;..\..\..\lib-src\portaudio-v19\include;..\..\..\lib-src\portmixer\include;..\..\..\lib-src\portsmf;..\..\..\lib-src\sbsms\include;..\..\..\lib-src\soundtouch\include;..\..\..\lib-src\twolame\libtwolame;..\..\..\lib-src\portmidi\pm_common;..\..\..\lib-src\portmidi\pm_win;..\..\..\lib-src\portmidi\porttime;..\..\..\lib-src\lv2\lilv;..\..\..\lib-src\lv2\lv2;..\..\..\lib-src\lame;$(GSTREAMER_SDK)\include\gstreamer-1.0;$(GSTREAMER_SDK)\include\glib-2.0;$(GSTREAMER_SDK)\lib\glib-2.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>BUILDING_AUDACITY;FLAC__NO_DLL;XML_STATIC;__STDC_CONSTANT_MACROS;WXUSINGDLL;__WXMSW__;NDEBUG;WIN32;STRICT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
@ -73,7 +73,7 @@
|
||||
</ProjectReference>
|
||||
<Link>
|
||||
<AdditionalDependencies>expat.lib;filedialog.lib;libsndfile.lib;portaudio-v19.lib;wxbase28u.lib;wxbase28u_net.lib;wxmsw28u_adv.lib;wxmsw28u_core.lib;wxmsw28u_html.lib;wxpng.lib;wxzlib.lib;wxjpeg.lib;wxtiff.lib;comctl32.lib;rpcrt4.lib;wsock32.lib;winmm.lib;oleacc.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(OutDir);$(WXWIN)\lib\vc_dll;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(OutDir);$(WXWIN)\lib\vc_dll;$(GSTREAMER_SDK)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>dsound.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<StackReserveSize>8388608</StackReserveSize>
|
||||
@ -85,7 +85,7 @@
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>$(WXWIN)\lib\vc_dll\mswud;$(WXWIN)\include;..\..;..\..\..\lib-src\expat\lib;..\..\..\lib-src\FileDialog;..\..\..\lib-src\FileDialog\win;..\..\..\lib-src\lib-widget-extra;..\..\..\lib-src\libflac\include;..\..\..\lib-src\libid3tag;..\..\..\lib-src\libmad\msvc++;..\..\..\lib-src\libmad;..\..\..\lib-src\libnyquist;..\..\..\lib-src\libogg\include;..\..\..\lib-src\libresample\include;..\..\..\lib-src\libsamplerate\src;..\..\..\lib-src\libscorealign;..\libsndfile;..\..\..\lib-src\libsoxr\src;..\..\..\lib-src\libvamp;..\..\..\lib-src\libvorbis\include;..\..\..\lib-src\portaudio-v19\include;..\..\..\lib-src\portmixer\include;..\..\..\lib-src\portsmf;..\..\..\lib-src\sbsms\include;..\..\..\lib-src\soundtouch\include;..\..\..\lib-src\twolame\libtwolame;..\..\..\lib-src\portmidi\pm_common;..\..\..\lib-src\portmidi\pm_win;..\..\..\lib-src\portmidi\porttime;..\..\..\lib-src\ffmpeg\win32;..\..\..\lib-src\ffmpeg;..\..\..\lib-src\lv2\lilv;..\..\..\lib-src\lv2\lv2;..\..\..\lib-src\lame;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(WXWIN)\lib\vc_dll\mswud;$(WXWIN)\include;..\..;..\..\..\lib-src\expat\lib;..\..\..\lib-src\FileDialog;..\..\..\lib-src\FileDialog\win;..\..\..\lib-src\lib-widget-extra;..\..\..\lib-src\libflac\include;..\..\..\lib-src\libid3tag;..\..\..\lib-src\libmad\msvc++;..\..\..\lib-src\libmad;..\..\..\lib-src\libnyquist;..\..\..\lib-src\libogg\include;..\..\..\lib-src\libresample\include;..\..\..\lib-src\libsamplerate\src;..\..\..\lib-src\libscorealign;..\libsndfile;..\..\..\lib-src\libsoxr\src;..\..\..\lib-src\libvamp;..\..\..\lib-src\libvorbis\include;..\..\..\lib-src\portaudio-v19\include;..\..\..\lib-src\portmixer\include;..\..\..\lib-src\portsmf;..\..\..\lib-src\sbsms\include;..\..\..\lib-src\soundtouch\include;..\..\..\lib-src\twolame\libtwolame;..\..\..\lib-src\portmidi\pm_common;..\..\..\lib-src\portmidi\pm_win;..\..\..\lib-src\portmidi\porttime;..\..\..\lib-src\ffmpeg\win32;..\..\..\lib-src\ffmpeg;..\..\..\lib-src\lv2\lilv;..\..\..\lib-src\lv2\lv2;..\..\..\lib-src\lame;&quot;$(GSTREAMER_SDK)\include\gstreamer-1.0;$(GSTREAMER_SDK)\include\glib-2.0;$(GSTREAMER_SDK)\lib\glib-2.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>BUILDING_AUDACITY;FLAC__NO_DLL;XML_STATIC;__STDC_CONSTANT_MACROS;WXUSINGDLL;__WXMSW__;__WXDEBUG__;_DEBUG;WIN32;STRICT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
@ -109,7 +109,7 @@
|
||||
</ProjectReference>
|
||||
<Link>
|
||||
<AdditionalDependencies>expat.lib;filedialog.lib;libsndfile.lib;portaudio-v19.lib;wxbase28ud.lib;wxbase28ud_net.lib;wxmsw28ud_adv.lib;wxmsw28ud_core.lib;wxmsw28ud_html.lib;wxpngd.lib;wxzlibd.lib;wxjpegd.lib;wxtiffd.lib;comctl32.lib;rpcrt4.lib;wsock32.lib;winmm.lib;oleacc.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(OutDir);$(WXWIN)\lib\vc_dll;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(OutDir);$(WXWIN)\lib\vc_dll;$(GSTREAMER_SDK)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>dsound.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
@ -150,6 +150,7 @@
|
||||
<ClCompile Include="..\..\..\src\HelpText.cpp" />
|
||||
<ClCompile Include="..\..\..\src\HistoryWindow.cpp" />
|
||||
<ClCompile Include="..\..\..\src\ImageManipulation.cpp" />
|
||||
<ClCompile Include="..\..\..\src\import\ImportGStreamer.cpp" />
|
||||
<ClCompile Include="..\..\..\src\Internat.cpp" />
|
||||
<ClCompile Include="..\..\..\src\InterpolateAudio.cpp" />
|
||||
<ClCompile Include="..\..\..\src\LabelDialog.cpp" />
|
||||
@ -392,6 +393,7 @@
|
||||
<ClInclude Include="..\..\..\src\BlockFile.h" />
|
||||
<ClInclude Include="..\..\..\src\CaptureEvents.h" />
|
||||
<ClInclude Include="..\..\..\src\commands\OpenSaveCommands.h" />
|
||||
<ClInclude Include="..\..\..\src\import\ImportGStreamer.h" />
|
||||
<ClInclude Include="..\..\..\src\SseMathFuncs.h" />
|
||||
<ClInclude Include="..\..\configwin.h" />
|
||||
<ClInclude Include="..\..\..\src\Dependencies.h" />
|
||||
|
@ -807,6 +807,9 @@
|
||||
<ClCompile Include="..\..\..\src\commands\OpenSaveCommands.cpp">
|
||||
<Filter>src/commands</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\import\ImportGStreamer.cpp">
|
||||
<Filter>src/import</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\..\src\AboutDialog.h">
|
||||
@ -1586,6 +1589,9 @@
|
||||
<ClInclude Include="..\..\..\src\commands\OpenSaveCommands.h">
|
||||
<Filter>src/commands</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\src\import\ImportGStreamer.h">
|
||||
<Filter>src/import</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="..\..\audacity.ico">
|
||||
|
@ -21,6 +21,7 @@
|
||||
#define USE_LIBID3TAG 1
|
||||
#define USE_LV2 1
|
||||
#define USE_LIBMAD 1
|
||||
//#define USE_GSTREAMER 1
|
||||
|
||||
// Resamplers:
|
||||
// Exactly one resampler should be defined.
|
||||
@ -36,7 +37,6 @@
|
||||
#define USE_LIBVORBIS 1
|
||||
#define USE_NYQUIST 1
|
||||
#define USE_PORTMIXER 1
|
||||
// #define USE_SLV2 1
|
||||
#define USE_SBSMS 1
|
||||
#define USE_SOUNDTOUCH 1
|
||||
#define USE_VAMP 1
|
||||
|
Loading…
x
Reference in New Issue
Block a user