├── Experiment
├── createFrames.m
├── demo.m
├── extract.m
├── extract2.m
├── extractTrackSources.m
├── fusionFrames.m
├── hannWin.m
├── johnny0.mes
├── moving_crossing.raw
├── moving_noncrossing.raw
├── spectrogram.m
├── static_clean.wav
└── static_recorded.raw
├── README.md
├── manyears-C
├── CMakeLists.txt
├── COPYING.TXT
├── INTROLAB-ManyEars.cbp
├── Info.plist
├── ManyEars.icns
├── ManyEars.plist
├── Qt4GUI
│ ├── CMakeLists.txt
│ ├── COPYING.TXT
│ ├── Configuration_Vectors
│ │ ├── HRIDemo.mes
│ │ ├── default.mes
│ │ ├── olddefault001.mes
│ │ ├── olddefault002.mes
│ │ ├── vector-13oct2010-Moderate delete-Very Slow detect.mes
│ │ └── vector14.mes
│ ├── Images
│ │ ├── logo5.png
│ │ ├── logo5_bgwhite.png
│ │ └── logoonly.png
│ ├── PlotBeamformerLatitude.cpp
│ ├── PlotBeamformerLatitude.h
│ ├── PlotBeamformerLongitude.cpp
│ ├── PlotBeamformerLongitude.h
│ ├── PlotLatitude.cpp
│ ├── PlotLongitude.cpp
│ ├── README.TXT
│ ├── StreamOutputWidget.cpp
│ ├── StreamOutputWidget.h
│ ├── StreamOutputWidget.ui
│ ├── aboutDialog.cpp
│ ├── aboutDialog.h
│ ├── algorithmCore.cpp
│ ├── algorithmCore.h
│ ├── audioManager.cpp
│ ├── audioManager.h
│ ├── colorID.cpp
│ ├── colorID.h
│ ├── colorPalette.cpp
│ ├── colorPalette.h
│ ├── configurationLoadSave.cpp
│ ├── configurationLoadSave.h
│ ├── configurationVector.cpp
│ ├── configurationVector.h
│ ├── coreThread.cpp
│ ├── coreThread.h
│ ├── graph2D.cpp
│ ├── graph2D.h
│ ├── graph3D.cpp
│ ├── graph3D.h
│ ├── inputOutputManager.cpp
│ ├── inputOutputManager.h
│ ├── listProperty.cpp
│ ├── listProperty.h
│ ├── main.cpp
│ ├── manyearsObj.cpp
│ ├── manyearsObj.h
│ ├── mdiSubWindow.cpp
│ ├── mdiSubWindow.h
│ ├── mdiWindow.cpp
│ ├── mdiWindow.h
│ ├── parametersManager.cpp
│ ├── parametersManager.h
│ ├── plot.cpp
│ ├── plot.h
│ ├── plotLatitude.h
│ ├── plotLongitude.h
│ ├── potentialSource.cpp
│ ├── potentialSource.h
│ ├── potentialSourceManager.cpp
│ ├── potentialSourceManager.h
│ ├── potentialSourceVector.cpp
│ ├── potentialSourceVector.h
│ ├── property.cpp
│ ├── property.h
│ ├── propertyEditor.cpp
│ ├── propertyEditor.h
│ ├── resources.qrc
│ ├── scrollListProperty.cpp
│ ├── scrollListProperty.h
│ ├── soundInputConfig.cpp
│ ├── soundInputConfig.h
│ ├── source.cpp
│ ├── source.h
│ ├── sourceBuffer.cpp
│ ├── sourceBuffer.h
│ ├── sourceEvents.cpp
│ ├── sourceEvents.h
│ ├── sourceGenerator.cpp
│ ├── sourceGenerator.h
│ ├── sourceManager.cpp
│ ├── sourceManager.h
│ ├── sphereObj.cpp
│ ├── sphereObj.h
│ ├── spherePlot.cpp
│ ├── spherePlot.h
│ ├── trackedSource.cpp
│ ├── trackedSource.h
│ ├── trackedSourceManager.cpp
│ ├── trackedSourceManager.h
│ ├── trackedSourceVector.cpp
│ ├── trackedSourceVector.h
│ ├── winBeamformerLatitude.cpp
│ ├── winBeamformerLatitude.h
│ ├── winBeamformerLongitude.cpp
│ ├── winBeamformerLongitude.h
│ ├── winLatitude.cpp
│ ├── winLatitude.h
│ ├── winLongitude.cpp
│ ├── winLongitude.h
│ ├── winSphere.cpp
│ ├── winSphere.h
│ ├── window.cpp
│ └── window.h
├── README.TXT
├── RTAudio
│ ├── CMakeLists.txt
│ ├── RtAudio.cpp
│ ├── RtAudio.h
│ ├── RtError.h
│ ├── asio.cpp
│ ├── asio.h
│ ├── asiodrivers.cpp
│ ├── asiodrivers.h
│ ├── asiodrvr.h
│ ├── asiolist.cpp
│ ├── asiolist.h
│ ├── asiosys.h
│ ├── dsound.h
│ ├── ginclude.h
│ ├── iasiodrv.h
│ ├── iasiothiscallresolver.cpp
│ ├── iasiothiscallresolver.h
│ ├── readme
│ └── soundcard.h
├── Samples
│ └── rawdata_2srcs_90_90.raw
├── demo
│ ├── CMakeLists.txt
│ └── manyears_demo.c
├── dsplib
│ ├── CMakeLists.txt
│ ├── Geometry
│ │ ├── microphones.c
│ │ └── microphones.h
│ ├── Localisation
│ │ ├── beamformer.c
│ │ ├── beamformer.h
│ │ ├── delays.c
│ │ ├── delays.h
│ │ ├── potentialSources.c
│ │ ├── potentialSources.h
│ │ ├── rij.c
│ │ ├── rij.h
│ │ ├── sphere.c
│ │ └── sphere.h
│ ├── Output
│ │ ├── output.c
│ │ ├── output.h
│ │ ├── outputChunk.c
│ │ ├── outputChunk.h
│ │ ├── outputSingleStream.c
│ │ └── outputSingleStream.h
│ ├── Postprocessing
│ │ ├── postprocessor.c
│ │ └── postprocessor.h
│ ├── Preprocessing
│ │ ├── mcra.c
│ │ ├── mcra.h
│ │ ├── micst.c
│ │ ├── micst.h
│ │ ├── preprocessor.c
│ │ └── preprocessor.h
│ ├── Separation
│ │ ├── gss.c
│ │ ├── gss.h
│ │ ├── postfilter.c
│ │ ├── postfilter.h
│ │ ├── postfilteredSources.c
│ │ ├── postfilteredSources.h
│ │ ├── separatedSources.c
│ │ └── separatedSources.h
│ ├── Tracking
│ │ ├── filter.c
│ │ ├── filter.h
│ │ ├── mixture.c
│ │ ├── mixture.h
│ │ ├── trackedSources.c
│ │ └── trackedSources.h
│ ├── Utilities
│ │ ├── dynamicMemory.c
│ │ ├── dynamicMemory.h
│ │ ├── fft.c
│ │ ├── fft.h
│ │ ├── idList.c
│ │ ├── idList.h
│ │ ├── idManager.c
│ │ ├── idManager.h
│ │ ├── linearCorrelation.c
│ │ ├── linearCorrelation.h
│ │ ├── mathadvanced.c
│ │ ├── mathadvanced.h
│ │ ├── matrix.c
│ │ ├── matrix.h
│ │ ├── randGen.c
│ │ ├── randGen.h
│ │ ├── transcendental.c
│ │ ├── transcendental.h
│ │ ├── window.c
│ │ └── window.h
│ ├── hardware.h
│ ├── overallContext.c
│ ├── overallContext.h
│ ├── parameters.c
│ ├── parameters.h
│ ├── sseTest.c
│ └── sseTest.h
├── example
│ ├── CMakeLists.txt
│ ├── manyears_console.c
│ ├── manyears_iterative.c
│ └── manyears_live.cpp
├── macros
│ ├── FindJack.cmake
│ └── FindQtMobility.cmake
└── package
│ └── CMakeLists.txt
└── manyears-flowdesigner
├── AUTHORS
├── CMakeLists.txt
├── COPYING
├── ChangeLog
├── GUI
├── AudioSource.h
├── CMakeLists.txt
├── DefaultImage.xpm
├── FDReader.cpp
├── FDReader.h
├── ImageView.cpp
├── ImageView.h
├── QtProbeAudioViewer.cpp
├── QtProbeAudioViewer.h
├── SNCRZ30Cam.cpp
├── SNCRZ30Cam.h
├── TrackAudioWidget.cpp
├── TrackAudioWidget.h
├── audioview.cpp
├── audioview.h
└── main.cpp
├── INSTALL
├── ManyEars3D
├── CMakeLists.txt
├── EqualGains3D.cc
├── Localize3D.cc
├── SourceTrack3D.cc
├── SteeringVector3D.cc
├── TrackingDecision3D.cc
├── particles3D.cc
└── particles3D.h
├── MicrophoneArrayKit
├── Electret-preamp
│ ├── Electret 252EM9765.pdf
│ ├── Electret FG-23329-C05.pdf
│ ├── Electret preamp public release (AUD0522.03).bot
│ ├── Electret preamp public release (AUD0522.03).gko
│ ├── Electret preamp public release (AUD0522.03).pdf
│ ├── Electret preamp public release (AUD0522.03).smb
│ ├── Electret preamp public release (AUD0522.03).smt
│ ├── Electret preamp public release (AUD0522.03).ssb
│ ├── Electret preamp public release (AUD0522.03).sst
│ ├── Electret preamp public release (AUD0522.03).tap
│ ├── Electret preamp public release (AUD0522.03).top
│ ├── Electret preamp public release (AUD0522.03).xls
│ ├── LICENSE.TXT
│ └── layers.txt
├── LICENSE.TXT
└── Mic_Interface
│ ├── LICENSE.TXT
│ ├── Mic Interface public release (AUD0816.02).bot
│ ├── Mic Interface public release (AUD0816.02).gko
│ ├── Mic Interface public release (AUD0816.02).pdf
│ ├── Mic Interface public release (AUD0816.02).smb
│ ├── Mic Interface public release (AUD0816.02).smt
│ ├── Mic Interface public release (AUD0816.02).ssb
│ ├── Mic Interface public release (AUD0816.02).sst
│ ├── Mic Interface public release (AUD0816.02).tap
│ ├── Mic Interface public release (AUD0816.02).top
│ ├── Mic Interface public release (AUD0816.02).xls
│ └── layers.txt
├── NEWS
├── README
├── TODO
├── cameraBridge
├── CMakeLists.txt
├── CameraBridge.cpp
├── CameraBridge.h
├── MainWindow.ui
├── main.cpp
├── posix_qextserialport.cpp
├── posix_qextserialport.h
├── qextserialbase.cpp
├── qextserialbase.h
├── qextserialenumerator.cpp
├── qextserialenumerator.h
├── qextserialport.cpp
├── qextserialport.h
├── win_qextserialport.cpp
└── win_qextserialport.h
├── config
├── cube_mic_pos.mat
├── planar_mic_pos.mat
└── robot_mic_pos.mat
├── license.txt
├── macros
├── FindAlsa.cmake
├── FindFFTW3.cmake
└── FindLibXml2.cmake
├── n-files
├── LocalizeOSC.n
├── LocalizeSeparAndSaveTCP.n
├── LocalizeSeparAndSaveWav.n
├── LocalizeSeparAndSaveWavWin32.n
├── TestSphinx.n
├── localization.n
├── localize.n
├── separation_spl_coque_raw.n
├── speex.n
├── start_manyears.bat
├── track_sources.n
└── tracking3D.n
├── sphinx4
├── 10001-90210-01803.wav
├── CMakeLists.txt
├── README
├── Sphinx4TcpServer.java
├── TIDIGITS_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar
├── config.xml
├── digits.gram
├── js.jar
├── jsapi.jar
├── sphinx4.jar
└── tags.jar
├── src
├── AudioServer.cc
├── AudioServer.h
├── CMakeLists.txt
├── EqualGains.cc
├── LocalizeBeam.cc
├── Map.h
├── QtTCPBinarySend.cc
├── RtAudio.cpp
├── RtAudio.h
├── RtError.h
├── SaveAudioStreamTCP.cc
├── SaveRawAudio.cc
├── SaveSources.cc
├── SaveSpeex.cc
├── SaveWav.cc
├── SaveWavWin32.cc
├── SeparGSS.cc
├── ServerSave.cc
├── ServerSaveRaw.cc
├── ServerSaveSpeex.cc
├── ServerSaveWav.cc
├── SoundMap.cc
├── SourceInfo.cc
├── SourceInfo.h
├── SourceTrack.cc
├── UDPOSCOut.cc
├── alsadevice.cpp
├── alsadevice.h
├── asio
│ ├── asio.cpp
│ ├── asio.h
│ ├── asiodrivers.cpp
│ ├── asiodrivers.h
│ ├── asiodrvr.h
│ ├── asiolist.cpp
│ ├── asiolist.h
│ ├── asiosys.h
│ ├── dsound.h
│ ├── ginclude.h
│ ├── iasiodrv.h
│ ├── iasiothiscallresolver.cpp
│ ├── iasiothiscallresolver.h
│ └── soundcard.h
├── audio_client.cc
├── audio_server.cc
├── audio_server2.cc
├── conj_window.cc
├── conj_window.h
├── info.cc
├── openStream.cc
├── particles.cc
├── particles.h
├── play_client.cc
├── solver.h
├── speex_play.sh
├── sphere.cc
├── sphere.h
└── sphinx_server.cc
├── start_manyears.sh
└── tools
├── CMakeLists.txt
└── ManyEars_Setup.nsi
/Experiment/extract.m:
--------------------------------------------------------------------------------
1 | fid = fopen('/media/Data/Maîtrise/Expériences/Experience3/Test/TwoSpeakers/Recorded/2011-05-22_13-09-12.raw','r');
2 |
3 | nChannels = 8;
4 | nSamplesNoise = 400000;
5 | nSamplesSpeech = 768000;
6 |
7 | vectorNoise = fread(fid, nChannels * nSamplesNoise, 'int16');
8 | vectorSpeech = fread(fid, nChannels * nSamplesSpeech, 'int16');
9 |
10 | fclose(fid);
11 |
12 | oneChannelNoise = vectorNoise(1:8:(nChannels*nSamplesNoise))/32768;
13 | oneChannelSpeech = vectorSpeech(1:8:(nChannels*nSamplesSpeech))/32768;
14 |
15 | fid = fopen('/media/Data/Maîtrise/Expériences/Experience3/Test/TwoSpeakers/Recorded/01-02.raw','w');
16 | fwrite(fid, vectorSpeech, 'int16');
17 | fclose(fid);
18 |
19 | figure(1);
20 | plot(oneChannelNoise);
21 | figure(2);
22 | plot(oneChannelSpeech);
--------------------------------------------------------------------------------
/Experiment/extract2.m:
--------------------------------------------------------------------------------
1 | fid = fopen('/media/Data/Doctorat/Articles/AR2012ManyEars/Experiment/essai3_2sources_180_croise.raw','r');
2 |
3 | nChannels = 8;
4 | nSamplesSpeech = 1152000;
5 |
6 | vectorSpeech = fread(fid, nChannels * nSamplesSpeech, 'int16');
7 |
8 | fclose(fid);
9 |
10 | oneChannelSpeech = vectorSpeech(1:8:(nChannels*nSamplesSpeech))/32768;
11 |
12 | fid = fopen('/media/Data/Doctorat/Articles/AR2012ManyEars/Experiment/essai3_2sources_180_croise_cropped.raw','w');
13 | fwrite(fid, vectorSpeech, 'int16');
14 | fclose(fid);
15 |
16 | figure(1);
17 | plot(oneChannelSpeech);
--------------------------------------------------------------------------------
/Experiment/hannWin.m:
--------------------------------------------------------------------------------
1 | %
2 | % *************************************************************************
3 | % * Authors: Francois Grondin *
4 | % *************************************************************************
5 | % * Inputs: nSamples Size of the window *
6 | % * Outputs: hannWindow Resulting window *
7 | % *************************************************************************
8 | % * Description: *
9 | % * *
10 | % * This function creates a hann window *
11 | % * *
12 | % *************************************************************************
13 | % * DISCLAIMER: *
14 | % * *
15 | % * Copyright and other intellectual property laws protect these *
16 | % * materials. Reproduction or retransmission of the materials, in whole *
17 | % * or in part, in any manner, without the prior consent of the copyright *
18 | % * holders, is a violation of copyright law. *
19 | % * *
20 | % * The authors are not responsible for any damages whatsoever, including *
21 | % * any type of loss of information, interruption of business, personal *
22 | % * injury and/or any damage or consequential damage without any *
23 | % * limitation incurred before, during or after the use of this code. *
24 | % *************************************************************************
25 | %
26 |
27 | function [hannWindow] = hannWin(nSamples)
28 |
29 | n = 0:1:(nSamples-1);
30 |
31 | hannWindow = 0.5 * (1 - cos( 2 * pi * n / (nSamples - 1) ) );
32 |
33 | return
--------------------------------------------------------------------------------
/Experiment/johnny0.mes:
--------------------------------------------------------------------------------
1 | GEO_MICS_MIC1_GAIN=F1;
2 | GEO_MICS_MIC1_X=F0.02999999933;
3 | GEO_MICS_MIC1_Y=F-0.1000000015;
4 | GEO_MICS_MIC1_Z=F-0.01999999955;
5 | GEO_MICS_MIC2_GAIN=F1;
6 | GEO_MICS_MIC2_X=F0.1000000015;
7 | GEO_MICS_MIC2_Y=F0;
8 | GEO_MICS_MIC2_Z=F-0.200000003;
9 | GEO_MICS_MIC3_GAIN=F1;
10 | GEO_MICS_MIC3_X=F0.1199999973;
11 | GEO_MICS_MIC3_Y=F0;
12 | GEO_MICS_MIC3_Z=F-0.6899999976;
13 | GEO_MICS_MIC4_GAIN=F1;
14 | GEO_MICS_MIC4_X=F0.02999999933;
15 | GEO_MICS_MIC4_Y=F0.1000000015;
16 | GEO_MICS_MIC4_Z=F-0.01999999955;
17 | GEO_MICS_MIC5_GAIN=F1;
18 | GEO_MICS_MIC5_X=F-0.1700000018;
19 | GEO_MICS_MIC5_Y=F0.1099999994;
20 | GEO_MICS_MIC5_Z=F-0.2700000107;
21 | GEO_MICS_MIC6_GAIN=F1;
22 | GEO_MICS_MIC6_X=F-0.1700000018;
23 | GEO_MICS_MIC6_Y=F0.1099999994;
24 | GEO_MICS_MIC6_Z=F-0.7200000286;
25 | GEO_MICS_MIC7_GAIN=F1;
26 | GEO_MICS_MIC7_X=F-0.1700000018;
27 | GEO_MICS_MIC7_Y=F-0.1099999994;
28 | GEO_MICS_MIC7_Z=F-0.7200000286;
29 | GEO_MICS_MIC8_GAIN=F1;
30 | GEO_MICS_MIC8_X=F-0.1700000018;
31 | GEO_MICS_MIC8_Y=F-0.1099999994;
32 | GEO_MICS_MIC8_Z=F-0.2700000107;
33 | BEAMFORMER_MAXSOURCES=I4;
34 | BEAMFORMER_ET=F600;
35 | BEAMFORMER_FILTERRANGE=I5;
36 | BEAMFORMER_RESETRANGE=I5;
37 | FILTER_STANDARDDEVIATION=F0.200000003;
38 | FILTER_PREDICTION_STOP_ALPHA=F2;
39 | FILTER_PREDICTION_STOP_BETA=F0.03999999911;
40 | FILTER_PREDICTION_CONSTANT_ALPHA=F0.05000000075;
41 | FILTER_PREDICTION_CONSTANT_BETA=F0.5;
42 | FILTER_PREDICTION_ACCELERATED_ALPHA=F0.5;
43 | FILTER_PREDICTION_ACCELERATED_BETA=F0.200000003;
44 | FILTER_INERTIA_X=F1;
45 | FILTER_INERTIA_Y=F1;
46 | FILTER_INERTIA_Z=F1;
47 | FILTER_DELTAT=F0.00800000038;
48 | FILTER_STATEUPDATE=F0.02999999933;
49 | FILTER_STOP_PERCENTAGE=F0.5;
50 | FILTER_CONSTANT_PERCENTAGE=F0.200000003;
51 | FILTER_ACCELERATED_PERCENTAGE=F0.3000000119;
52 | FILTER_ACTIVE_ACTIVE=F0.6999999881;
53 | FILTER_INACTIVE_ACTIVE=F0.3000000119;
54 | FILTER_P0=F0.5;
55 | FILTER_RESAMPLING_THRESHOLD=F0.6999999881;
56 | FILTER_BUFFERSIZE=I1;
57 | GEN_DYNSOURCES=I8;
58 | MIXTURE_PNEW=F0.004999999888;
59 | MIXTURE_PFALSE=F0.05000000075;
60 | MIXTURE_NEWSOURCE_THRESHOLD=F0.3000000119;
61 | MIXTURE_CONFIRM_SOURCE_EXISTS=F0.6999999881;
62 | MIXTURE_CONFIRM_COUNT_THRESHOLD=F0.5;
63 | MIXTURE_CONFIRM_COUNT_COUNTER=I50;
64 | MIXTURE_NEWSOURCE_HORIZONTALANGLE=F1;
65 | MIXTURE_CUMULATIVE_TIME_PROBATION=I50;
66 | MIXTURE_NOTOBSERVED_PROBATION_THRESHOLD=F0.9499999881;
67 | MIXTURE_CUMULATIVE_TIME_LEVEL1=I25;
68 | MIXTURE_NOTOBSERVED_LEVEL1_THRESHOLD=F0.5;
69 | MIXTURE_CUMULATIVE_TIME_LEVEL2=I50;
70 | MIXTURE_NOTOBSERVED_LEVEL2_THRESHOLD=F0.9499999881;
71 | MICST_ALPHAD=F0.1000000015;
72 | MICST_GAMMA=F0.3000000119;
73 | MICST_DELTA=F1;
74 | MICST_MCRA_ALPHAS=F0.9499999881;
75 | MICST_MCRA_ALPHAP=F0.200000003;
76 | MICST_MCRA_ALPHAD=F0.9499999881;
77 | MICST_MCRA_L=I150;
78 | MICST_MCRA_DELTA=F1;
79 |
--------------------------------------------------------------------------------
/Experiment/moving_crossing.raw:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/Experiment/moving_crossing.raw
--------------------------------------------------------------------------------
/Experiment/moving_noncrossing.raw:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/Experiment/moving_noncrossing.raw
--------------------------------------------------------------------------------
/Experiment/static_clean.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/Experiment/static_clean.wav
--------------------------------------------------------------------------------
/Experiment/static_recorded.raw:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/Experiment/static_recorded.raw
--------------------------------------------------------------------------------
/manyears-C/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | ManyEars
9 | CFBundleGetInfoString
10 | ManyEars App
11 | CFBundleIconFile
12 | ManyEars.icns
13 | CFBundleIdentifier
14 | ManyEars
15 | CFBundleInfoDictionaryVersion
16 | 6.0
17 | CFBundleLongVersionString
18 | ManyEars 1.0.0
19 | CFBundleName
20 | ManyEars
21 | CFBundlePackageType
22 | APPL
23 | CFBundleShortVersionString
24 | 1.0.0
25 | CFBundleSignature
26 | ????
27 | CFBundleVersion
28 | 1.0.0
29 | CSResourcesFileMapped
30 |
31 | LSRequiresCarbon
32 |
33 | NSHumanReadableCopyright
34 | François Grondin, Dominic Létourneau
35 |
36 |
37 |
--------------------------------------------------------------------------------
/manyears-C/ManyEars.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/ManyEars.icns
--------------------------------------------------------------------------------
/manyears-C/ManyEars.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | ManyEarsStartup
9 | CFBundleGetInfoString
10 | ManyEars App
11 | CFBundleIconFile
12 | ManyEars.icns
13 | CFBundleIdentifier
14 | ManyEars
15 | CFBundleInfoDictionaryVersion
16 | 6.0
17 | CFBundleLongVersionString
18 | ManyEars 1.0.0
19 | CFBundleName
20 | ManyEars
21 | CFBundlePackageType
22 | APPL
23 | CFBundleShortVersionString
24 | 0.10.0
25 | CFBundleSignature
26 | ????
27 | CFBundleVersion
28 | 0.10.0
29 | CSResourcesFileMapped
30 |
31 | LSRequiresCarbon
32 |
33 | NSHumanReadableCopyright
34 | François Grondin, Dominic Létourneau
35 |
36 |
37 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/COPYING.TXT:
--------------------------------------------------------------------------------
1 | (C) IntRoLab 2002-2010 -
2 | Francois Grondin,
3 | Jean-Marc Valin,
4 | Dominic Letourneau
5 |
6 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/Configuration_Vectors/HRIDemo.mes:
--------------------------------------------------------------------------------
1 | BEAMFORMER_MAXSOURCES=I4;
2 | BEAMFORMER_ET=F1000;
3 | BEAMFORMER_FILTERRANGE=I5;
4 | BEAMFORMER_RESETRANGE=I5;
5 | GEO_MICS_MIC1_GAIN=F1;
6 | GEO_MICS_MIC1_X=F-0.1075;
7 | GEO_MICS_MIC1_Y=F0.08;
8 | GEO_MICS_MIC1_Z=F0.1075;
9 | GEO_MICS_MIC2_GAIN=F1;
10 | GEO_MICS_MIC2_X=F0.1075;
11 | GEO_MICS_MIC2_Y=F0.08;
12 | GEO_MICS_MIC2_Z=F0.1075;
13 | GEO_MICS_MIC3_GAIN=F1;
14 | GEO_MICS_MIC3_X=F-0.1075;
15 | GEO_MICS_MIC3_Y=F0.08;
16 | GEO_MICS_MIC3_Z=F-0.1075;
17 | GEO_MICS_MIC4_GAIN=F1;
18 | GEO_MICS_MIC4_X=F0.1075;
19 | GEO_MICS_MIC4_Y=F0.08;
20 | GEO_MICS_MIC4_Z=F-0.1075;
21 | GEO_MICS_MIC5_GAIN=F1;
22 | GEO_MICS_MIC5_X=F0.1075;
23 | GEO_MICS_MIC5_Y=F-0.08;
24 | GEO_MICS_MIC5_Z=F0.1075;
25 | GEO_MICS_MIC6_GAIN=F1;
26 | GEO_MICS_MIC6_X=F-0.1075;
27 | GEO_MICS_MIC6_Y=F-0.08;
28 | GEO_MICS_MIC6_Z=F0.1075;
29 | GEO_MICS_MIC7_GAIN=F1;
30 | GEO_MICS_MIC7_X=F0.1075;
31 | GEO_MICS_MIC7_Y=F-0.08;
32 | GEO_MICS_MIC7_Z=F-0.1075;
33 | GEO_MICS_MIC8_GAIN=F1;
34 | GEO_MICS_MIC8_X=F-0.1075;
35 | GEO_MICS_MIC8_Y=F-0.08;
36 | GEO_MICS_MIC8_Z=F-0.1075;
37 | FILTER_STANDARDDEVIATION=F0.200000003;
38 | FILTER_PREDICTION_STOP_ALPHA=F2;
39 | FILTER_PREDICTION_STOP_BETA=F0.03999999911;
40 | FILTER_PREDICTION_CONSTANT_ALPHA=F0.05000000075;
41 | FILTER_PREDICTION_CONSTANT_BETA=F0.5;
42 | FILTER_PREDICTION_ACCELERATED_ALPHA=F0.5;
43 | FILTER_PREDICTION_ACCELERATED_BETA=F0.200000003;
44 | FILTER_INERTIA_X=F1;
45 | FILTER_INERTIA_Y=F1;
46 | FILTER_INERTIA_Z=F1;
47 | FILTER_DELTAT=F0.00800000038;
48 | FILTER_STATEUPDATE=F0.02999999933;
49 | FILTER_STOP_PERCENTAGE=F0.5;
50 | FILTER_CONSTANT_PERCENTAGE=F0.200000003;
51 | FILTER_ACCELERATED_PERCENTAGE=F0.3000000119;
52 | FILTER_ACTIVE_ACTIVE=F0.6999999881;
53 | FILTER_INACTIVE_ACTIVE=F0.3000000119;
54 | FILTER_P0=F0.5;
55 | FILTER_RESAMPLING_THRESHOLD=F0.6999999881;
56 | FILTER_BUFFERSIZE=I1;
57 | GEN_DYNSOURCES=I8;
58 | MIXTURE_PNEW=F0.004999999888;
59 | MIXTURE_PFALSE=F0.05000000075;
60 | MIXTURE_ET=F500;
61 | MIXTURE_NEWSOURCE_THRESHOLD=F0.3000000119;
62 | MIXTURE_CONFIRM_SOURCE_EXISTS=F0.6999999881;
63 | MIXTURE_CONFIRM_COUNT_THRESHOLD=F0.5;
64 | MIXTURE_CONFIRM_COUNT_COUNTER=I1;
65 | MIXTURE_NEWSOURCE_HORIZONTALANGLE=F1;
66 | MIXTURE_CUMULATIVE_TIME_PROBATION=I50;
67 | MIXTURE_NOTOBSERVED_PROBATION_THRESHOLD=F0.9499999881;
68 | MIXTURE_CUMULATIVE_TIME_LEVEL1=I25;
69 | MIXTURE_NOTOBSERVED_LEVEL1_THRESHOLD=F0.5;
70 | MIXTURE_CUMULATIVE_TIME_LEVEL2=I50;
71 | MIXTURE_NOTOBSERVED_LEVEL2_THRESHOLD=F0.9499999881;
72 | MICST_ALPHAD=F0.1000000015;
73 | MICST_GAMMA=F0.3000000119;
74 | MICST_DELTA=F1;
75 | MICST_MCRA_ALPHAS=F0.9499999881;
76 | MICST_MCRA_ALPHAP=F0.200000003;
77 | MICST_MCRA_ALPHAD=F0.9499999881;
78 | MICST_MCRA_L=I150;
79 | MICST_MCRA_DELTA=F1;
80 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/Configuration_Vectors/default.mes:
--------------------------------------------------------------------------------
1 | BEAMFORMER_MAXSOURCES=I4;
2 | BEAMFORMER_ET=F1000;
3 | BEAMFORMER_FILTERRANGE=I5;
4 | BEAMFORMER_RESETRANGE=I5;
5 | GEO_MICS_MIC1_GAIN=F1;
6 | GEO_MICS_MIC1_X=F-0.1599999964;
7 | GEO_MICS_MIC1_Y=F0.1599999964;
8 | GEO_MICS_MIC1_Z=F0.1599999964;
9 | GEO_MICS_MIC2_GAIN=F1;
10 | GEO_MICS_MIC2_X=F-0.1599999964;
11 | GEO_MICS_MIC2_Y=F0.1599999964;
12 | GEO_MICS_MIC2_Z=F-0.1599999964;
13 | GEO_MICS_MIC3_GAIN=F1;
14 | GEO_MICS_MIC3_X=F0.1599999964;
15 | GEO_MICS_MIC3_Y=F0.1599999964;
16 | GEO_MICS_MIC3_Z=F0.1599999964;
17 | GEO_MICS_MIC4_GAIN=F1;
18 | GEO_MICS_MIC4_X=F0.1599999964;
19 | GEO_MICS_MIC4_Y=F0.1599999964;
20 | GEO_MICS_MIC4_Z=F-0.1599999964;
21 | GEO_MICS_MIC5_GAIN=F1;
22 | GEO_MICS_MIC5_X=F-0.1599999964;
23 | GEO_MICS_MIC5_Y=F-0.1599999964;
24 | GEO_MICS_MIC5_Z=F0.1599999964;
25 | GEO_MICS_MIC6_GAIN=F1;
26 | GEO_MICS_MIC6_X=F-0.1599999964;
27 | GEO_MICS_MIC6_Y=F-0.1599999964;
28 | GEO_MICS_MIC6_Z=F-0.1599999964;
29 | GEO_MICS_MIC7_GAIN=F1;
30 | GEO_MICS_MIC7_X=F0.1599999964;
31 | GEO_MICS_MIC7_Y=F-0.1599999964;
32 | GEO_MICS_MIC7_Z=F0.1599999964;
33 | GEO_MICS_MIC8_GAIN=F1;
34 | GEO_MICS_MIC8_X=F0.1599999964;
35 | GEO_MICS_MIC8_Y=F-0.1599999964;
36 | GEO_MICS_MIC8_Z=F-0.1599999964;
37 | FILTER_STANDARDDEVIATION=F0.200000003;
38 | FILTER_PREDICTION_STOP_ALPHA=F2;
39 | FILTER_PREDICTION_STOP_BETA=F0.03999999911;
40 | FILTER_PREDICTION_CONSTANT_ALPHA=F0.05000000075;
41 | FILTER_PREDICTION_CONSTANT_BETA=F0.5;
42 | FILTER_PREDICTION_ACCELERATED_ALPHA=F0.5;
43 | FILTER_PREDICTION_ACCELERATED_BETA=F0.200000003;
44 | FILTER_INERTIA_X=F1;
45 | FILTER_INERTIA_Y=F1;
46 | FILTER_INERTIA_Z=F1;
47 | FILTER_DELTAT=F0.00800000038;
48 | FILTER_STATEUPDATE=F0.02999999933;
49 | FILTER_STOP_PERCENTAGE=F0.5;
50 | FILTER_CONSTANT_PERCENTAGE=F0.200000003;
51 | FILTER_ACCELERATED_PERCENTAGE=F0.3000000119;
52 | FILTER_ACTIVE_ACTIVE=F0.6999999881;
53 | FILTER_INACTIVE_ACTIVE=F0.3000000119;
54 | FILTER_P0=F0.5;
55 | FILTER_RESAMPLING_THRESHOLD=F0.6999999881;
56 | FILTER_BUFFERSIZE=I1;
57 | GEN_DYNSOURCES=I8;
58 | MIXTURE_PNEW=F0.004999999888;
59 | MIXTURE_PFALSE=F0.05000000075;
60 | MIXTURE_ET=F500;
61 | MIXTURE_NEWSOURCE_THRESHOLD=F0.3000000119;
62 | MIXTURE_CONFIRM_SOURCE_EXISTS=F0.6999999881;
63 | MIXTURE_CONFIRM_COUNT_THRESHOLD=F0.5;
64 | MIXTURE_CONFIRM_COUNT_COUNTER=I1;
65 | MIXTURE_NEWSOURCE_HORIZONTALANGLE=F1;
66 | MIXTURE_CUMULATIVE_TIME_PROBATION=I50;
67 | MIXTURE_NOTOBSERVED_PROBATION_THRESHOLD=F0.9499999881;
68 | MIXTURE_CUMULATIVE_TIME_LEVEL1=I25;
69 | MIXTURE_NOTOBSERVED_LEVEL1_THRESHOLD=F0.5;
70 | MIXTURE_CUMULATIVE_TIME_LEVEL2=I50;
71 | MIXTURE_NOTOBSERVED_LEVEL2_THRESHOLD=F0.9499999881;
72 | MICST_ALPHAD=F0.1000000015;
73 | MICST_GAMMA=F0.3000000119;
74 | MICST_DELTA=F1;
75 | MICST_MCRA_ALPHAS=F0.9499999881;
76 | MICST_MCRA_ALPHAP=F0.200000003;
77 | MICST_MCRA_ALPHAD=F0.9499999881;
78 | MICST_MCRA_L=I150;
79 | MICST_MCRA_DELTA=F1;
80 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/Configuration_Vectors/olddefault001.mes:
--------------------------------------------------------------------------------
1 | BEAMFORMER_MAXPOTENTIAL=I4;
2 | BEAMFORMER_NUMBERMAX=I50;
3 | BEAMFORMER_MAXTHRESHOLD=F0.8500000238;
4 | BEAMFORMER_ANGLE_TOLERANCE_HORIZONTAL=F0.200000003;
5 | BEAMFORMER_ANGLE_TOLERANCE_HORIZONTAL_NEXT=F0.5;
6 | BEAMFORMER_ANGLE_TOLERANCE_VERTICAL=F0;
7 | BEAMFORMER_MAXRANGE=I6;
8 | BEAMFORMER_DELAYS_RESET=I3;
9 | BEAMFORMER_MIC1_GAIN=F1;
10 | BEAMFORMER_MIC1_X=F-0.1599999964;
11 | BEAMFORMER_MIC1_Y=F0.1599999964;
12 | BEAMFORMER_MIC1_Z=F0.1599999964;
13 | BEAMFORMER_MIC2_GAIN=F1;
14 | BEAMFORMER_MIC2_X=F-0.1599999964;
15 | BEAMFORMER_MIC2_Y=F0.1599999964;
16 | BEAMFORMER_MIC2_Z=F-0.1599999964;
17 | BEAMFORMER_MIC3_GAIN=F1;
18 | BEAMFORMER_MIC3_X=F0.1599999964;
19 | BEAMFORMER_MIC3_Y=F0.1599999964;
20 | BEAMFORMER_MIC3_Z=F0.1599999964;
21 | BEAMFORMER_MIC4_GAIN=F1;
22 | BEAMFORMER_MIC4_X=F0.1599999964;
23 | BEAMFORMER_MIC4_Y=F0.1599999964;
24 | BEAMFORMER_MIC4_Z=F-0.1599999964;
25 | BEAMFORMER_MIC5_GAIN=F1;
26 | BEAMFORMER_MIC5_X=F-0.1599999964;
27 | BEAMFORMER_MIC5_Y=F-0.1599999964;
28 | BEAMFORMER_MIC5_Z=F0.1599999964;
29 | BEAMFORMER_MIC6_GAIN=F1;
30 | BEAMFORMER_MIC6_X=F-0.1599999964;
31 | BEAMFORMER_MIC6_Y=F-0.1599999964;
32 | BEAMFORMER_MIC6_Z=F-0.1599999964;
33 | BEAMFORMER_MIC7_GAIN=F1;
34 | BEAMFORMER_MIC7_X=F0.1599999964;
35 | BEAMFORMER_MIC7_Y=F-0.1599999964;
36 | BEAMFORMER_MIC7_Z=F0.1599999964;
37 | BEAMFORMER_MIC8_GAIN=F1;
38 | BEAMFORMER_MIC8_X=F0.1599999964;
39 | BEAMFORMER_MIC8_Y=F-0.1599999964;
40 | BEAMFORMER_MIC8_Z=F-0.1599999964;
41 | FILTER_STANDARDDEVIATION=F0.200000003;
42 | FILTER_PREDICTION_STOP_ALPHA=F2;
43 | FILTER_PREDICTION_STOP_BETA=F0.03999999911;
44 | FILTER_PREDICTION_CONSTANT_ALPHA=F0.05000000075;
45 | FILTER_PREDICTION_CONSTANT_BETA=F0.5;
46 | FILTER_PREDICTION_ACCELERATED_ALPHA=F0.5;
47 | FILTER_PREDICTION_ACCELERATED_BETA=F0.200000003;
48 | FILTER_INERTIA_X=F1;
49 | FILTER_INERTIA_Y=F1;
50 | FILTER_INERTIA_Z=F1;
51 | FILTER_DELTAT=F0.00800000038;
52 | FILTER_STATEUPDATE=F0.02999999933;
53 | FILTER_STOP_PERCENTAGE=F0.200000003;
54 | FILTER_CONSTANT_PERCENTAGE=F0.1000000015;
55 | FILTER_ACCELERATED_PERCENTAGE=F0.6999999881;
56 | FILTER_ACTIVE_ACTIVE=F0.6999999881;
57 | FILTER_INACTIVE_ACTIVE=F0.3000000119;
58 | FILTER_P0=F0.5;
59 | FILTER_RESAMPLING_THRESHOLD=F0.6999999881;
60 | FILTER_BUFFERSIZE=I1;
61 | GEN_DYNSOURCES=I8;
62 | MIXTURE_PNEW=F0.004999999888;
63 | MIXTURE_PFALSE=F0.05000000075;
64 | MIXTURE_ET=F500;
65 | MIXTURE_NEWSOURCE_THRESHOLD=F0.3000000119;
66 | MIXTURE_CONFIRM_SOURCE_EXISTS=F0.6999999881;
67 | MIXTURE_CONFIRM_COUNT_THRESHOLD=F0.5;
68 | MIXTURE_CONFIRM_COUNT_COUNTER=I20;
69 | MIXTURE_NEWSOURCE_HORIZONTALANGLE=F1;
70 | MIXTURE_CUMULATIVE_TIME_PROBATION=I10;
71 | MIXTURE_NOTOBSERVED_PROBATION_THRESHOLD=F0.9499999881;
72 | MIXTURE_CUMULATIVE_TIME_LEVEL1=I50;
73 | MIXTURE_NOTOBSERVED_LEVEL1_THRESHOLD=F0.1000000015;
74 | MIXTURE_CUMULATIVE_TIME_LEVEL2=I300;
75 | MIXTURE_NOTOBSERVED_LEVEL2_THRESHOLD=F0.9950000048;
76 | MICST_ALPHAD=F0.1000000015;
77 | MICST_GAMMA=F0.3000000119;
78 | MICST_DELTA=F1;
79 | MICST_MCRA_ALPHAS=F0.9499999881;
80 | MICST_MCRA_ALPHAP=F0.200000003;
81 | MICST_MCRA_ALPHAD=F0.9499999881;
82 | MICST_MCRA_L=I150;
83 | MICST_MCRA_DELTA=F1;
84 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/Configuration_Vectors/olddefault002.mes:
--------------------------------------------------------------------------------
1 | BEAMFORMER_MAXPOTENTIAL=I4;
2 | BEAMFORMER_NUMBERMAX=I50;
3 | BEAMFORMER_MAXTHRESHOLD=F0.8500000238;
4 | BEAMFORMER_ANGLE_TOLERANCE_HORIZONTAL=F0.200000003;
5 | BEAMFORMER_ANGLE_TOLERANCE_HORIZONTAL_NEXT=F0.5;
6 | BEAMFORMER_ANGLE_TOLERANCE_VERTICAL=F0;
7 | BEAMFORMER_MAXRANGE=I6;
8 | BEAMFORMER_DELAYS_RESET=I3;
9 | BEAMFORMER_MIC1_GAIN=F1;
10 | BEAMFORMER_MIC1_X=F-0.1599999964;
11 | BEAMFORMER_MIC1_Y=F0.1599999964;
12 | BEAMFORMER_MIC1_Z=F0.1599999964;
13 | BEAMFORMER_MIC2_GAIN=F1;
14 | BEAMFORMER_MIC2_X=F-0.1599999964;
15 | BEAMFORMER_MIC2_Y=F0.1599999964;
16 | BEAMFORMER_MIC2_Z=F-0.1599999964;
17 | BEAMFORMER_MIC3_GAIN=F1;
18 | BEAMFORMER_MIC3_X=F0.1599999964;
19 | BEAMFORMER_MIC3_Y=F0.1599999964;
20 | BEAMFORMER_MIC3_Z=F0.1599999964;
21 | BEAMFORMER_MIC4_GAIN=F1;
22 | BEAMFORMER_MIC4_X=F0.1599999964;
23 | BEAMFORMER_MIC4_Y=F0.1599999964;
24 | BEAMFORMER_MIC4_Z=F-0.1599999964;
25 | BEAMFORMER_MIC5_GAIN=F1;
26 | BEAMFORMER_MIC5_X=F-0.1599999964;
27 | BEAMFORMER_MIC5_Y=F-0.1599999964;
28 | BEAMFORMER_MIC5_Z=F0.1599999964;
29 | BEAMFORMER_MIC6_GAIN=F1;
30 | BEAMFORMER_MIC6_X=F-0.1599999964;
31 | BEAMFORMER_MIC6_Y=F-0.1599999964;
32 | BEAMFORMER_MIC6_Z=F-0.1599999964;
33 | BEAMFORMER_MIC7_GAIN=F1;
34 | BEAMFORMER_MIC7_X=F0.1599999964;
35 | BEAMFORMER_MIC7_Y=F-0.1599999964;
36 | BEAMFORMER_MIC7_Z=F0.1599999964;
37 | BEAMFORMER_MIC8_GAIN=F1;
38 | BEAMFORMER_MIC8_X=F0.1599999964;
39 | BEAMFORMER_MIC8_Y=F-0.1599999964;
40 | BEAMFORMER_MIC8_Z=F-0.1599999964;
41 | FILTER_STANDARDDEVIATION=F0.200000003;
42 | FILTER_PREDICTION_STOP_ALPHA=F2;
43 | FILTER_PREDICTION_STOP_BETA=F0.03999999911;
44 | FILTER_PREDICTION_CONSTANT_ALPHA=F0.05000000075;
45 | FILTER_PREDICTION_CONSTANT_BETA=F0.5;
46 | FILTER_PREDICTION_ACCELERATED_ALPHA=F0.5;
47 | FILTER_PREDICTION_ACCELERATED_BETA=F0.200000003;
48 | FILTER_INERTIA_X=F1;
49 | FILTER_INERTIA_Y=F1;
50 | FILTER_INERTIA_Z=F1;
51 | FILTER_DELTAT=F0.00800000038;
52 | FILTER_STATEUPDATE=F0.02999999933;
53 | FILTER_STOP_PERCENTAGE=F0.5;
54 | FILTER_CONSTANT_PERCENTAGE=F0.200000003;
55 | FILTER_ACCELERATED_PERCENTAGE=F0.3000000119;
56 | FILTER_ACTIVE_ACTIVE=F0.6999999881;
57 | FILTER_INACTIVE_ACTIVE=F0.3000000119;
58 | FILTER_P0=F0.5;
59 | FILTER_RESAMPLING_THRESHOLD=F0.6999999881;
60 | FILTER_BUFFERSIZE=I1;
61 | GEN_DYNSOURCES=I8;
62 | MIXTURE_PNEW=F0.004999999888;
63 | MIXTURE_PFALSE=F0.05000000075;
64 | MIXTURE_ET=F500;
65 | MIXTURE_NEWSOURCE_THRESHOLD=F0.3000000119;
66 | MIXTURE_CONFIRM_SOURCE_EXISTS=F0.6999999881;
67 | MIXTURE_CONFIRM_COUNT_THRESHOLD=F0.5;
68 | MIXTURE_CONFIRM_COUNT_COUNTER=I50;
69 | MIXTURE_NEWSOURCE_HORIZONTALANGLE=F1;
70 | MIXTURE_CUMULATIVE_TIME_PROBATION=I50;
71 | MIXTURE_NOTOBSERVED_PROBATION_THRESHOLD=F0.9499999881;
72 | MIXTURE_CUMULATIVE_TIME_LEVEL1=I25;
73 | MIXTURE_NOTOBSERVED_LEVEL1_THRESHOLD=F0.5;
74 | MIXTURE_CUMULATIVE_TIME_LEVEL2=I50;
75 | MIXTURE_NOTOBSERVED_LEVEL2_THRESHOLD=F0.9950000048;
76 | MICST_ALPHAD=F0.1000000015;
77 | MICST_GAMMA=F0.3000000119;
78 | MICST_DELTA=F1;
79 | MICST_MCRA_ALPHAS=F0.9499999881;
80 | MICST_MCRA_ALPHAP=F0.200000003;
81 | MICST_MCRA_ALPHAD=F0.9499999881;
82 | MICST_MCRA_L=I150;
83 | MICST_MCRA_DELTA=F1;
84 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/Configuration_Vectors/vector-13oct2010-Moderate delete-Very Slow detect.mes:
--------------------------------------------------------------------------------
1 | BEAMFORMER_MAXPOTENTIAL=I4;
2 | BEAMFORMER_NUMBERMAX=I50;
3 | BEAMFORMER_MAXTHRESHOLD=F0.8500000238;
4 | BEAMFORMER_ANGLE_TOLERANCE_HORIZONTAL=F0.200000003;
5 | BEAMFORMER_ANGLE_TOLERANCE_HORIZONTAL_NEXT=F0.5;
6 | BEAMFORMER_ANGLE_TOLERANCE_VERTICAL=F0;
7 | BEAMFORMER_MAXRANGE=I6;
8 | BEAMFORMER_DELAYS_RESET=I3;
9 | BEAMFORMER_MIC1_GAIN=F1;
10 | BEAMFORMER_MIC1_X=F-0.1599999964;
11 | BEAMFORMER_MIC1_Y=F0.1599999964;
12 | BEAMFORMER_MIC1_Z=F0.1599999964;
13 | BEAMFORMER_MIC2_GAIN=F1;
14 | BEAMFORMER_MIC2_X=F-0.1599999964;
15 | BEAMFORMER_MIC2_Y=F0.1599999964;
16 | BEAMFORMER_MIC2_Z=F-0.1599999964;
17 | BEAMFORMER_MIC3_GAIN=F1;
18 | BEAMFORMER_MIC3_X=F0.1599999964;
19 | BEAMFORMER_MIC3_Y=F0.1599999964;
20 | BEAMFORMER_MIC3_Z=F0.1599999964;
21 | BEAMFORMER_MIC4_GAIN=F1;
22 | BEAMFORMER_MIC4_X=F0.1599999964;
23 | BEAMFORMER_MIC4_Y=F0.1599999964;
24 | BEAMFORMER_MIC4_Z=F-0.1599999964;
25 | BEAMFORMER_MIC5_GAIN=F1;
26 | BEAMFORMER_MIC5_X=F-0.1599999964;
27 | BEAMFORMER_MIC5_Y=F-0.1599999964;
28 | BEAMFORMER_MIC5_Z=F0.1599999964;
29 | BEAMFORMER_MIC6_GAIN=F1;
30 | BEAMFORMER_MIC6_X=F-0.1599999964;
31 | BEAMFORMER_MIC6_Y=F-0.1599999964;
32 | BEAMFORMER_MIC6_Z=F-0.1599999964;
33 | BEAMFORMER_MIC7_GAIN=F1;
34 | BEAMFORMER_MIC7_X=F0.1599999964;
35 | BEAMFORMER_MIC7_Y=F-0.1599999964;
36 | BEAMFORMER_MIC7_Z=F0.1599999964;
37 | BEAMFORMER_MIC8_GAIN=F1;
38 | BEAMFORMER_MIC8_X=F0.1599999964;
39 | BEAMFORMER_MIC8_Y=F-0.1599999964;
40 | BEAMFORMER_MIC8_Z=F-0.1599999964;
41 | FILTER_STANDARDDEVIATION=F0.200000003;
42 | FILTER_PREDICTION_STOP_ALPHA=F2;
43 | FILTER_PREDICTION_STOP_BETA=F0.03999999911;
44 | FILTER_PREDICTION_CONSTANT_ALPHA=F0.05000000075;
45 | FILTER_PREDICTION_CONSTANT_BETA=F0.5;
46 | FILTER_PREDICTION_ACCELERATED_ALPHA=F0.5;
47 | FILTER_PREDICTION_ACCELERATED_BETA=F0.200000003;
48 | FILTER_INERTIA_X=F1;
49 | FILTER_INERTIA_Y=F1;
50 | FILTER_INERTIA_Z=F1;
51 | FILTER_DELTAT=F0.00800000038;
52 | FILTER_STATEUPDATE=F0.02999999933;
53 | FILTER_STOP_PERCENTAGE=F0.5;
54 | FILTER_CONSTANT_PERCENTAGE=F0.200000003;
55 | FILTER_ACCELERATED_PERCENTAGE=F0.3000000119;
56 | FILTER_ACTIVE_ACTIVE=F0.6999999881;
57 | FILTER_INACTIVE_ACTIVE=F0.3000000119;
58 | FILTER_P0=F0.5;
59 | FILTER_RESAMPLING_THRESHOLD=F0.6999999881;
60 | FILTER_BUFFERSIZE=I1;
61 | GEN_DYNSOURCES=I8;
62 | MIXTURE_PNEW=F0.004999999888;
63 | MIXTURE_PFALSE=F0.05000000075;
64 | MIXTURE_ET=F500;
65 | MIXTURE_NEWSOURCE_THRESHOLD=F0.3000000119;
66 | MIXTURE_CONFIRM_SOURCE_EXISTS=F0.6999999881;
67 | MIXTURE_CONFIRM_COUNT_THRESHOLD=F0.5;
68 | MIXTURE_CONFIRM_COUNT_COUNTER=I50;
69 | MIXTURE_NEWSOURCE_HORIZONTALANGLE=F1;
70 | MIXTURE_CUMULATIVE_TIME_PROBATION=I50;
71 | MIXTURE_NOTOBSERVED_PROBATION_THRESHOLD=F0.9499999881;
72 | MIXTURE_CUMULATIVE_TIME_LEVEL1=I25;
73 | MIXTURE_NOTOBSERVED_LEVEL1_THRESHOLD=F0.5;
74 | MIXTURE_CUMULATIVE_TIME_LEVEL2=I50;
75 | MIXTURE_NOTOBSERVED_LEVEL2_THRESHOLD=F0.9950000048;
76 | MICST_ALPHAD=F0.1000000015;
77 | MICST_GAMMA=F0.3000000119;
78 | MICST_DELTA=F1;
79 | MICST_MCRA_ALPHAS=F0.9499999881;
80 | MICST_MCRA_ALPHAP=F0.200000003;
81 | MICST_MCRA_ALPHAD=F0.9499999881;
82 | MICST_MCRA_L=I150;
83 | MICST_MCRA_DELTA=F1;
84 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/Configuration_Vectors/vector14.mes:
--------------------------------------------------------------------------------
1 | BEAMFORMER_MAXPOTENTIAL=I4;
2 | BEAMFORMER_NUMBERMAX=I50;
3 | BEAMFORMER_MAXTHRESHOLD=F0.8500000238;
4 | BEAMFORMER_ANGLE_TOLERANCE_HORIZONTAL=F0.200000003;
5 | BEAMFORMER_ANGLE_TOLERANCE_HORIZONTAL_NEXT=F1;
6 | BEAMFORMER_ANGLE_TOLERANCE_VERTICAL=F0;
7 | BEAMFORMER_MAXRANGE=I6;
8 | BEAMFORMER_DELAYS_RESET=I3;
9 | BEAMFORMER_MIC1_GAIN=F1;
10 | BEAMFORMER_MIC1_X=F-0.1599999964;
11 | BEAMFORMER_MIC1_Y=F0.1599999964;
12 | BEAMFORMER_MIC1_Z=F0.1599999964;
13 | BEAMFORMER_MIC2_GAIN=F1;
14 | BEAMFORMER_MIC2_X=F-0.1599999964;
15 | BEAMFORMER_MIC2_Y=F0.1599999964;
16 | BEAMFORMER_MIC2_Z=F-0.1599999964;
17 | BEAMFORMER_MIC3_GAIN=F1;
18 | BEAMFORMER_MIC3_X=F0.1599999964;
19 | BEAMFORMER_MIC3_Y=F0.1599999964;
20 | BEAMFORMER_MIC3_Z=F0.1599999964;
21 | BEAMFORMER_MIC4_GAIN=F1;
22 | BEAMFORMER_MIC4_X=F0.1599999964;
23 | BEAMFORMER_MIC4_Y=F0.1599999964;
24 | BEAMFORMER_MIC4_Z=F-0.1599999964;
25 | BEAMFORMER_MIC5_GAIN=F1;
26 | BEAMFORMER_MIC5_X=F-0.1599999964;
27 | BEAMFORMER_MIC5_Y=F-0.1599999964;
28 | BEAMFORMER_MIC5_Z=F0.1599999964;
29 | BEAMFORMER_MIC6_GAIN=F1;
30 | BEAMFORMER_MIC6_X=F-0.1599999964;
31 | BEAMFORMER_MIC6_Y=F-0.1599999964;
32 | BEAMFORMER_MIC6_Z=F-0.1599999964;
33 | BEAMFORMER_MIC7_GAIN=F1;
34 | BEAMFORMER_MIC7_X=F0.1599999964;
35 | BEAMFORMER_MIC7_Y=F-0.1599999964;
36 | BEAMFORMER_MIC7_Z=F0.1599999964;
37 | BEAMFORMER_MIC8_GAIN=F1;
38 | BEAMFORMER_MIC8_X=F0.1599999964;
39 | BEAMFORMER_MIC8_Y=F-0.1599999964;
40 | BEAMFORMER_MIC8_Z=F-0.1599999964;
41 | FILTER_STANDARDDEVIATION=F0.3000000119;
42 | FILTER_PREDICTION_STOP_ALPHA=F2;
43 | FILTER_PREDICTION_STOP_BETA=F0.03999999911;
44 | FILTER_PREDICTION_CONSTANT_ALPHA=F0.05000000075;
45 | FILTER_PREDICTION_CONSTANT_BETA=F0.5;
46 | FILTER_PREDICTION_ACCELERATED_ALPHA=F0.5;
47 | FILTER_PREDICTION_ACCELERATED_BETA=F0.200000003;
48 | FILTER_INERTIA_X=F1;
49 | FILTER_INERTIA_Y=F1;
50 | FILTER_INERTIA_Z=F0.25;
51 | FILTER_DELTAT=F0.00400000019;
52 | FILTER_STATEUPDATE=F0.02999999933;
53 | FILTER_STOP_PERCENTAGE=F0.200000003;
54 | FILTER_CONSTANT_PERCENTAGE=F0.200000003;
55 | FILTER_ACCELERATED_PERCENTAGE=F0.6000000238;
56 | FILTER_ACTIVE_ACTIVE=F0.6999999881;
57 | FILTER_INACTIVE_ACTIVE=F0.3000000119;
58 | FILTER_P0=F0.5;
59 | FILTER_RESAMPLING_THRESHOLD=F0.6999999881;
60 | FILTER_BUFFERSIZE=I50;
61 | MIXTURE_MAX_FILTERS=I8;
62 | MIXTURE_PNEW=F0.004999999888;
63 | MIXTURE_PFALSE=F0.05000000075;
64 | MIXTURE_ET=F250;
65 | MIXTURE_NEWSOURCE_THRESHOLD=F0.8000000119;
66 | MIXTURE_CONFIRM_SOURCE_EXISTS=F0.9800000191;
67 | MIXTURE_CONFIRM_COUNT_THRESHOLD=F0.8000000119;
68 | MIXTURE_CONFIRM_COUNT_COUNTER=I20;
69 | MIXTURE_NEWSOURCE_HORIZONTALANGLE=F0.6000000238;
70 | MIXTURE_CUMULATIVE_TIME_PROBATION=I10;
71 | MIXTURE_NOTOBSERVED_PROBATION_THRESHOLD=F0.9499999881;
72 | MIXTURE_CUMULATIVE_TIME_LEVEL1=I50;
73 | MIXTURE_NOTOBSERVED_LEVEL1_THRESHOLD=F0.1000000015;
74 | MIXTURE_CUMULATIVE_TIME_LEVEL2=I300;
75 | MIXTURE_NOTOBSERVED_LEVEL2_THRESHOLD=F0.9950000048;
76 | MICST_ALPHAD=F0.1000000015;
77 | MICST_GAMMA=F0.3000000119;
78 | MICST_DELTA=F1;
79 | MICST_MCRA_ALPHAS=F0.9499999881;
80 | MICST_MCRA_ALPHAP=F0.200000003;
81 | MICST_MCRA_ALPHAD=F0.9499999881;
82 | MICST_MCRA_L=I150;
83 | MICST_MCRA_DELTA=F1;
84 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/Images/logo5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/Qt4GUI/Images/logo5.png
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/Images/logo5_bgwhite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/Qt4GUI/Images/logo5_bgwhite.png
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/Images/logoonly.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/Qt4GUI/Images/logoonly.png
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/README.TXT:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/Qt4GUI/README.TXT
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/StreamOutputWidget.h:
--------------------------------------------------------------------------------
1 | #ifndef _STREAM_OUTPUT_WIDGET_
2 | #define _STREAM_OUTPUT_WIDGET_
3 |
4 | #include
5 | #include
6 | #include
7 | #include
8 | #include
9 | #include "ui_StreamOutputWidget.h"
10 |
11 |
12 | class StreamOutputWidget : public QWidget
13 | {
14 | Q_OBJECT
15 |
16 | public:
17 |
18 | StreamOutputWidget(QWidget *parent=NULL);
19 | ~StreamOutputWidget();
20 | QVector popFrame();
21 | void pushFrame(const QVector &frame);
22 |
23 | protected slots:
24 |
25 | void enabledButtonClicked(bool enabled);
26 | void startButtonClicked();
27 | void stopButtonClicked();
28 | void clearButtonClicked();
29 | void refreshTimeout();
30 | void audioStateChanged(QAudio::State state );
31 | void notify();
32 |
33 |
34 | protected:
35 | virtual bool event(QEvent* event);
36 | void scanOutputDevice();
37 | Ui::StreamOutputWidget m_ui;
38 | QList > m_frames;
39 | QMutex m_mutex;
40 | QTimer *m_timer;
41 | QAudioOutput *m_audioOutput;
42 | QIODevice *m_IODevice;
43 | bool m_enabled;
44 | };
45 |
46 |
47 |
48 | #endif
49 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/aboutDialog.h:
--------------------------------------------------------------------------------
1 | #ifndef ABOUTDIALOG_H
2 | #define ABOUTDIALOG_H
3 |
4 | #include
5 | #include
6 | #include
7 | #include
8 | #include
9 | #include
10 | #include
11 | #include
12 | #include
13 |
14 | #ifndef DEF_PACKAGE_NAME
15 | #define DEF_PACKAGE_NAME ""
16 | #endif
17 |
18 | #ifndef DEF_PACKAGE_VERSION
19 | #define DEF_PACKAGE_VERSION ""
20 | #endif
21 |
22 | #ifndef DEF_PACKAGE_VENDOR
23 | #define DEF_PACKAGE_VENDOR ""
24 | #endif
25 |
26 | #ifndef DEF_NSIS_URL_INFO_ABOUT
27 | #define DEF_NSIS_URL_INFO_ABOUT ""
28 | #endif
29 |
30 | #ifndef DEF_RESOURCE_FILE_LICENSE
31 | #define DEF_RESOURCE_FILE_LICENSE ""
32 | #endif
33 |
34 | #ifndef DEF_PACKAGE_DESCRIPTION_FILE
35 | #define DEF_PACKAGE_DESCRIPTION_FILE ""
36 | #endif
37 |
38 | #ifndef DEF_PROJECT_SOURCE_DIR
39 | #define DEF_PROJECT_SOURCE_DIR ""
40 | #endif
41 |
42 | class AboutDialog: public QDialog
43 | {
44 |
45 | Q_OBJECT
46 |
47 | public:
48 |
49 | AboutDialog();
50 |
51 | ~AboutDialog();
52 |
53 | protected slots:
54 |
55 | void launchURL(const QString _url);
56 | void closeDialog();
57 |
58 | private:
59 |
60 | QLabel* logo;
61 | QLabel* title;
62 | QLabel* version;
63 | QLabel* authors;
64 | QLabel* website;
65 | QLabel* copyright;
66 | QTextEdit* readme;
67 | QPushButton* buttons;
68 |
69 | };
70 |
71 | #endif
72 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/audioManager.h:
--------------------------------------------------------------------------------
1 | #ifndef AUDIOMANAGER_H
2 | #define AUDIOMANAGER_H
3 |
4 | #include
5 | #include
6 | #include
7 | #include
8 | #include
9 |
10 | #include
11 |
12 | #include "RTAudio/RtAudio.h"
13 |
14 | typedef void (*callBackFcn)( void *objPtr );
15 |
16 | class AudioManager : public QObject
17 | {
18 |
19 | Q_OBJECT;
20 |
21 | public:
22 |
23 | static const char TYPE_RECORD = 1;
24 | static const char TYPE_FILE = 2;
25 |
26 | AudioManager(int _numberChannels, int _frameSize, int _numberHopPerFrame, int _samplingRate, callBackFcn _callback, void *_parentObj, char _inputType);
27 | AudioManager();
28 |
29 | virtual ~AudioManager();
30 |
31 | unsigned int getAudioDevicesCount();
32 |
33 | QString getAudioDeviceName(unsigned int _deviceIndex);
34 |
35 | int getAudioDeviceIndex(QString _deviceName);
36 |
37 | void openStream(int _deviceIndex);
38 | void openStream(QString _filePath);
39 |
40 | void startRecording();
41 |
42 | void stopRecording();
43 |
44 | void closeStream();
45 |
46 | int getNumberChannels();
47 |
48 | float *getBuffers();
49 |
50 | float **newBuffers();
51 |
52 | int getIndexHop();
53 |
54 | int getHopSize();
55 |
56 | int getNumberHopPerFrame();
57 |
58 | void updateIndexHop();
59 |
60 | void gotoCallBack();
61 |
62 | void postEmptyFrame();
63 |
64 | int getInputType() const;
65 |
66 | QString getFileName() const;
67 |
68 | private slots:
69 |
70 | void processTimer();
71 |
72 | private:
73 |
74 | RtAudio *audioDriver;
75 |
76 | FILE *fileDriver;
77 |
78 | char inputType;
79 |
80 | QString filePath;
81 |
82 | QTimer* fileTimer;
83 |
84 | int numberChannels;
85 |
86 | unsigned int hopSize;
87 |
88 | int frameSize;
89 |
90 | int numberHopPerFrame;
91 |
92 | int indexHop;
93 |
94 | int samplingRate;
95 |
96 | float *buffers;
97 |
98 | callBackFcn callback;
99 |
100 | void *parentObj;
101 |
102 | QVector newBuffersStack;
103 |
104 | QMutex stackIsUsed;
105 |
106 | signed short *recordedStream;
107 |
108 | int sampleIndex;
109 |
110 | int fileSize;
111 |
112 | };
113 |
114 | int fillBuffer(void *outputBuffer, void *inputBuffer, unsigned int nBufferFrames, double streamTime, RtAudioStreamStatus status, void *manager);
115 |
116 | #endif // AUDIOMANAGER_H
117 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/configurationLoadSave.cpp:
--------------------------------------------------------------------------------
1 | #include "configurationLoadSave.h"
2 |
3 | /***********************************************************
4 | * Constructor *
5 | ***********************************************************/
6 |
7 | ConfigurationLoadSave::ConfigurationLoadSave()
8 | {
9 |
10 | this->configVector = new ConfigurationVector();
11 |
12 | }
13 |
14 | /***********************************************************
15 | * Destructor *
16 | ***********************************************************/
17 |
18 | ConfigurationLoadSave::~ConfigurationLoadSave()
19 | {
20 |
21 | delete this->configVector;
22 |
23 | }
24 |
25 | /***********************************************************
26 | * Save to file *
27 | ***********************************************************/
28 |
29 | void ConfigurationLoadSave::saveToFile(QString _filePath)
30 | {
31 |
32 | QString outputStr;
33 |
34 | QFile outputFile(_filePath);
35 |
36 | outputStr = this->configVector->generateOutput();
37 |
38 | outputFile.open(QFile::WriteOnly | QFile::Text);
39 |
40 | QTextStream outputStream(&outputFile);
41 |
42 | outputStream << outputStr;
43 |
44 | outputFile.close();
45 |
46 | }
47 |
48 | /***********************************************************
49 | * Open from file *
50 | ***********************************************************/
51 |
52 | void ConfigurationLoadSave::openFromFile(QString _filePath)
53 | {
54 |
55 | QString inputStr;
56 | QString currentLine;
57 |
58 | QFile inputFile(_filePath);
59 |
60 | inputFile.open(QFile::ReadOnly | QFile::Text);
61 |
62 | QTextStream inputStream(&inputFile);
63 |
64 | inputStr = "";
65 |
66 | while(!inputStream.atEnd())
67 | {
68 | currentLine = inputStream.readLine();
69 | inputStr.append(currentLine);
70 | }
71 |
72 | this->configVector->readInput(inputStr);
73 |
74 | inputFile.close();
75 |
76 | }
77 |
78 | /***********************************************************
79 | * Accessor *
80 | ***********************************************************/
81 |
82 | // +-------------------------------------------------------+
83 | // | Configuration vector |
84 | // +-------------------------------------------------------+
85 |
86 | ConfigurationVector* ConfigurationLoadSave::getConfigurationVector()
87 | {
88 | return (this->configVector);
89 | }
90 |
91 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/configurationLoadSave.h:
--------------------------------------------------------------------------------
1 | #ifndef CONFIGURATIONLOADSAVE_H
2 | #define CONFIGURATIONLOADSAVE_H
3 |
4 | #include
5 | #include
6 | #include
7 |
8 | #include "configurationVector.h"
9 |
10 | class ConfigurationLoadSave
11 | {
12 |
13 | public:
14 |
15 |
16 | /***********************************************************
17 | * Constructor *
18 | ***********************************************************/
19 |
20 | ConfigurationLoadSave();
21 |
22 | /***********************************************************
23 | * Destructor *
24 | ***********************************************************/
25 |
26 | ~ConfigurationLoadSave();
27 |
28 |
29 |
30 | };
31 |
32 | #endif // CONFIGURATIONLOADSAVE_H
33 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/manyearsObj.h:
--------------------------------------------------------------------------------
1 | #ifndef MANYEARSOBJ_H
2 | #define MANYEARSOBJ_H
3 |
4 | #include
5 | #include
6 | #include
7 | #include
8 |
9 | #include "audioManager.h"
10 | #include "potentialSourceManager.h"
11 | #include "sourceManager.h"
12 | #include "window.h"
13 |
14 | #ifdef __cplusplus
15 | extern "C" {
16 | #endif
17 |
18 | #include "ManyEars/beamformer.h"
19 | #include "ManyEars/mixture.h"
20 |
21 | #ifdef __cplusplus
22 | }
23 | #endif
24 |
25 | void updateCallBack(void *objPtr);
26 |
27 | class ManyEarsObject : public QObject
28 | {
29 |
30 | Q_OBJECT;
31 |
32 | public:
33 |
34 | ManyEarsObject(PotentialSourceManager *_potentialSourceManager, SourceManager *_sourceManager, Window *_windowPlot);
35 |
36 | virtual ~ManyEarsObject();
37 |
38 | void setRecordDevice(int _deviceIndex);
39 |
40 | QString getRecordDeviceName(int _deviceIndex);
41 |
42 | int getRecordDeviceCount();
43 |
44 | void updateInputFrames();
45 |
46 | void findPotentialSources();
47 |
48 | void applyFilter();
49 |
50 | void loadSources();
51 |
52 | void start();
53 |
54 | void stop();
55 |
56 | public slots:
57 |
58 | void slotStart();
59 |
60 | void slotStop();
61 |
62 | signals:
63 |
64 | // +-------------------------------------------------------+
65 | // | Confirm operation |
66 | // +-------------------------------------------------------+
67 |
68 | void confirmOperation();
69 |
70 | private:
71 |
72 | AudioManager *recorder;
73 |
74 | int deviceIndex;
75 |
76 | int maximumSources;
77 |
78 | struct objMixture *currentMixture;
79 |
80 | struct objSources *currentSources;
81 |
82 | SourceManager *sourceManager;
83 |
84 | PotentialSourceManager *potentialSourceManager;
85 |
86 | Window *windowPlot;
87 |
88 | bool running;
89 |
90 | QMutex threadMutex;
91 |
92 | };
93 |
94 | #endif // MANYEARSOBJ_H
95 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/mdiSubWindow.cpp:
--------------------------------------------------------------------------------
1 | #include "mdiSubWindow.h"
2 | #include
3 |
4 | MdiSubWindow::MdiSubWindow(QWidget * parent, Qt::WindowFlags flags): QMdiSubWindow(parent, flags)
5 | {
6 |
7 | }
8 |
9 | MdiSubWindow::~MdiSubWindow()
10 | {
11 |
12 | }
13 |
14 | bool MdiSubWindow::event(QEvent *event)
15 | {
16 |
17 | if (event->type() == QEvent::User)
18 | {
19 |
20 | // +-----------------------------------------------+
21 | // | Window needs to be shown |
22 | // +-----------------------------------------------+
23 |
24 | ShowEvent *showEvent = dynamic_cast(event);
25 |
26 | if (showEvent != NULL)
27 | {
28 |
29 | this->show();
30 |
31 | }
32 |
33 | return true;
34 |
35 | }
36 |
37 | return QMdiSubWindow::event(event);
38 |
39 | }
40 |
41 | void MdiSubWindow::closeEvent ( QCloseEvent * event )
42 | {
43 |
44 | hide();
45 | event->ignore();
46 |
47 | emit this->windowIsHidden();
48 |
49 | }
50 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/mdiSubWindow.h:
--------------------------------------------------------------------------------
1 | #include
2 | #include "sourceBuffer.h"
3 |
4 | class MdiSubWindow: public QMdiSubWindow
5 | {
6 |
7 | Q_OBJECT
8 |
9 | public:
10 |
11 | MdiSubWindow(QWidget * parent = 0, Qt::WindowFlags flags = 0);
12 |
13 | ~MdiSubWindow();
14 |
15 | protected:
16 |
17 | virtual bool event(QEvent *event);
18 | virtual void closeEvent ( QCloseEvent * event );
19 |
20 | signals:
21 |
22 | void windowIsHidden();
23 |
24 | };
25 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/potentialSource.cpp:
--------------------------------------------------------------------------------
1 | #include "potentialSource.h"
2 |
3 | /***********************************************************
4 | * Constructor *
5 | ***********************************************************/
6 |
7 | PotentialSource::PotentialSource(const float _X, const float _Y, const float _Z, const float _E)
8 | {
9 |
10 | this->setX(_X);
11 | this->setY(_Y);
12 | this->setZ(_Z);
13 | this->setE(_E);
14 |
15 | }
16 |
17 | PotentialSource::PotentialSource()
18 | {
19 |
20 | this->setX(0.0);
21 | this->setY(0.0);
22 | this->setZ(0.0);
23 | this->setE(0.0);
24 |
25 | }
26 |
27 | /***********************************************************
28 | * Destructor *
29 | ***********************************************************/
30 |
31 | PotentialSource::~PotentialSource()
32 | {
33 |
34 | }
35 |
36 | /***********************************************************
37 | * Accessors *
38 | ***********************************************************/
39 |
40 | // +-------------------------------------------------------+
41 | // | Position |
42 | // +-------------------------------------------------------+
43 |
44 | const float PotentialSource::getX()
45 | {
46 | return (this->X);
47 | }
48 |
49 | const float PotentialSource::getY()
50 | {
51 | return (this->Y);
52 | }
53 |
54 | const float PotentialSource::getZ()
55 | {
56 | return (this->Z);
57 | }
58 |
59 | // +-------------------------------------------------------+
60 | // | Energy |
61 | // +-------------------------------------------------------+
62 |
63 | const float PotentialSource::getE()
64 | {
65 | return (this->E);
66 | }
67 |
68 | /***********************************************************
69 | * Mutators *
70 | ***********************************************************/
71 |
72 | // +-------------------------------------------------------+
73 | // | Position |
74 | // +-------------------------------------------------------+
75 |
76 | void PotentialSource::setX(const float _X)
77 | {
78 | this->X = _X;
79 | }
80 |
81 | void PotentialSource::setY(const float _Y)
82 | {
83 | this->Y = _Y;
84 | }
85 |
86 | void PotentialSource::setZ(const float _Z)
87 | {
88 | this->Z = _Z;
89 | }
90 |
91 | // +-------------------------------------------------------+
92 | // | Energy |
93 | // +-------------------------------------------------------+
94 |
95 | void PotentialSource::setE(const float _E)
96 | {
97 | this->E = _E;
98 | }
99 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/potentialSource.h:
--------------------------------------------------------------------------------
1 | #ifndef POTENTIALSOURCE_H
2 | #define POTENTIALSOURCE_H
3 |
4 | class PotentialSource
5 | {
6 |
7 | public:
8 |
9 | /***********************************************************
10 | * Constructor *
11 | ***********************************************************/
12 |
13 | PotentialSource(const float _X, const float _Y, const float _Z, const float _E);
14 | PotentialSource();
15 |
16 | /***********************************************************
17 | * Destructor *
18 | ***********************************************************/
19 |
20 | ~PotentialSource();
21 |
22 | /***********************************************************
23 | * Accessors *
24 | ***********************************************************/
25 |
26 | // +-------------------------------------------------------+
27 | // | Position |
28 | // +-------------------------------------------------------+
29 |
30 | const float getX();
31 | const float getY();
32 | const float getZ();
33 |
34 | // +-------------------------------------------------------+
35 | // | Energy |
36 | // +-------------------------------------------------------+
37 |
38 | const float getE();
39 |
40 | /***********************************************************
41 | * Mutators *
42 | ***********************************************************/
43 |
44 | // +-------------------------------------------------------+
45 | // | Position |
46 | // +-------------------------------------------------------+
47 |
48 | void setX(const float _X);
49 | void setY(const float _Y);
50 | void setZ(const float _Z);
51 |
52 | // +-------------------------------------------------------+
53 | // | Energy |
54 | // +-------------------------------------------------------+
55 |
56 | void setE(const float _E);
57 |
58 | private:
59 |
60 | /***********************************************************
61 | * Fields *
62 | ***********************************************************/
63 |
64 | float X, Y, Z;
65 | float E;
66 |
67 | };
68 |
69 |
70 | #endif
71 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/resources.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 | README.TXT
4 | COPYING.TXT
5 | Images/logoonly.png
6 | Images/logo5_bgwhite.png
7 | Configuration_Vectors/default.mes
8 | Configuration_Vectors/HRIDemo.mes
9 |
10 |
11 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/scrollListProperty.h:
--------------------------------------------------------------------------------
1 | #ifndef SCROLLLISTPROPERTY_H
2 | #define SCROLLLISTPROPERTY_H
3 |
4 | #include
5 | #include
6 | #include
7 |
8 | #include "listProperty.h"
9 |
10 | class ScrollListProperty: public QWidget
11 | {
12 |
13 | Q_OBJECT
14 |
15 | public:
16 |
17 | /***********************************************************
18 | * Constructor *
19 | ***********************************************************/
20 |
21 | ScrollListProperty(int _width, int _scrollBarWidth, int _height);
22 |
23 | /***********************************************************
24 | * Destructor *
25 | ***********************************************************/
26 |
27 | ~ScrollListProperty();
28 |
29 | /***********************************************************
30 | * Access the list *
31 | ***********************************************************/
32 |
33 | ListProperty *getListProperty();
34 |
35 | public slots:
36 |
37 | /***********************************************************
38 | * Slots *
39 | ***********************************************************/
40 |
41 | // +-------------------------------------------------------+
42 | // | Resize occured |
43 | // +-------------------------------------------------------+
44 |
45 | void resizeOccured();
46 |
47 | protected:
48 |
49 | /***********************************************************
50 | * Events *
51 | ***********************************************************/
52 |
53 | // +-------------------------------------------------------+
54 | // | Resize occurs |
55 | // +-------------------------------------------------------+
56 |
57 | void resizeEvent(QResizeEvent *event);
58 |
59 | private:
60 |
61 | /***********************************************************
62 | * Adjust range of the scroll bar *
63 | ***********************************************************/
64 | void adjustRange();
65 |
66 | /***********************************************************
67 | * Private fields *
68 | ***********************************************************/
69 |
70 | // +-------------------------------------------------------+
71 | // | Widgets |
72 | // +-------------------------------------------------------+
73 |
74 | ListProperty *list;
75 | QScrollBar *scrollBar;
76 | QGridLayout *grid;
77 |
78 | // +-------------------------------------------------------+
79 | // | Dimensions |
80 | // +-------------------------------------------------------+
81 |
82 | int width;
83 | int scrollBarWidth;
84 | int height;
85 |
86 | };
87 |
88 | #endif // SCROLLLISTPROPERTY_H
89 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/source.cpp:
--------------------------------------------------------------------------------
1 | #include "source.h"
2 |
3 | /***********************************************************
4 | * Constructor *
5 | ***********************************************************/
6 |
7 | Source::Source(int _sourceID, int _colorID, float _x, float _y, float _z)
8 | {
9 | this->sourceID = _sourceID;
10 | this->colorID = _colorID;
11 | this->active = true;
12 | this->x = _x;
13 | this->y = _y;
14 | this->z = _z;
15 | }
16 |
17 | Source::Source()
18 | {
19 | this->sourceID = 0;
20 | this->colorID = 0;
21 | this->active = false;
22 | this->x = 0;
23 | this->y = 0;
24 | this->z = 0;
25 | }
26 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/source.h:
--------------------------------------------------------------------------------
1 | #ifndef SOURCE_H
2 | #define SOURCE_H
3 |
4 | class Source
5 | {
6 |
7 | public:
8 |
9 | /***********************************************************
10 | * Constructor *
11 | ***********************************************************/
12 |
13 | Source(int _sourceID, int _colorID, float _x, float _y, float _z);
14 | Source();
15 |
16 | /***********************************************************
17 | * Public fields *
18 | ***********************************************************/
19 |
20 | int sourceID;
21 | int colorID;
22 | bool active;
23 | float x;
24 | float y;
25 | float z;
26 |
27 | };
28 |
29 | #endif // SOURCE_H
30 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/sourceGenerator.cpp:
--------------------------------------------------------------------------------
1 | #include "sourceGenerator.h"
2 |
3 | SourceGenerator::SourceGenerator(SourceManager *_myManager, PlotLongitude *_myPlotLongitude, PlotLatitude *_myPlotLatitude, SpherePlot *_mySpherePlot)
4 | {
5 |
6 | this->myManager = _myManager;
7 | this->myPlotLongitude = _myPlotLongitude;
8 | this->myPlotLatitude = _myPlotLatitude;
9 | this->mySpherePlot = _mySpherePlot;
10 | this->t = 0;
11 | this->refresh3d = 0;
12 |
13 | }
14 |
15 | void SourceGenerator::generateSources()
16 | {
17 |
18 | this->t++;
19 |
20 | this->myManager->addSource(1,0.8*cos(t/100.0),0.8*sin(t/100.0),+0.6);
21 | this->myManager->addSource(2,0.8*sin(t/100.0),0.8*cos(t/100.0),-0.6);
22 |
23 | this->myManager->updateFrame();
24 | this->myPlotLongitude->updateGraph();
25 | this->myPlotLatitude->updateGraph();
26 |
27 | this->refresh3d++;
28 |
29 | if (this->refresh3d > 5)
30 | {
31 | this->refresh3d = 0;
32 | this->mySpherePlot->updateGL();
33 | }
34 |
35 | }
36 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/sourceGenerator.h:
--------------------------------------------------------------------------------
1 | #ifndef SOURCEGENERATOR_H
2 | #define SOURCEGENERATOR_H
3 |
4 | #include
5 |
6 | #include "sourceManager.h"
7 | #include "plotLongitude.h"
8 | #include "plotLatitude.h"
9 | #include "spherePlot.h"
10 |
11 | class SourceGenerator: public QWidget
12 | {
13 |
14 | Q_OBJECT
15 |
16 | public:
17 |
18 | SourceGenerator(SourceManager *_myManager, PlotLongitude *_myPlotLongitude, PlotLatitude *_myPlotLatitude, SpherePlot *_mySpherePlot);
19 |
20 | public slots:
21 |
22 | void generateSources();
23 |
24 | private:
25 |
26 | SourceManager *myManager;
27 | PlotLongitude *myPlotLongitude;
28 | PlotLatitude *myPlotLatitude;
29 | SpherePlot *mySpherePlot;
30 | float t;
31 | int refresh3d;
32 |
33 | };
34 |
35 | #endif // SOURCEGENERATOR_H
36 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/sourceManager.h:
--------------------------------------------------------------------------------
1 | #ifndef SOURCEMANAGER_H
2 | #define SOURCEMANAGER_H
3 |
4 | #include
5 | #include
6 |
7 | #include
8 |
9 | #include "colorPalette.h"
10 | #include "source.h"
11 |
12 |
13 |
14 | class SourceManager
15 | {
16 |
17 | public:
18 |
19 | /***********************************************************
20 | * Constructor *
21 | ***********************************************************/
22 |
23 | SourceManager(int _maxSources, ColorPalette *_colorPalette);
24 |
25 | /***********************************************************
26 | * Update *
27 | ***********************************************************/
28 |
29 | // +-------------------------------------------------------+
30 | // | Update the frame for plotting |
31 | // +-------------------------------------------------------+
32 |
33 | void updateFrame();
34 |
35 | // +-------------------------------------------------------+
36 | // | Add a source for the current frame |
37 | // +-------------------------------------------------------+
38 |
39 | void addSource(int _sourceID, float _x, float _y, float _z);
40 |
41 | // +-------------------------------------------------------+
42 | // | Reset (clear all sources) |
43 | // +-------------------------------------------------------+
44 |
45 | void reset();
46 |
47 | // +-------------------------------------------------------+
48 | // | Start |
49 | // +-------------------------------------------------------+
50 |
51 | void start();
52 |
53 | // +-------------------------------------------------------+
54 | // | Stop |
55 | // +-------------------------------------------------------+
56 |
57 | void stop();
58 |
59 | /***********************************************************
60 | * Public fields *
61 | ***********************************************************/
62 |
63 | int numberSources;
64 | QVector connectLongitudeAngles;
65 | QVector connectLatitudeAngles;
66 | QVector connectColors;
67 | QVector connectXPosition;
68 | QVector connectYPosition;
69 | QVector connectZPosition;
70 |
71 | // +-------------------------------------------------------+
72 | // | Mutex |
73 | // +-------------------------------------------------------+
74 |
75 | // Lock the plot for rendering
76 | //QMutex blockRendering;
77 |
78 | private:
79 |
80 | /***********************************************************
81 | * Private fields *
82 | ***********************************************************/
83 |
84 | ColorPalette *sourcePalette;
85 |
86 | QVector listSources;
87 |
88 | int maxSources;
89 |
90 | bool active;
91 |
92 |
93 |
94 | };
95 |
96 | #endif // SOURCEMANAGER_H
97 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/sphereObj.h:
--------------------------------------------------------------------------------
1 | #ifndef SPHEREOBJ_H
2 | #define SPHEREOBJ_H
3 |
4 | #include "math.h"
5 |
6 | class Sphere
7 | {
8 |
9 | public:
10 |
11 | /***********************************************************
12 | * Constructor *
13 | ***********************************************************/
14 |
15 | Sphere(int _numberLevels, float _radius);
16 |
17 | /***********************************************************
18 | * Destructor *
19 | ***********************************************************/
20 |
21 | ~Sphere();
22 |
23 | /***********************************************************
24 | * Accessors *
25 | ***********************************************************/
26 |
27 | // +-------------------------------------------------------+
28 | // | Get the number of triangles |
29 | // +-------------------------------------------------------+
30 |
31 | int getNumberTriangles();
32 |
33 | // +-------------------------------------------------------+
34 | // | Get the number of levels |
35 | // +-------------------------------------------------------+
36 |
37 | int getNumberLevels();
38 |
39 | // +-------------------------------------------------------+
40 | // | Get the vertices of a given triangle |
41 | // +-------------------------------------------------------+
42 |
43 | void getTriangleVertices(int _triangleIndex, float *_x1, float *_y1, float *_z1, float *_x2, float *_y2, float *_z2, float *_x3, float *_y3, float *_z3);
44 |
45 | // +-------------------------------------------------------+
46 | // | Get the radius |
47 | // +-------------------------------------------------------+
48 |
49 | float getRadius();
50 |
51 |
52 | private:
53 |
54 | /***********************************************************
55 | * Computations *
56 | ***********************************************************/
57 |
58 | // +-------------------------------------------------------+
59 | // | Initialization of the sphere triangles |
60 | // +-------------------------------------------------------+
61 |
62 | void initSphere(float _radius);
63 |
64 | /***********************************************************
65 | * Private fields *
66 | ***********************************************************/
67 |
68 | // Array of vertices
69 | float **arrayTriangles;
70 |
71 | // Number of triangles
72 | int numberTriangles;
73 |
74 | // Number of levels
75 | int numberLevels;
76 |
77 | // Radius of the sphere
78 | float radius;
79 |
80 | // Position of the sphere
81 | float x, y, z;
82 |
83 | };
84 |
85 | #endif // SPHERE_H
86 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/trackedSource.h:
--------------------------------------------------------------------------------
1 | #ifndef TRACKEDSOURCE_H
2 | #define TRACKEDSOURCE_H
3 |
4 | class TrackedSource
5 | {
6 |
7 | public:
8 |
9 | /***********************************************************
10 | * Constructor *
11 | ***********************************************************/
12 |
13 | TrackedSource(const float _X, const float _Y, const float _Z, const int _trackedSourceID, const int _colorID);
14 | TrackedSource();
15 |
16 | /***********************************************************
17 | * Destructor *
18 | ***********************************************************/
19 |
20 | ~TrackedSource();
21 |
22 | /***********************************************************
23 | * Accessors *
24 | ***********************************************************/
25 |
26 | // +-------------------------------------------------------+
27 | // | Position |
28 | // +-------------------------------------------------------+
29 |
30 | const float getX();
31 | const float getY();
32 | const float getZ();
33 |
34 | // +-------------------------------------------------------+
35 | // | Tracked source ID |
36 | // +-------------------------------------------------------+
37 |
38 | const int getTrackedSourceID();
39 |
40 | // +-------------------------------------------------------+
41 | // | Color ID |
42 | // +-------------------------------------------------------+
43 |
44 | const int getColorID();
45 |
46 |
47 | /***********************************************************
48 | * Mutators *
49 | ***********************************************************/
50 |
51 | // +-------------------------------------------------------+
52 | // | Position |
53 | // +-------------------------------------------------------+
54 |
55 | void setX(const float _X);
56 | void setY(const float _Y);
57 | void setZ(const float _Z);
58 |
59 | // +-------------------------------------------------------+
60 | // | Tracked source ID |
61 | // +-------------------------------------------------------+
62 |
63 | void setTrackedSourceID(const int _trackedSourceID);
64 |
65 | // +-------------------------------------------------------+
66 | // | Color ID |
67 | // +-------------------------------------------------------+
68 |
69 | void setColorID(const int _colorID);
70 |
71 | private:
72 |
73 | /***********************************************************
74 | * Fields *
75 | ***********************************************************/
76 |
77 | float X, Y, Z;
78 | int trackedSourceID;
79 | int colorID;
80 |
81 | };
82 |
83 |
84 | #endif
85 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/winBeamformerLatitude.h:
--------------------------------------------------------------------------------
1 | #ifndef WINBEAMFORMERLATITUDE_H
2 | #define WINBEAMFORMERLATITUDE_H
3 |
4 | #include
5 | #include
6 |
7 | #include "PlotBeamformerLatitude.h"
8 | #include "sourceManager.h"
9 |
10 | //class WinBeamformerLatitude : public QMdiSubWindow
11 | //{
12 | //
13 | //public:
14 | //
15 | // /***********************************************************
16 | // * Constructor *
17 | // ***********************************************************/
18 | //
19 | // WinBeamformerLatitude(int _width, int _height, int _samplingRate, int _hopSize, PotentialSourceManager *_sourceManager);
20 | //
21 | // /***********************************************************
22 | // * Destructor *
23 | // ***********************************************************/
24 | //
25 | // ~WinBeamformerLatitude();
26 | //
27 | // /***********************************************************
28 | // * Refresh *
29 | // ***********************************************************/
30 | //
31 | // void updatePlot();
32 | // void initPlot();
33 | //
34 | // /***********************************************************
35 | // * Mutator *
36 | // ***********************************************************/
37 | //
38 | // // +-------------------------------------------------------+
39 | // // | Time scale |
40 | // // +-------------------------------------------------------+
41 | //
42 | // void setXMin(float _xMin);
43 | // void setXMax(float _xMax);
44 | // void setXInterval(float _xInterval);
45 | //
46 | // // +-------------------------------------------------------+
47 | // // | Background |
48 | // // +-------------------------------------------------------+
49 | //
50 | // void setColorBackground(QColor _colorBackground);
51 | //
52 | // // +-------------------------------------------------------+
53 | // // | Trace |
54 | // // +-------------------------------------------------------+
55 | //
56 | // void setSizePoint(int _sizePoint);
57 | //
58 | // // +-------------------------------------------------------+
59 | // // | Axes |
60 | // // +-------------------------------------------------------+
61 | //
62 | // void setColorHorizontalBar(QColor _colorHorizontalBar);
63 | // void setColorVerticalBar(QColor _colorVerticalBar);
64 | //
65 | //private:
66 | //
67 | // /***********************************************************
68 | // * Private fields *
69 | // ***********************************************************/
70 | //
71 | // QGridLayout *mainGrid;
72 | // QWidget *tmpWidget;
73 | // int width;
74 | // int height;
75 | // PlotBeamformerLatitude *mainPlot;
76 | //
77 | // int samplingRate;
78 | // int hopSize;
79 | //
80 | // PotentialSourceManager *mainManager;
81 | //
82 | //};
83 |
84 | #endif // WINLATITUDE_H
85 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/winLatitude.h:
--------------------------------------------------------------------------------
1 | #ifndef WINLATITUDE_H
2 | #define WINLATITUDE_H
3 |
4 | #include
5 | #include
6 |
7 | #include "plotLatitude.h"
8 | #include "sourceManager.h"
9 |
10 | class WinLatitude : public QMdiSubWindow
11 | {
12 |
13 | public:
14 |
15 | /***********************************************************
16 | * Constructor *
17 | ***********************************************************/
18 |
19 | WinLatitude(int _width, int _height, int _samplingRate, int _hopSize, SourceManager *_sourceManager);
20 |
21 | /***********************************************************
22 | * Destructor *
23 | ***********************************************************/
24 |
25 | ~WinLatitude();
26 |
27 | /***********************************************************
28 | * Refresh *
29 | ***********************************************************/
30 |
31 | void updatePlot();
32 | void initPlot();
33 |
34 | /***********************************************************
35 | * Mutator *
36 | ***********************************************************/
37 |
38 | // +-------------------------------------------------------+
39 | // | Time scale |
40 | // +-------------------------------------------------------+
41 |
42 | void setXMin(float _xMin);
43 | void setXMax(float _xMax);
44 | void setXInterval(float _xInterval);
45 |
46 | // +-------------------------------------------------------+
47 | // | Background |
48 | // +-------------------------------------------------------+
49 |
50 | void setColorBackground(QColor _colorBackground);
51 |
52 | // +-------------------------------------------------------+
53 | // | Trace |
54 | // +-------------------------------------------------------+
55 |
56 | void setSizePoint(int _sizePoint);
57 |
58 | // +-------------------------------------------------------+
59 | // | Axes |
60 | // +-------------------------------------------------------+
61 |
62 | void setColorHorizontalBar(QColor _colorHorizontalBar);
63 | void setColorVerticalBar(QColor _colorVerticalBar);
64 |
65 | private:
66 |
67 | /***********************************************************
68 | * Private fields *
69 | ***********************************************************/
70 |
71 | QGridLayout *mainGrid;
72 | QWidget *tmpWidget;
73 | int width;
74 | int height;
75 | PlotLatitude *mainPlot;
76 |
77 | int samplingRate;
78 | int hopSize;
79 |
80 | SourceManager *mainManager;
81 |
82 | };
83 |
84 | #endif // WINLATITUDE_H
85 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/winLongitude.h:
--------------------------------------------------------------------------------
1 | #ifndef WINLONGITUDE_H
2 | #define WINLONGITUDE_H
3 |
4 | #include
5 | #include
6 |
7 | #include "plotLongitude.h"
8 | #include "sourceManager.h"
9 |
10 | class WinLongitude : public QMdiSubWindow
11 | {
12 |
13 | public:
14 |
15 | /***********************************************************
16 | * Constructor *
17 | ***********************************************************/
18 |
19 | WinLongitude(int _width, int _height, int _samplingRate, int _hopSize, SourceManager *_sourceManager);
20 |
21 | /***********************************************************
22 | * Destructor *
23 | ***********************************************************/
24 |
25 | ~WinLongitude();
26 |
27 | /***********************************************************
28 | * Refresh *
29 | ***********************************************************/
30 |
31 | void updatePlot();
32 | void initPlot();
33 |
34 | /***********************************************************
35 | * Mutator *
36 | ***********************************************************/
37 |
38 | // +-------------------------------------------------------+
39 | // | Time scale |
40 | // +-------------------------------------------------------+
41 |
42 | void setXMin(float _xMin);
43 | void setXMax(float _xMax);
44 | void setXInterval(float _xInterval);
45 |
46 | // +-------------------------------------------------------+
47 | // | Background |
48 | // +-------------------------------------------------------+
49 |
50 | void setColorBackground(QColor _colorBackground);
51 |
52 | // +-------------------------------------------------------+
53 | // | Trace |
54 | // +-------------------------------------------------------+
55 |
56 | void setSizePoint(int _sizePoint);
57 |
58 | // +-------------------------------------------------------+
59 | // | Axes |
60 | // +-------------------------------------------------------+
61 |
62 | void setColorHorizontalBar(QColor _colorHorizontalBar);
63 | void setColorVerticalBar(QColor _colorVerticalBar);
64 |
65 | private:
66 |
67 | /***********************************************************
68 | * Private fields *
69 | ***********************************************************/
70 |
71 | QGridLayout *mainGrid;
72 | QWidget *tmpWidget;
73 | int width;
74 | int height;
75 | PlotLongitude *mainPlot;
76 |
77 | int samplingRate;
78 | int hopSize;
79 |
80 | SourceManager *mainManager;
81 |
82 | };
83 |
84 | #endif // WINLONGITUDE_H
85 |
--------------------------------------------------------------------------------
/manyears-C/Qt4GUI/winSphere.h:
--------------------------------------------------------------------------------
1 | #ifndef WINSPHERE_H
2 | #define WINSPHERE_H
3 |
4 | #include
5 | #include
6 |
7 | #include "spherePlot.h"
8 | #include "sourceManager.h"
9 |
10 | class WinSphere : public QMdiSubWindow
11 | {
12 |
13 | public:
14 |
15 | /***********************************************************
16 | * Constructor *
17 | ***********************************************************/
18 |
19 | WinSphere(int _width, int _height, int _samplingRate, int _hopSize, SourceManager *_sourceManager, int _updateFactor);
20 |
21 | /***********************************************************
22 | * Destructor *
23 | ***********************************************************/
24 |
25 | ~WinSphere();
26 |
27 | /***********************************************************
28 | * Mutator *
29 | ***********************************************************/
30 |
31 | // +-------------------------------------------------------+
32 | // | Set the background color |
33 | // +-------------------------------------------------------+
34 |
35 | void setBackgroundColor(QColor _color);
36 |
37 | // +-------------------------------------------------------+
38 | // | Set the top grid color |
39 | // +-------------------------------------------------------+
40 |
41 | void setTopGridColor(QColor _color);
42 |
43 | // +-------------------------------------------------------+
44 | // | Set the bottom grid color |
45 | // +-------------------------------------------------------+
46 |
47 | void setBottomGridColor(QColor _color);
48 |
49 | /***********************************************************
50 | * Refresh *
51 | ***********************************************************/
52 |
53 | void updatePlot();
54 |
55 |
56 |
57 | private:
58 |
59 | /***********************************************************
60 | * Private fields *
61 | ***********************************************************/
62 |
63 | int width;
64 | int height;
65 | SpherePlot *mainPlot;
66 |
67 | int samplingRate;
68 | int hopSize;
69 |
70 | int updateFactor;
71 | int updateCounter;
72 |
73 | SourceManager *mainManager;
74 |
75 | };
76 |
77 | #endif // WINSPHERE_H
78 |
--------------------------------------------------------------------------------
/manyears-C/RTAudio/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | MESSAGE( STATUS "Buiding RTAudio Library...")
2 |
3 |
4 | find_package(Jack)
5 |
6 |
7 | IF (WIN32)
8 |
9 | ADD_DEFINITIONS(-D__WINDOWS_ASIO__)
10 |
11 |
12 | SET(RTAudioLib_SRCS
13 | RtAudio.cpp
14 | iasiothiscallresolver.cpp
15 | asiolist.cpp
16 | asiodrivers.cpp
17 | asio.cpp
18 | )
19 |
20 | SET(RTAudioLib_HEADERS
21 | soundcard.h
22 | RtError.h
23 | RtAudio.h
24 | iasiothiscallresolver.h
25 | iasiodrv.h
26 | ginclude.h
27 | dsound.h
28 | asiosys.h
29 | asiolist.h
30 | asiodrvr.h
31 | asiodrivers.h
32 | asio.h
33 | )
34 |
35 | INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/RTAudio ${ALSA_INCLUDE_DIR} )
36 | add_library(RTAudioLib STATIC ${RTAudioLib_SRCS} ${RTAudioLib_HEADERS} )
37 | target_link_libraries(RTAudioLib ${ALSA_LIBRARY})
38 | set_target_properties(RTAudioLib PROPERTIES LINK_FLAGS ${MANYEARS_LINK_FLAGS} OUTPUT_NAME rtaudio)
39 | #INSTALL(TARGETS RTAudioLib DESTINATION bin)
40 | INSTALL(TARGETS RTAudioLib DESTINATION rtaudio/lib)
41 | INSTALL(FILES ${RTAudioLib_HEADERS} DESTINATION rtaudio/include)
42 | ENDIF(WIN32)
43 |
44 | IF (UNIX)
45 | SET(RTAudioLib_SRCS
46 | RtAudio.cpp
47 | )
48 |
49 | SET(RTAudioLib_HEADERS
50 | soundcard.h
51 | RtError.h
52 | RtAudio.h
53 | ginclude.h
54 | )
55 |
56 |
57 |
58 |
59 | IF (APPLE)
60 | ADD_DEFINITIONS(-D__MACOSX_CORE__ -DMAC)
61 | INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/RTAudio)
62 | add_library(RTAudioLib STATIC ${RTAudioLib_SRCS} ${RTAudioLib_HEADERS} )
63 | target_link_libraries(RTAudioLib "-framework CoreFoundation -framework CoreAudio -framework AudioUnit -framework AudioToolbox")
64 | set_target_properties(RTAudioLib PROPERTIES OUTPUT_NAME rtaudio)
65 | ELSE(APPLE)
66 |
67 | IF (JACK_FOUND)
68 | ADD_DEFINITIONS(-D__UNIX_JACK__)
69 | INCLUDE_DIRECTORIES(${INCLUDE_DIRECTORIES} ${JACK_INCLUDE_DIR})
70 | ENDIF(JACK_FOUND)
71 |
72 | #find_package(ALSA REQUIRED)
73 | ADD_DEFINITIONS(-D__LINUX_ALSA__)
74 | SET(ALSA_LIBRARY "-lasound -lpthread")
75 | INCLUDE_DIRECTORIES(${INCLUDE_DIRECTORIES} ${PROJECT_SOURCE_DIR}/RTAudio ${ALSA_INCLUDE_DIR} )
76 | add_library(RTAudioLib SHARED ${RTAudioLib_SRCS} ${RTAudioLib_HEADERS} )
77 |
78 | IF (JACK_FOUND)
79 | target_link_libraries(RTAudioLib ${ALSA_LIBRARY} ${JACK_LIBRARIES})
80 | ELSE(JACK_FOUND)
81 | target_link_libraries(RTAudioLib ${ALSA_LIBRARY})
82 | ENDIF(JACK_FOUND)
83 |
84 | MESSAGE("ALSA lib : ${ALSA_LIBRARY}")
85 | set_target_properties(RTAudioLib PROPERTIES LINK_FLAGS ${MANYEARS_LINK_FLAGS} OUTPUT_NAME rtaudio)
86 | ENDIF(APPLE)
87 |
88 | #Installation directory
89 | INSTALL(TARGETS RTAudioLib DESTINATION rtaudio/lib)
90 | INSTALL(FILES ${RTAudioLib_HEADERS} DESTINATION rtaudio/include)
91 |
92 | ENDIF(UNIX)
93 |
94 |
95 |
96 |
97 |
98 |
--------------------------------------------------------------------------------
/manyears-C/RTAudio/RtError.h:
--------------------------------------------------------------------------------
1 | /************************************************************************/
2 | /*! \class RtError
3 | \brief Exception handling class for RtAudio & RtMidi.
4 |
5 | The RtError class is quite simple but it does allow errors to be
6 | "caught" by RtError::Type. See the RtAudio and RtMidi
7 | documentation to know which methods can throw an RtError.
8 |
9 | */
10 | /************************************************************************/
11 |
12 | #ifndef RTERROR_H
13 | #define RTERROR_H
14 |
15 | #include
16 | #include
17 | #include
18 |
19 | class RtError : public std::exception
20 | {
21 | public:
22 | //! Defined RtError types.
23 | enum Type {
24 | WARNING, /*!< A non-critical error. */
25 | DEBUG_WARNING, /*!< A non-critical error which might be useful for debugging. */
26 | UNSPECIFIED, /*!< The default, unspecified error type. */
27 | NO_DEVICES_FOUND, /*!< No devices found on system. */
28 | INVALID_DEVICE, /*!< An invalid device ID was specified. */
29 | MEMORY_ERROR, /*!< An error occured during memory allocation. */
30 | INVALID_PARAMETER, /*!< An invalid parameter was specified to a function. */
31 | INVALID_USE, /*!< The function was called incorrectly. */
32 | DRIVER_ERROR, /*!< A system driver error occured. */
33 | SYSTEM_ERROR, /*!< A system error occured. */
34 | THREAD_ERROR /*!< A thread error occured. */
35 | };
36 |
37 | //! The constructor.
38 | RtError( const std::string& message, Type type = RtError::UNSPECIFIED ) throw() : message_(message), type_(type) {}
39 |
40 | //! The destructor.
41 | virtual ~RtError( void ) throw() {}
42 |
43 | //! Prints thrown error message to stderr.
44 | virtual void printMessage( void ) const throw() { std::cerr << '\n' << message_ << "\n\n"; }
45 |
46 | //! Returns the thrown error message type.
47 | virtual const Type& getType(void) const throw() { return type_; }
48 |
49 | //! Returns the thrown error message string.
50 | virtual const std::string& getMessage(void) const throw() { return message_; }
51 |
52 | //! Returns the thrown error message as a c-style string.
53 | virtual const char* what( void ) const throw() { return message_.c_str(); }
54 |
55 | protected:
56 | std::string message_;
57 | Type type_;
58 | };
59 |
60 | #endif
61 |
--------------------------------------------------------------------------------
/manyears-C/RTAudio/asiodrivers.h:
--------------------------------------------------------------------------------
1 | #ifndef __AsioDrivers__
2 | #define __AsioDrivers__
3 |
4 | #include "ginclude.h"
5 |
6 | #if MAC
7 | #include "CodeFragments.hpp"
8 |
9 | class AsioDrivers : public CodeFragments
10 |
11 | #elif WINDOWS
12 | #include
13 | #include "asiolist.h"
14 |
15 | class AsioDrivers : public AsioDriverList
16 |
17 | #elif SGI || BEOS
18 | #include "asiolist.h"
19 |
20 | class AsioDrivers : public AsioDriverList
21 |
22 | #else
23 | #error implement me
24 | #endif
25 |
26 | {
27 | public:
28 | AsioDrivers();
29 | ~AsioDrivers();
30 |
31 | bool getCurrentDriverName(char *name);
32 | long getDriverNames(char **names, long maxDrivers);
33 | bool loadDriver(char *name);
34 | void removeCurrentDriver();
35 | long getCurrentDriverIndex() {return curIndex;}
36 | protected:
37 | unsigned long connID;
38 | long curIndex;
39 | };
40 |
41 | #endif
42 |
--------------------------------------------------------------------------------
/manyears-C/RTAudio/asiodrvr.h:
--------------------------------------------------------------------------------
1 | /*
2 | Steinberg Audio Stream I/O API
3 | (c) 1996, Steinberg Soft- und Hardware GmbH
4 | charlie (May 1996)
5 |
6 | asiodrvr.h
7 | c++ superclass to implement asio functionality. from this,
8 | you can derive whatever required
9 | */
10 |
11 | #ifndef _asiodrvr_
12 | #define _asiodrvr_
13 |
14 | // cpu and os system we are running on
15 | #include "asiosys.h"
16 | // basic "C" interface
17 | #include "asio.h"
18 |
19 | class AsioDriver;
20 | extern AsioDriver *getDriver(); // for generic constructor
21 |
22 | #if WINDOWS
23 | #include
24 | #include "combase.h"
25 | #include "iasiodrv.h"
26 | class AsioDriver : public IASIO ,public CUnknown
27 | {
28 | public:
29 | AsioDriver(LPUNKNOWN pUnk, HRESULT *phr);
30 |
31 | DECLARE_IUNKNOWN
32 | // Factory method
33 | static CUnknown *CreateInstance(LPUNKNOWN pUnk, HRESULT *phr);
34 | // IUnknown
35 | virtual HRESULT STDMETHODCALLTYPE NonDelegatingQueryInterface(REFIID riid,void **ppvObject);
36 |
37 | #else
38 |
39 | class AsioDriver
40 | {
41 | public:
42 | AsioDriver();
43 | #endif
44 | virtual ~AsioDriver();
45 |
46 | virtual ASIOBool init(void* sysRef);
47 | virtual void getDriverName(char *name); // max 32 bytes incl. terminating zero
48 | virtual long getDriverVersion();
49 | virtual void getErrorMessage(char *string); // max 124 bytes incl.
50 |
51 | virtual ASIOError start();
52 | virtual ASIOError stop();
53 |
54 | virtual ASIOError getChannels(long *numInputChannels, long *numOutputChannels);
55 | virtual ASIOError getLatencies(long *inputLatency, long *outputLatency);
56 | virtual ASIOError getBufferSize(long *minSize, long *maxSize,
57 | long *preferredSize, long *granularity);
58 |
59 | virtual ASIOError canSampleRate(ASIOSampleRate sampleRate);
60 | virtual ASIOError getSampleRate(ASIOSampleRate *sampleRate);
61 | virtual ASIOError setSampleRate(ASIOSampleRate sampleRate);
62 | virtual ASIOError getClockSources(ASIOClockSource *clocks, long *numSources);
63 | virtual ASIOError setClockSource(long reference);
64 |
65 | virtual ASIOError getSamplePosition(ASIOSamples *sPos, ASIOTimeStamp *tStamp);
66 | virtual ASIOError getChannelInfo(ASIOChannelInfo *info);
67 |
68 | virtual ASIOError createBuffers(ASIOBufferInfo *bufferInfos, long numChannels,
69 | long bufferSize, ASIOCallbacks *callbacks);
70 | virtual ASIOError disposeBuffers();
71 |
72 | virtual ASIOError controlPanel();
73 | virtual ASIOError future(long selector, void *opt);
74 | virtual ASIOError outputReady();
75 | };
76 | #endif
77 |
--------------------------------------------------------------------------------
/manyears-C/RTAudio/asiolist.h:
--------------------------------------------------------------------------------
1 | #ifndef __asiolist__
2 | #define __asiolist__
3 |
4 | #define DRVERR -5000
5 | #define DRVERR_INVALID_PARAM DRVERR-1
6 | #define DRVERR_DEVICE_ALREADY_OPEN DRVERR-2
7 | #define DRVERR_DEVICE_NOT_FOUND DRVERR-3
8 |
9 | #define MAXPATHLEN 512
10 | #define MAXDRVNAMELEN 128
11 |
12 | struct asiodrvstruct
13 | {
14 | int drvID;
15 | CLSID clsid;
16 | char dllpath[MAXPATHLEN];
17 | char drvname[MAXDRVNAMELEN];
18 | LPVOID asiodrv;
19 | struct asiodrvstruct *next;
20 | };
21 |
22 | typedef struct asiodrvstruct ASIODRVSTRUCT;
23 | typedef ASIODRVSTRUCT *LPASIODRVSTRUCT;
24 |
25 | class AsioDriverList {
26 | public:
27 | AsioDriverList();
28 | ~AsioDriverList();
29 |
30 | LONG asioOpenDriver (int,VOID **);
31 | LONG asioCloseDriver (int);
32 |
33 | // nice to have
34 | LONG asioGetNumDev (VOID);
35 | LONG asioGetDriverName (int,char *,int);
36 | LONG asioGetDriverPath (int,char *,int);
37 | LONG asioGetDriverCLSID (int,CLSID *);
38 |
39 | // or use directly access
40 | LPASIODRVSTRUCT lpdrvlist;
41 | int numdrv;
42 | };
43 |
44 | typedef class AsioDriverList *LPASIODRIVERLIST;
45 |
46 | #endif
47 |
--------------------------------------------------------------------------------
/manyears-C/RTAudio/asiosys.h:
--------------------------------------------------------------------------------
1 | #ifndef __asiosys__
2 | #define __asiosys__
3 |
4 | #ifdef WIN32
5 | #undef MAC
6 | #define PPC 0
7 | #define WINDOWS 1
8 | #define SGI 0
9 | #define SUN 0
10 | #define LINUX 0
11 | #define BEOS 0
12 |
13 | #define NATIVE_INT64 0
14 | #define IEEE754_64FLOAT 1
15 |
16 | #elif BEOS
17 | #define MAC 0
18 | #define PPC 0
19 | #define WINDOWS 0
20 | #define PC 0
21 | #define SGI 0
22 | #define SUN 0
23 | #define LINUX 0
24 |
25 | #define NATIVE_INT64 0
26 | #define IEEE754_64FLOAT 1
27 |
28 | #ifndef DEBUG
29 | #define DEBUG 0
30 | #if DEBUG
31 | void DEBUGGERMESSAGE(char *string);
32 | #else
33 | #define DEBUGGERMESSAGE(a)
34 | #endif
35 | #endif
36 |
37 | #elif SGI
38 | #define MAC 0
39 | #define PPC 0
40 | #define WINDOWS 0
41 | #define PC 0
42 | #define SUN 0
43 | #define LINUX 0
44 | #define BEOS 0
45 |
46 | #define NATIVE_INT64 0
47 | #define IEEE754_64FLOAT 1
48 |
49 | #ifndef DEBUG
50 | #define DEBUG 0
51 | #if DEBUG
52 | void DEBUGGERMESSAGE(char *string);
53 | #else
54 | #define DEBUGGERMESSAGE(a)
55 | #endif
56 | #endif
57 |
58 | #else // MAC
59 |
60 | #define MAC 1
61 | #define PPC 1
62 | #define WINDOWS 0
63 | #define PC 0
64 | #define SGI 0
65 | #define SUN 0
66 | #define LINUX 0
67 | #define BEOS 0
68 |
69 | #define NATIVE_INT64 0
70 | #define IEEE754_64FLOAT 1
71 |
72 | #ifndef DEBUG
73 | #define DEBUG 0
74 | #if DEBUG
75 | void DEBUGGERMESSAGE(char *string);
76 | #else
77 | #define DEBUGGERMESSAGE(a)
78 | #endif
79 | #endif
80 | #endif
81 |
82 | #endif
83 |
--------------------------------------------------------------------------------
/manyears-C/RTAudio/ginclude.h:
--------------------------------------------------------------------------------
1 | #ifndef __gInclude__
2 | #define __gInclude__
3 |
4 | #if SGI
5 | #undef BEOS
6 | #undef MAC
7 | #undef WINDOWS
8 | //
9 | #define ASIO_BIG_ENDIAN 1
10 | #define ASIO_CPU_MIPS 1
11 | #elif defined WIN32
12 | #undef BEOS
13 | #undef MAC
14 | #undef SGI
15 | #define WINDOWS 1
16 | #define ASIO_LITTLE_ENDIAN 1
17 | #define ASIO_CPU_X86 1
18 | #elif BEOS
19 | #undef MAC
20 | #undef SGI
21 | #undef WINDOWS
22 | #define ASIO_LITTLE_ENDIAN 1
23 | #define ASIO_CPU_X86 1
24 | //
25 | #else
26 | #define MAC 1
27 | #undef BEOS
28 | #undef WINDOWS
29 | #undef SGI
30 | #define ASIO_BIG_ENDIAN 1
31 | #define ASIO_CPU_PPC 1
32 | #endif
33 |
34 | // always
35 | #define NATIVE_INT64 0
36 | #define IEEE754_64FLOAT 1
37 |
38 | #endif // __gInclude__
39 |
--------------------------------------------------------------------------------
/manyears-C/RTAudio/iasiodrv.h:
--------------------------------------------------------------------------------
1 | #include "asiosys.h"
2 | #include "asio.h"
3 |
4 | /* Forward Declarations */
5 |
6 | #ifndef __ASIODRIVER_FWD_DEFINED__
7 | #define __ASIODRIVER_FWD_DEFINED__
8 | typedef interface IASIO IASIO;
9 | #endif /* __ASIODRIVER_FWD_DEFINED__ */
10 |
11 | interface IASIO : public IUnknown
12 | {
13 |
14 | virtual ASIOBool init(void *sysHandle) = 0;
15 | virtual void getDriverName(char *name) = 0;
16 | virtual long getDriverVersion() = 0;
17 | virtual void getErrorMessage(char *string) = 0;
18 | virtual ASIOError start() = 0;
19 | virtual ASIOError stop() = 0;
20 | virtual ASIOError getChannels(long *numInputChannels, long *numOutputChannels) = 0;
21 | virtual ASIOError getLatencies(long *inputLatency, long *outputLatency) = 0;
22 | virtual ASIOError getBufferSize(long *minSize, long *maxSize,
23 | long *preferredSize, long *granularity) = 0;
24 | virtual ASIOError canSampleRate(ASIOSampleRate sampleRate) = 0;
25 | virtual ASIOError getSampleRate(ASIOSampleRate *sampleRate) = 0;
26 | virtual ASIOError setSampleRate(ASIOSampleRate sampleRate) = 0;
27 | virtual ASIOError getClockSources(ASIOClockSource *clocks, long *numSources) = 0;
28 | virtual ASIOError setClockSource(long reference) = 0;
29 | virtual ASIOError getSamplePosition(ASIOSamples *sPos, ASIOTimeStamp *tStamp) = 0;
30 | virtual ASIOError getChannelInfo(ASIOChannelInfo *info) = 0;
31 | virtual ASIOError createBuffers(ASIOBufferInfo *bufferInfos, long numChannels,
32 | long bufferSize, ASIOCallbacks *callbacks) = 0;
33 | virtual ASIOError disposeBuffers() = 0;
34 | virtual ASIOError controlPanel() = 0;
35 | virtual ASIOError future(long selector,void *opt) = 0;
36 | virtual ASIOError outputReady() = 0;
37 | };
38 |
--------------------------------------------------------------------------------
/manyears-C/Samples/rawdata_2srcs_90_90.raw:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/Samples/rawdata_2srcs_90_90.raw
--------------------------------------------------------------------------------
/manyears-C/demo/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | #ManyEars Executable
2 |
3 | #add source here
4 | SET(SRCS
5 | manyears_demo.c
6 | )
7 |
8 | #Include directories
9 | INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR}
10 | ${PROJECT_SOURCE_DIR}/
11 | ${PROJECT_SOURCE_DIR}/dsplib
12 | ${PROJECT_SOURCE_DIR}/RTAudio
13 | )
14 |
15 |
16 | add_executable(manyears_demo manyears_demo.c)
17 | set_target_properties(manyears_demo PROPERTIES LINK_FLAGS ${MANYEARS_LINK_FLAGS})
18 | target_link_libraries(manyears_demo ManyEarsLib -lm)
19 |
20 |
21 | #INSTALL DEMONSTRATION FILES
22 | INSTALL(FILES ${SRCS} DESTINATION example)
23 |
24 |
25 |
--------------------------------------------------------------------------------
/manyears-C/dsplib/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | MESSAGE( STATUS "Buiding ManyEarsLib Library...")
2 |
3 | SET(ManyEarsLib_SRCS
4 | Geometry/microphones.c
5 | Preprocessing/mcra.c
6 | Preprocessing/micst.c
7 | Preprocessing/preprocessor.c
8 | Localisation/beamformer.c
9 | Localisation/delays.c
10 | Localisation/potentialSources.c
11 | Localisation/rij.c
12 | Localisation/sphere.c
13 | Tracking/filter.c
14 | Tracking/mixture.c
15 | Tracking/trackedSources.c
16 | Separation/gss.c
17 | Separation/postfilter.c
18 | Separation/postfilteredSources.c
19 | Separation/separatedSources.c
20 | Output/output.c
21 | Output/outputChunk.c
22 | Output/outputSingleStream.c
23 | Postprocessing/postprocessor.c
24 | Utilities/linearCorrelation.c
25 | Utilities/dynamicMemory.c
26 | Utilities/fft.c
27 | Utilities/idList.c
28 | Utilities/idManager.c
29 | Utilities/matrix.c
30 | Utilities/randGen.c
31 | Utilities/transcendental.c
32 | Utilities/window.c
33 | Utilities/mathadvanced.c
34 | parameters.c
35 | overallContext.c
36 | )
37 |
38 | SET(ManyEarsLib_HEADERS
39 | Geometry/microphones.h
40 | Preprocessing/mcra.h
41 | Preprocessing/micst.h
42 | Preprocessing/preprocessor.h
43 | Localisation/beamformer.h
44 | Localisation/delays.h
45 | Localisation/potentialSources.h
46 | Localisation/rij.h
47 | Localisation/sphere.h
48 | Tracking/filter.h
49 | Tracking/mixture.h
50 | Tracking/trackedSources.h
51 | Separation/gss.h
52 | Separation/postfilter.h
53 | Separation/postfilteredSources.h
54 | Separation/separatedSources.h
55 | Output/output.h
56 | Output/outputChunk.h
57 | Output/outputSingleStream.h
58 | Postprocessing/postprocessor.h
59 | Utilities/linearCorrelation.h
60 | Utilities/dynamicMemory.h
61 | Utilities/fft.h
62 | Utilities/idList.h
63 | Utilities/idManager.h
64 | Utilities/mathadvanced.h
65 | Utilities/matrix.h
66 | Utilities/randGen.h
67 | Utilities/transcendental.h
68 | Utilities/window.h
69 | parameters.h
70 | overallContext.h
71 | hardware.h
72 | )
73 |
74 | #INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/dsplib )
75 | INCLUDE_DIRECTORIES(.)
76 |
77 |
78 | add_library(ManyEarsLib STATIC ${ManyEarsLib_SRCS} ${ManyEarsLib_HEADERS} )
79 | target_link_libraries(ManyEarsLib )
80 | set_target_properties(ManyEarsLib PROPERTIES LINK_FLAGS ${MANYEARS_LINK_FLAGS} OUTPUT_NAME manyears)
81 |
82 | INSTALL(TARGETS ManyEarsLib DESTINATION lib)
83 |
84 |
85 | #Install headers in the adequate directory
86 | FOREACH(header_file ${ManyEarsLib_HEADERS})
87 | GET_FILENAME_COMPONENT(HEADER_PATH ${header_file} PATH)
88 | INSTALL(FILES ${header_file} DESTINATION include/${HEADER_PATH})
89 | ENDFOREACH(header_file)
90 |
91 |
92 | #INSTALL(FILES ${ManyEarsLib_HEADERS} DESTINATION include)
93 |
94 | #add_executable(sse_test sseTest.c sseTest.h)
95 | #set_target_properties(sse_test PROPERTIES LINK_FLAGS ${MANYEARS_LINK_FLAGS})
96 | #target_link_libraries(sse_test ManyEarsLib -lm)
97 |
98 |
99 |
100 |
--------------------------------------------------------------------------------
/manyears-C/dsplib/Geometry/microphones.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Geometry/microphones.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Geometry/microphones.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Geometry/microphones.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/beamformer.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/beamformer.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/beamformer.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/beamformer.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/delays.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/delays.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/delays.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/delays.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/potentialSources.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/potentialSources.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/potentialSources.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/potentialSources.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/rij.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/rij.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/rij.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/rij.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/sphere.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/sphere.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Localisation/sphere.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Localisation/sphere.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Output/output.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Output/output.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Output/output.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Output/output.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Output/outputChunk.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Output/outputChunk.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Output/outputChunk.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Output/outputChunk.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Output/outputSingleStream.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Output/outputSingleStream.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Output/outputSingleStream.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Output/outputSingleStream.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Postprocessing/postprocessor.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Postprocessing/postprocessor.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Postprocessing/postprocessor.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Postprocessing/postprocessor.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Preprocessing/mcra.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Preprocessing/mcra.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Preprocessing/mcra.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Preprocessing/mcra.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Preprocessing/micst.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Preprocessing/micst.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Preprocessing/micst.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Preprocessing/micst.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Preprocessing/preprocessor.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Preprocessing/preprocessor.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Preprocessing/preprocessor.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Preprocessing/preprocessor.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Separation/gss.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Separation/gss.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Separation/gss.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Separation/gss.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Separation/postfilter.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Separation/postfilter.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Separation/postfilter.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Separation/postfilter.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Separation/postfilteredSources.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Separation/postfilteredSources.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Separation/postfilteredSources.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Separation/postfilteredSources.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Separation/separatedSources.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Separation/separatedSources.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Separation/separatedSources.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Separation/separatedSources.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Tracking/filter.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Tracking/filter.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Tracking/filter.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Tracking/filter.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Tracking/mixture.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Tracking/mixture.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Tracking/mixture.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Tracking/mixture.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Tracking/trackedSources.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Tracking/trackedSources.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Tracking/trackedSources.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Tracking/trackedSources.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/dynamicMemory.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/dynamicMemory.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/dynamicMemory.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/dynamicMemory.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/fft.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/fft.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/fft.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/fft.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/idList.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/idList.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/idList.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/idList.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/idManager.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/idManager.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/idManager.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/idManager.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/linearCorrelation.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/linearCorrelation.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/linearCorrelation.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/linearCorrelation.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/mathadvanced.c:
--------------------------------------------------------------------------------
1 | #include "Utilities/mathadvanced.h"
2 |
3 | float expest(float _arg)
4 | {
5 |
6 | // Compute the exponential with the limit definition:
7 | //
8 | // exp(x) = (1 + x/n)^n
9 | //
10 | // where n is the number of iteration (needs to go to
11 | // infinity to get exact result)
12 |
13 | // Here n = 128;
14 | //
15 | // Only good for range x = [-128,0]
16 |
17 | float sum;
18 |
19 | sum = (float) (1.0 + _arg / 128.0);
20 |
21 | if (sum < 0.0)
22 | {
23 | sum = 0.0;
24 | }
25 |
26 | sum *= sum;
27 | sum *= sum;
28 | sum *= sum;
29 | sum *= sum;
30 | sum *= sum;
31 | sum *= sum;
32 | sum *= sum;
33 |
34 | return sum;
35 |
36 | }
37 |
38 |
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/mathadvanced.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/mathadvanced.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/matrix.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/matrix.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/matrix.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/matrix.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/randGen.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/randGen.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/randGen.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/randGen.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/transcendental.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/transcendental.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/transcendental.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/transcendental.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/window.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/window.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/Utilities/window.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/Utilities/window.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/hardware.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/hardware.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/overallContext.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/overallContext.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/overallContext.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/overallContext.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/parameters.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/parameters.c
--------------------------------------------------------------------------------
/manyears-C/dsplib/parameters.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/parameters.h
--------------------------------------------------------------------------------
/manyears-C/dsplib/sseTest.c:
--------------------------------------------------------------------------------
1 | #include "hardware.h"
2 | #include "stdio.h"
3 |
4 | int main (int argc, char* argv[])
5 | {
6 |
7 | #ifdef USE_SIMD
8 |
9 | // SIMD registers
10 | __m128_mod regA, regB, regC;
11 | int i;
12 |
13 | regA.m128_f32[0] = 1.0;
14 | regA.m128_f32[1] = 2.0;
15 | regA.m128_f32[2] = 3.0;
16 | regA.m128_f32[3] = 4.0;
17 |
18 | regB.m128_f32[0] = 10.0;
19 | regB.m128_f32[1] = 20.0;
20 | regB.m128_f32[2] = 30.0;
21 | regB.m128_f32[3] = 40.0;
22 |
23 | regC.m128 = _mm_add_ps(regA.m128,regB.m128);
24 |
25 | for (i = 0; i < 4; i++)
26 | {
27 | printf("%f\n",regC.m128_f32[i]);
28 | }
29 |
30 | #endif
31 |
32 | return 0;
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/manyears-C/dsplib/sseTest.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/introlab/manyears/d62d80077b78d4b61776c467742ad4cec23c4aed/manyears-C/dsplib/sseTest.h
--------------------------------------------------------------------------------
/manyears-C/example/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | #ManyEars Executable
2 |
3 | #add source here
4 | SET(SRCS
5 | manyears_console.c
6 | manyears_iterative.c
7 | )
8 |
9 |
10 | SET(SAMPLES
11 | "${PROJECT_SOURCE_DIR}/Samples/rawdata_2srcs_90_90.raw"
12 | )
13 |
14 | #Include directories
15 | INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR}
16 | ${PROJECT_SOURCE_DIR}/
17 | ${PROJECT_SOURCE_DIR}/dsplib
18 | ${PROJECT_SOURCE_DIR}/RTAudio
19 | )
20 |
21 | #Batch application
22 | add_executable(manyears_console manyears_console.c)
23 | set_target_properties(manyears_console PROPERTIES LINK_FLAGS ${MANYEARS_LINK_FLAGS})
24 | target_link_libraries(manyears_console ManyEarsLib -lm)
25 |
26 | #Live application
27 | add_executable(manyears_live manyears_live.cpp)
28 | set_target_properties(manyears_live PROPERTIES LINK_FLAGS ${MANYEARS_LINK_FLAGS})
29 | target_link_libraries(manyears_live ManyEarsLib RTAudioLib -lm)
30 |
31 | #Iterative separation application
32 | add_executable(manyears_iterative manyears_iterative.c)
33 | set_target_properties(manyears_iterative PROPERTIES LINK_FLAGS ${MANYEARS_LINK_FLAGS})
34 | target_link_libraries(manyears_iterative ManyEarsLib -lm)
35 |
36 | #INSTALL DEMONSTRATION FILES
37 | INSTALL(FILES ${SRCS} DESTINATION example)
38 |
39 | #INSTALL SAMPLE FILES
40 | INSTALL(FILES ${SAMPLES} DESTINATION samples)
41 |
--------------------------------------------------------------------------------
/manyears-C/macros/FindJack.cmake:
--------------------------------------------------------------------------------
1 | # - Try to find jack-2.6
2 | # Once done this will define
3 | #
4 | # JACK_FOUND - system has jack
5 | # JACK_INCLUDE_DIRS - the jack include directory
6 | # JACK_LIBRARIES - Link these to use jack
7 | # JACK_DEFINITIONS - Compiler switches required for using jack
8 | #
9 | # Copyright (c) 2008 Andreas Schneider
10 | # Modified for other libraries by Lasse Kärkkäinen
11 | #
12 | # Redistribution and use is allowed according to the terms of the New
13 | # BSD license.
14 | # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
15 | #
16 |
17 | if (JACK_LIBRARIES AND JACK_INCLUDE_DIRS)
18 | # in cache already
19 | set(JACK_FOUND TRUE)
20 | else (JACK_LIBRARIES AND JACK_INCLUDE_DIRS)
21 | # use pkg-config to get the directories and then use these values
22 | # in the FIND_PATH() and FIND_LIBRARY() calls
23 | if (${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} EQUAL 4)
24 | include(UsePkgConfig)
25 | pkgconfig(jack _JACK_INCLUDEDIR _JACK_LIBDIR _JACK_LDFLAGS _JACK_CFLAGS)
26 | else (${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} EQUAL 4)
27 | find_package(PkgConfig)
28 | if (PKG_CONFIG_FOUND)
29 | pkg_check_modules(_JACK jack)
30 | endif (PKG_CONFIG_FOUND)
31 | endif (${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} EQUAL 4)
32 | find_path(JACK_INCLUDE_DIR
33 | NAMES
34 | jack/jack.h
35 | PATHS
36 | ${_JACK_INCLUDEDIR}
37 | /usr/include
38 | /usr/local/include
39 | /opt/local/include
40 | /sw/include
41 | )
42 |
43 | find_library(JACK_LIBRARY
44 | NAMES
45 | jack
46 | PATHS
47 | ${_JACK_LIBDIR}
48 | /usr/lib
49 | /usr/local/lib
50 | /opt/local/lib
51 | /sw/lib
52 | )
53 |
54 | if (JACK_LIBRARY AND JACK_INCLUDE_DIR)
55 | set(JACK_FOUND TRUE)
56 |
57 | set(JACK_INCLUDE_DIRS
58 | ${JACK_INCLUDE_DIR}
59 | )
60 |
61 | set(JACK_LIBRARIES
62 | ${JACK_LIBRARIES}
63 | ${JACK_LIBRARY}
64 | )
65 |
66 | endif (JACK_LIBRARY AND JACK_INCLUDE_DIR)
67 |
68 | if (JACK_FOUND)
69 | if (NOT JACK_FIND_QUIETLY)
70 | message(STATUS "Found jack: ${JACK_LIBRARY}")
71 | endif (NOT JACK_FIND_QUIETLY)
72 | else (JACK_FOUND)
73 | if (JACK_FIND_REQUIRED)
74 | message(FATAL_ERROR "Could not find JACK")
75 | endif (JACK_FIND_REQUIRED)
76 | endif (JACK_FOUND)
77 |
78 | # show the JACK_INCLUDE_DIRS and JACK_LIBRARIES variables only in the advanced view
79 | mark_as_advanced(JACK_INCLUDE_DIRS JACK_LIBRARIES)
80 |
81 | endif (JACK_LIBRARIES AND JACK_INCLUDE_DIRS)
82 |
--------------------------------------------------------------------------------
/manyears-flowdesigner/AUTHORS:
--------------------------------------------------------------------------------
1 | AUTHORS
2 | Jean-Marc Valin
3 | Dominic Letourneau
4 | Yannick Brosseau
5 |
--------------------------------------------------------------------------------
/manyears-flowdesigner/ChangeLog:
--------------------------------------------------------------------------------
1 | ChangeLog
2 |
--------------------------------------------------------------------------------
/manyears-flowdesigner/GUI/CMakeLists.txt:
--------------------------------------------------------------------------------
1 |
2 | # the next line sets up include and link directories and defines some variables that we will use.
3 | # you can modify the behavior by setting some variables, e.g.
4 | # set(QT_USE_OPENGL TRUE)
5 | # -> this will cause cmake to include and link against the OpenGL module
6 |
7 | #finding qt
8 |
9 | SET(QT_USE_QTNETWORK TRUE)
10 | SET(QT_USE_QTWEBKIT TRUE)
11 | SET(QT_USE_PHONON TRUE)
12 |
13 |
14 | find_package(Qt4 REQUIRED)
15 |
16 | IF (QT_PHONON_FOUND)
17 | ADD_DEFINITIONS(-D_HAVE_PHONON_)
18 | ENDIF(QT_PHONON_FOUND)
19 |
20 | #REQUIRED
21 | include(${QT_USE_FILE})
22 |
23 | #Sources for the AudioViewer application
24 | SET(AUDIOVIEWER_SRCS
25 | main.cpp
26 | FDReader.cpp
27 | )
28 |
29 | SET(AUDIOVIEWER_HEADERS
30 | FDReader.h
31 | )
32 |
33 | #Shared sources between AudioViewer application and Probes used in FlowDesigner
34 | SET(AUDIOVIEWERSHARED_SRCS
35 | audioview.cpp
36 | TrackAudioWidget.cpp
37 | ImageView.cpp
38 | SNCRZ30Cam.cpp
39 | )
40 |
41 | SET(AUDIOVIEWERSHARED_HEADERS
42 | audioview.h
43 | TrackAudioWidget.h
44 | ImageView.h
45 | SNCRZ30Cam.h
46 | )
47 |
48 | #Sources for Probes used in FlowDesigner
49 | SET(AUDIOVIEWERPROBES_SRCS
50 | QtProbeAudioViewer.cpp
51 | )
52 |
53 | SET(AUDIOVIEWERPROBES_HEADERS
54 | QtProbeAudioViewer.h
55 | )
56 |
57 | #This will generate moc_* for Qt
58 | QT4_WRAP_CPP(AUDIOVIEWER_MOC_SRCS ${AUDIOVIEWER_HEADERS})
59 | #This will generate moc_* for Qt
60 | QT4_WRAP_CPP(AUDIOVIEWERSHARED_MOC_SRCS ${AUDIOVIEWERSHARED_HEADERS})
61 | #This will generate moc_* for Qt
62 | QT4_WRAP_CPP(AUDIOVIEWERPROBES_MOC_SRCS ${AUDIOVIEWERPROBES_HEADERS})
63 |
64 | #Qtflow includes
65 | SET (FLOWDESIGNER_QTFLOW_INCLUDE_DIR "${FLOWDESIGNER_INCLUDE_DIR}/qtflow/")
66 |
67 | #include files
68 | INCLUDE_DIRECTORIES(./ ../src ${FLOWDESIGNER_INCLUDE_DIR} ${QT_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR} ${FLOWDESIGNER_QTFLOW_INCLUDE_DIR} )
69 |
70 | # create an executable file named "AUDIOVIEWER" from the source files
71 | add_executable(audioviewer ${AUDIOVIEWER_SRCS} ${AUDIOVIEWER_MOC_SRCS} ${AUDIOVIEWERSHARED_SRCS} ${AUDIOVIEWERSHARED_MOC_SRCS})
72 |
73 | # Linking with libflow and Qt libraries
74 |
75 | target_link_libraries(audioviewer ${QT_LIBRARIES} -L${FLOWDESIGNER_LIB_DIR} -lflow ${LIBXML2_LIBRARIES} libmanyears-dynamic)
76 |
77 | #install application
78 | install(TARGETS audioviewer DESTINATION bin)
79 |
80 | #Create a library, used for probes
81 | ADD_DEFINITIONS(-DINSTALL_PREFIX=\"${FD_PREFIX}\")
82 | add_library(libmanyears-probe-dynamic SHARED ${AUDIOVIEWERSHARED_SRCS} ${AUDIOVIEWERSHARED_MOC_SRCS} ${AUDIOVIEWERPROBES_SRCS} ${AUDIOVIEWERPROBES_MOC_SRCS})
83 |
84 | set_target_properties(libmanyears-probe-dynamic PROPERTIES OUTPUT_NAME manyears.probe
85 |
86 | )
87 |
88 | IF (APPLE)
89 | set_target_properties(libmanyears-probe-dynamic PROPERTIES
90 | BUILD_WITH_INSTALL_RPATH ON
91 | INSTALL_NAME_DIR ${FLOWDESIGNER_TOOLBOX_DIR}/ManyEars/lib)
92 | ENDIF(APPLE)
93 |
94 |
95 | target_link_libraries(libmanyears-probe-dynamic ${QT_LIBRARIES} -L${FLOWDESIGNER_LIB_DIR} -lflow -lqtflow ${LIBXML2_LIBRARIES} libmanyears-dynamic)
96 | install(TARGETS libmanyears-probe-dynamic DESTINATION ${FLOWDESIGNER_TOOLBOX_DIR}/ManyEars/lib)
97 |
--------------------------------------------------------------------------------
/manyears-flowdesigner/GUI/FDReader.h:
--------------------------------------------------------------------------------
1 | /* Copyright (C) 2006-2007 Eric Beaudry, Simon Briere, Dominic Letourneau
2 |
3 | This program is free software; you can redistribute it and/or
4 | modify it under the terms of the GNU General Public License
5 | as published by the Free Software Foundation; either version 2
6 | of the License, or (at your option) any later version.
7 |
8 | This program is distributed in the hope that it will be useful,
9 | but WITHOUT ANY WARRANTY; without even the implied warranty of
10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 | GNU General Public License for more details.
12 |
13 | You should have received a copy of the GNU General Public License
14 | along with this program; if not, write to the Free Software
15 | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
16 | */
17 |
18 | #ifndef _FDREADER_H_
19 | #define _FDREADER_H_
20 |
21 | #include
22 | #include
23 | #include
24 | #include
25 | #include
26 | #include "Vector.h"
27 | #include "AudioSource.h"
28 |
29 |
30 | class FDReader : public QTcpServer {
31 |
32 | Q_OBJECT;
33 |
34 | public:
35 |
36 | FDReader(int port=30011, int backlog=1);
37 |
38 | ~FDReader();
39 |
40 | public slots:
41 |
42 | void dataReady();
43 | void udpDataReady();
44 |
45 | signals:
46 |
47 | void putData(FD::RCPtr > sources);
48 | void sourceReady(AudioSource source);
49 |
50 | protected:
51 |
52 | virtual void incomingConnection ( int socketDescriptor );
53 |
54 | std::vector m_sockets;
55 |
56 | QUdpSocket *m_udpSocket;
57 |
58 | };
59 | #endif
60 |
--------------------------------------------------------------------------------
/manyears-flowdesigner/GUI/ImageView.cpp:
--------------------------------------------------------------------------------
1 | /* Copyright (C) 2006-2007 Eric Beaudry, Simon Briere, Dominic Letourneau
2 |
3 | This program is free software; you can redistribute it and/or
4 | modify it under the terms of the GNU General Public License
5 | as published by the Free Software Foundation; either version 2
6 | of the License, or (at your option) any later version.
7 |
8 | This program is distributed in the hope that it will be useful,
9 | but WITHOUT ANY WARRANTY; without even the implied warranty of
10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 | GNU General Public License for more details.
12 |
13 | You should have received a copy of the GNU General Public License
14 | along with this program; if not, write to the Free Software
15 | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
16 | */
17 |
18 | #include "ImageView.h"
19 | #include
20 | #include
21 | #include "DefaultImage.xpm"
22 |
23 | ImageView::ImageView(QWidget*parent)
24 | : QLabel(parent) {
25 |
26 | setPixmap(QPixmap (Default_xpm));
27 | }
28 |
29 | ImageView::~ImageView()
30 | {
31 | }
32 |
33 | void ImageView::putImage(const QImage& image)
34 | {
35 | setPixmap(QPixmap().fromImage(image));
36 | }
37 |
--------------------------------------------------------------------------------
/manyears-flowdesigner/GUI/ImageView.h:
--------------------------------------------------------------------------------
1 | /* Copyright (C) 2006-2007 Eric Beaudry, Simon Briere, Dominic Letourneau
2 |
3 | This program is free software; you can redistribute it and/or
4 | modify it under the terms of the GNU General Public License
5 | as published by the Free Software Foundation; either version 2
6 | of the License, or (at your option) any later version.
7 |
8 | This program is distributed in the hope that it will be useful,
9 | but WITHOUT ANY WARRANTY; without even the implied warranty of
10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 | GNU General Public License for more details.
12 |
13 | You should have received a copy of the GNU General Public License
14 | along with this program; if not, write to the Free Software
15 | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
16 | */
17 |
18 | #ifndef _IMAGE_VIEW_H_
19 | #define _IMAGE_VIEW_H_
20 |
21 | #include
22 | #include
23 | #include
24 |
25 |
26 | class ImageView : public QLabel
27 | {
28 | Q_OBJECT;
29 |
30 | public:
31 | ImageView(QWidget*parent);
32 |
33 | ~ImageView();
34 |
35 | public slots:
36 | void putImage(const QImage& image);
37 |
38 | private:
39 |
40 | };
41 |
42 |
43 | #endif
44 |
45 |
--------------------------------------------------------------------------------
/manyears-flowdesigner/GUI/QtProbeAudioViewer.cpp:
--------------------------------------------------------------------------------
1 |
2 | #include "QtProbeAudioViewer.h"
3 | #include "TrackAudioWidget.h"
4 |
5 | #include
6 | #include
7 | #include
8 | #include
9 | #include
10 |
11 | using namespace FD;
12 |
13 | DECLARE_PROBE(QtProbeAudioViewer)
14 | DECLARE_PROBE_ALLOWED_DATA_TYPE(QtProbeAudioViewer, "Vector")
15 |
16 | QtProbeAudioViewer::QtProbeAudioViewer(QWidget *parent, const QString &processHost, const int &processPort, const int &linkId)
17 | : QtProbe(parent, processHost, processPort, linkId)
18 | {
19 | }
20 |
21 | QtProbeAudioViewer::~QtProbeAudioViewer()
22 | {
23 | }
24 |
25 | void QtProbeAudioViewer::setupUi()
26 | {
27 | this->setWindowTitle(tr("AudioViewer - Link %1").arg(m_linkId));
28 | this->resize(1024, 768);
29 |
30 | TrackAudioWidget* trackAudioWidget = new TrackAudioWidget(this);
31 | this->setCentralWidget(trackAudioWidget);
32 |
33 | QObject::connect(this, SIGNAL(putData(FD::RCPtr >)), trackAudioWidget, SLOT(getData(FD::RCPtr >)));
34 | }
35 |
36 | void QtProbeAudioViewer::dataReceived(const QByteArray &bytes)
37 | {
38 | const char* data = bytes.data();
39 | int size = bytes.size();
40 | std::stringstream inputStream;
41 | inputStream.write(data,size);
42 |
43 | try {
44 | FD::RCPtr > fdData;
45 | inputStream >> fdData;
46 | //Will send signal putData
47 | //Object will self destruct when unused
48 | emit putData(fdData);
49 | }
50 | catch(FD::BaseException *e)
51 | {
52 | e->print(std::cerr);
53 | delete e;
54 | }
55 | catch(...)
56 | {
57 | std::cerr<<"Unknown exception in :"<<__FILE__<<":"<<__LINE__< > sources);
28 |
29 | protected:
30 | virtual void dataReceived(const QByteArray &data);
31 |
32 | private:
33 | virtual void setupUi();
34 | };
35 |
36 | #endif /*QTPROBEAUDIOVIEWER_H_*/
37 |
--------------------------------------------------------------------------------
/manyears-flowdesigner/GUI/TrackAudioWidget.h:
--------------------------------------------------------------------------------
1 | /* Copyright (C) 2006-2007 Eric Beaudry, Simon Briere, Dominic Letourneau
2 |
3 | This program is free software; you can redistribute it and/or
4 | modify it under the terms of the GNU General Public License
5 | as published by the Free Software Foundation; either version 2
6 | of the License, or (at your option) any later version.
7 |
8 | This program is distributed in the hope that it will be useful,
9 | but WITHOUT ANY WARRANTY; without even the implied warranty of
10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 | GNU General Public License for more details.
12 |
13 | You should have received a copy of the GNU General Public License
14 | along with this program; if not, write to the Free Software
15 | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
16 | */
17 |
18 | #ifndef _TRACK_AUDIO_WIDGET_H_
19 | #define _TRACK_AUDIO_WIDGET_H_
20 |
21 | #include "audioview.h"
22 | #include "ImageView.h"
23 | #include "Vector.h"
24 | #include
25 | #include
26 | #include
27 | #include
28 | #include
29 | #include
30 | #include
31 | #include
32 | #include
33 | #include
34 | #include