<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Installation_Instructions</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>Recent changes to Installation_Instructions</description><atom:link href="https://sourceforge.net/p/manyears/wiki/Installation_Instructions/feed" rel="self"/><language>en</language><lastBuildDate>Fri, 25 Sep 2015 14:27:37 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/manyears/wiki/Installation_Instructions/feed" rel="self" type="application/rss+xml"/><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v14
+++ v15
@@ -56,8 +56,9 @@
 # General Information

 The main processing loop contains the following elements : 
-
-[[img src=ProcessingLoop.png]] 
+&lt;center&gt;
+[[img src=ProcessingLoop.png width=640]] 
+&lt;/center&gt;

 ## [openStreamManyEars](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/openStream.cc?revision=HEAD&amp;amp;view=markup)

@@ -168,8 +169,9 @@

 Default microphone configuration is defined in file [cube_mic_pos.mat](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/config/cube_mic_pos.mat?revision=HEAD&amp;amp;view=markup) : 

+&lt;center&gt;
 [[img src=Cube.jpg]] 
-
+&lt;/center&gt;
   * Microphone #1 x=-18cm y=16cm z=-15.5cm 
   * Microphone #2 x=-18cm y=16cm z=15.5cm 
   * Microphone #3 x=18cm y=16cm z=-15.5cm 
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Fri, 25 Sep 2015 14:27:37 -0000</pubDate><guid>https://sourceforge.net3405888d98d64ff54c1f28ae45d077feda5db416</guid></item><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Wed, 28 May 2014 12:20:05 -0000</pubDate><guid>https://sourceforge.net89f6d0440f6e9bbd533093d7ba4897885deed3c0</guid></item><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Wed, 28 May 2014 12:20:05 -0000</pubDate><guid>https://sourceforge.net31d22382950a918bbaf39e07a65547a2b788b84d</guid></item><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v11
+++ v12
@@ -86,3 +86,106 @@
   1. **float x[3]** Contains x,y,z coordinates of the detected source. This is related to the origin of the microphone array positions. 
   2. **float strength** Strength of the source. 
   3. **int source_id** Id of the source (unique). 
+
+## ToString
+
+  * Transform the Vector&amp;lt;ObjectRef&amp;gt; output of SourceTrack containing source informations into a FlowDesigner serialized string. 
+
+## QtSendString
+
+  * Will send the string to a TCP socket on port 30000. This is the port of the audioviewer application for displaying live sources. 
+
+## Constant (CONDITION)
+
+  * This is the loop condition. The constant is set to "TRUE" for infinite looping. 
+
+## [SaveWavWin32](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/SaveWavWin32.cc?revision=HEAD&amp;amp;view=markup)
+
+  * Separated streams will be saved in WAV format. 
+
+## [UDPOSCOut](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/UDPOSCOut.cc?revision=HEAD&amp;amp;view=markup)
+
+[Open Sound Control](http://opensoundcontrol.org/) output using UDP sockets. 
+
+  * OSC format for ManyEars is the following&amp;nbsp;: 
+    
+    
+    "/manyears\0\0\0,iffffff\0\0\0\0" 
+    + source_id (4 bytes)
+    + x (4 bytes)
+    + y (4 bytes)
+    + z (4 bytes)
+    + strength (4 bytes)
+    + theta (4 bytes)
+    + phi (4 bytes)
+    
+
+The resulting code is&amp;nbsp;: 
+    
+    
+    int id = info-&amp;gt;source_id;
+    float x = info-&amp;gt;x[0];
+    float y = info-&amp;gt;x[1];
+    float z = info-&amp;gt;x[2];
+    float strength = info-&amp;gt;strength;
+    float phi = -180.0 * atan2(info-&amp;gt;x[2], info-&amp;gt;x[1]) / M_PI;;
+    float theta = 180.0 * atan2(info-&amp;gt;x[1],info-&amp;gt;x[0]) / M_PI;
+                                  
+    stringstream outputString;
+                      
+    char header[12] = {'/','m','a','n','y','e','a','r','s', '\0', '\0','\0'};
+    char tags[12] = {',','i','f','f','f','f','f','f','\0','\0','\0','\0'};
+                      
+    outputString.write(header,12);
+    outputString.write(tags,12);
+                      
+    BinIO::write&amp;lt;int&amp;gt;(outputString,&amp;amp;id,1);
+    BinIO::write&amp;lt;float&amp;gt;(outputString,&amp;amp;x,1);
+    BinIO::write&amp;lt;float&amp;gt;(outputString,&amp;amp;y,1);
+    BinIO::write&amp;lt;float&amp;gt;(outputString,&amp;amp;z,1);
+    BinIO::write&amp;lt;float&amp;gt;(outputString,&amp;amp;strength,1);
+    BinIO::write&amp;lt;float&amp;gt;(outputString,&amp;theta;,1);
+    BinIO::write&amp;lt;float&amp;gt;(outputString,&amp;phi;,1);
+                      
+                      
+    //write to the socket
+    socket.writeDatagram(outputString.str().c_str(),outputString.str().size(),
+    QHostAddress(hostname.c_str()),portnumber);
+                           
+    
+
+### Important Notes
+
+  * Phi and Theta can be calculated from x,y,z. We have decided to transmit them anyway for ease of use. 
+    * float phi = -180.0 * atan2(info-&amp;gt;x[2], info-&amp;gt;x[1]) / M_PI;; 
+    * float theta = 180.0 * atan2(info-&amp;gt;x[1],info-&amp;gt;x[0]) / M_PI; 
+  * Data must be aligned on 32 bits with OSC. 
+  * tags[12] = {',','i','f','f','f','f','f','f','\0','\0','\0','\0'}; describes the format of the OSC packet. Binary data is written using big endian (network order). 
+  * We send N separated packets, one for each of the active source. 
+  * We should consider writing a generic OSC FlowDesigner Node. 
+
+## Microphones Configuration
+
+Default microphone configuration is defined in file [cube_mic_pos.mat](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/config/cube_mic_pos.mat?revision=HEAD&amp;amp;view=markup)&amp;nbsp;: 
+
+[[img src=Cube.jpg]] 
+
+  * Microphone #1 x=-18cm y=16cm z=-15.5cm 
+  * Microphone #2 x=-18cm y=16cm z=15.5cm 
+  * Microphone #3 x=18cm y=16cm z=-15.5cm 
+  * Microphone #4 x=18cm y=16cm z=15.5cm 
+  * Microphone #5 x=-18cm y=-16cm z=-15.5cm 
+  * Microphone #6 x=-18cm y=-16cm z=15.5cm 
+  * Microphone #7 x=18cm y=-16cm z=-15.5cm 
+  * Microphone #8 x=18cm y=-16cm z=15.5cm 
+
+  
+
+
+### Important Notes
+
+  1. Microphones must be ** connected in the correct order ** in the sound card inputs. Microphone #1 goes into input #1, Microphone #2 goes into input #2, etc. 
+  2. Microphones positions can be changed to fit your setup. **It is mandatory that you configure the microphone positions otherwise the algorithm won't work.**
+  3. Sampling time for each audio input must be **synchronized** by hardware. 
+
+## Audioviewer
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Wed, 28 May 2014 12:20:05 -0000</pubDate><guid>https://sourceforge.netfa0dc6a6e61e00f5d682b8fb1ebcbb053ef0ba45</guid></item><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v10
+++ v11
@@ -83,6 +83,6 @@

 SoureTrack will output a Vector of [SourceInfo](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/SourceInfo.h?revision=HEAD&amp;amp;view=markup), which is the data structure that contains active sound sources in FlowDesigner. Most useful informations are&amp;nbsp;: 

-  1. float x[3] Contains x,y,z coordinates of the detected source. This is related to the origin of the microphone array positions. 
-  2. float strength Strength of the source. 
-  3. int source_id Id of the source (unique). 
+  1. **float x[3]** Contains x,y,z coordinates of the detected source. This is related to the origin of the microphone array positions. 
+  2. **float strength** Strength of the source. 
+  3. **int source_id** Id of the source (unique). 
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Wed, 28 May 2014 12:20:04 -0000</pubDate><guid>https://sourceforge.netb50d8adf86a5e4445d796c65c9c5e6026c72ad35</guid></item><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v9
+++ v10
@@ -82,3 +82,7 @@
 ## [SourceTrack](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/SourceTrack.cc?revision=HEAD&amp;amp;view=markup)

 SoureTrack will output a Vector of [SourceInfo](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/SourceInfo.h?revision=HEAD&amp;amp;view=markup), which is the data structure that contains active sound sources in FlowDesigner. Most useful informations are&amp;nbsp;: 
+
+  1. float x[3] Contains x,y,z coordinates of the detected source. This is related to the origin of the microphone array positions. 
+  2. float strength Strength of the source. 
+  3. int source_id Id of the source (unique). 
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Wed, 28 May 2014 12:20:04 -0000</pubDate><guid>https://sourceforge.net7d9d4d91d472c28b0fc8703ce835f1ba85fb2083</guid></item><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v8
+++ v9
@@ -78,3 +78,7 @@
 ## [SeparGSS](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/SeparGSS.cc?revision=HEAD&amp;amp;view=markup)

   * Geometric sound source separation. Please refer to the [publications](http://manyears.sourceforge.net/wiki/index.php/Main_Page#Publications) for more information. 
+
+## [SourceTrack](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/SourceTrack.cc?revision=HEAD&amp;amp;view=markup)
+
+SoureTrack will output a Vector of [SourceInfo](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/SourceInfo.h?revision=HEAD&amp;amp;view=markup), which is the data structure that contains active sound sources in FlowDesigner. Most useful informations are&amp;nbsp;: 
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Wed, 28 May 2014 12:20:04 -0000</pubDate><guid>https://sourceforge.net7d777f591e33d2923071ca7e219509496264e3bc</guid></item><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v7
+++ v8
@@ -70,3 +70,11 @@

   * 8 gains are defined for each microphone input. This is useful for fine tuning gains for slightly different microphones or hardware sampling. 
   * Gains are applied for each sample. 
+
+## [LocalizeBeam](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/LocalizeBeam.cc?revision=HEAD&amp;amp;view=markup)
+
+  * Localization algorithm with the steered beam former. Please refer to the [publications](http://manyears.sourceforge.net/wiki/index.php/Main_Page#Publications) for more information. 
+
+## [SeparGSS](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/SeparGSS.cc?revision=HEAD&amp;amp;view=markup)
+
+  * Geometric sound source separation. Please refer to the [publications](http://manyears.sourceforge.net/wiki/index.php/Main_Page#Publications) for more information. 
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Wed, 28 May 2014 12:20:04 -0000</pubDate><guid>https://sourceforge.nete6c0bff38c9eea5fe01622e19f114bde2aebc7a3</guid></item><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v6
+++ v7
@@ -65,3 +65,8 @@
   * We are sampling at 48kHz. 
   * Frames are 1024 samples wide, with 50% overlap. 
   * Each input is interlaced (8) and sampled with 16bits little endian. 
+
+## [EqualGains](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/EqualGains.cc?revision=HEAD&amp;amp;view=markup)
+
+  * 8 gains are defined for each microphone input. This is useful for fine tuning gains for slightly different microphones or hardware sampling. 
+  * Gains are applied for each sample. 
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Wed, 28 May 2014 12:20:04 -0000</pubDate><guid>https://sourceforge.neta381aee82d1d733d84093c900831430a0df9ff8e</guid></item><item><title>Installation_Instructions modified by Dominic Letourneau</title><link>https://sourceforge.net/p/manyears/wiki/Installation_Instructions/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v5
+++ v6
@@ -58,3 +58,10 @@
 The main processing loop contains the following elements&amp;nbsp;:

 [[img src=ProcessingLoop.png]] 
+
+## [openStreamManyEars](http://manyears.svn.sourceforge.net/viewvc/manyears/trunk/manyears/src/openStream.cc?revision=HEAD&amp;amp;view=markup)
+
+  * Using [RTAudio](http://www.music.mcgill.ca/~gary/rtaudio/) to get audio stream. 
+  * We are sampling at 48kHz. 
+  * Frames are 1024 samples wide, with 50% overlap. 
+  * Each input is interlaced (8) and sampled with 16bits little endian. 
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Dominic Letourneau</dc:creator><pubDate>Wed, 28 May 2014 12:20:04 -0000</pubDate><guid>https://sourceforge.net44f43ec471117e8e1c7b4e9e5ecbc5387fc9e527</guid></item></channel></rss>