diff --git a/src/ITASampleFrame.cpp b/src/ITASampleFrame.cpp index 632d2b809e8d4b29624af85fb9dc9616283fb518..13cdf932d240c3a6e9e51329960d41b05b7a6b88 100644 --- a/src/ITASampleFrame.cpp +++ b/src/ITASampleFrame.cpp @@ -78,6 +78,7 @@ void ITASampleFrame::Load( const std::string& sFilePath ) void ITASampleFrame::Load( const std::string& sFilePath, double& dSampleRate ) { +#ifdef ITABASE_WITH_SNDFILE ITAAudiofileReader* pReader( NULL ); try { @@ -105,15 +106,11 @@ void ITASampleFrame::Load( const std::string& sFilePath, double& dSampleRate ) } delete pReader; +#else + ITA_EXCEPT1( NOT_IMPLEMENTED, "ITASampleFrame::Store() function not available without libsndfile" ); +#endif } -void ITASampleFrame::free() -{ - m_vChannels.clear(); - m_iChannels = 0; - m_iLength = 0; -}; - void ITASampleFrame::Store( const std::string& sFilePath, double dSamplingRate ) const { #ifdef ITABASE_WITH_SNDFILE @@ -148,6 +145,13 @@ void ITASampleFrame::Store( const std::string& sFilePath, double dSamplingRate ) } +void ITASampleFrame::free() +{ + m_vChannels.clear(); + m_iChannels = 0; + m_iLength = 0; +}; + void ITASampleFrame::fill( float fValue ) { for (ch_it it=m_vChannels.begin(); it!=m_vChannels.end(); ++it) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 5092bc7694068a611a7afb5ca690e376850f7c60..4e33c4a262703f664e4117a53b3ae7b54068a495 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -2,25 +2,34 @@ cmake_minimum_required( VERSION 2.8 ) if( NOT ITABASE_COMMON_BUILD ) - project( SampleBufferTest ) + project( ITABaseTests ) list( APPEND CMAKE_MODULE_PATH "$ENV{VISTA_CMAKE_COMMON}" ) include( VistaCommon ) endif() -vista_use_package( ITABase REQUIRED ) +vista_use_package( ITABase REQUIRED FIND_DEPENDENCIES ) -if( WIN32 ) - add_definitions( -DITA_BASE_DLL ) -endif( WIN32 ) -if( VFOUND_SNDFILE AND ITA_BASE_WITH_SNDFILE ) - add_executable( SampleBufferTest SampleBufferTest.cpp ) - target_link_libraries( SampleBufferTest ${VISTA_USE_PACKAGE_LIBRARIES} ) +add_executable( SampleBufferTest SampleBufferTest.cpp ) +target_link_libraries( SampleBufferTest ${VISTA_USE_PACKAGE_LIBRARIES} ) - vista_configure_app( SampleBufferTest ) - vista_install( SampleBufferTest ) - vista_create_default_info_file( SampleBufferTest ) +vista_configure_app( SampleBufferTest ) +vista_install( SampleBufferTest ) +vista_create_default_info_file( SampleBufferTest ) - set_property( TARGET SampleBufferTest PROPERTY FOLDER "ITATests/ITABase" ) -endif( VFOUND_SNDFILE AND ITA_BASE_WITH_SNDFILE ) +set_property( TARGET SampleBufferTest PROPERTY FOLDER "ITACoreLibs/Tests/ITABase" ) + + +if( ITA_BASE_WITH_SNDFILE ) + + add_executable( SampleFrameTest SampleFrameTest.cpp ) + target_link_libraries( SampleFrameTest ${VISTA_USE_PACKAGE_LIBRARIES} ) + + vista_configure_app( SampleFrameTest ) + vista_install( SampleFrameTest ) + vista_create_default_info_file( SampleFrameTest ) + + set_property( TARGET SampleFrameTest PROPERTY FOLDER "ITACoreLibs/Tests/ITABase" ) + +endif( ITA_BASE_WITH_SNDFILE ) diff --git a/tests/SampleFrameTest.cpp b/tests/SampleFrameTest.cpp new file mode 100644 index 0000000000000000000000000000000000000000..bf4e7a1c0aec4f06cf1919966d5e6ad52244304b --- /dev/null +++ b/tests/SampleFrameTest.cpp @@ -0,0 +1,20 @@ +#include +#include +#include + +#include +#include + +using namespace std; + +int main( int argc, char** argv ) +{ + ITASampleFrame sf; + + double dSampleRate; + sf.Load( "OldDiesel.wav", dSampleRate ); + sf.div_scalar( 2 ); + sf.Store( "OldDiesel_out.wav", dSampleRate ); // ITA_FLOAT + + return 0; +}