xiRetimer

fit recorded audio to a tempo
git clone https://git.ce9e.org/xiRetimer.git

commit
ed04cf48f2f3034c5129fb1906578fde222bcb90
parent
1e7af109b099eae908bfb1620313f93e825fb0b1
Author
Tobias Bengfort <tobias.bengfort@gmx.net>
Date
2010-11-07 13:19
name changes

Diffstat

M README 3 +++
M src/curve.h 4 ++--
R src/gui/xiRTAboutDialog.cpp -> src/gui/RetimerAboutDialog.cpp 6 +++---
R src/gui/xiRTAboutDialog.h -> src/gui/RetimerAboutDialog.h 12 ++++++------
R src/gui/xiRTMainFrame.cpp -> src/gui/RetimerMainFrame.cpp 52 ++++++++++++++++++++++++++--------------------------
R src/gui/xiRTMainFrame.h -> src/gui/RetimerMainFrame.h 14 +++++++-------
R src/gui/xiRTPrefsDialog.cpp -> src/gui/RetimerPrefsDialog.cpp 17 ++++++++---------
R src/gui/xiRTPrefsDialog.h -> src/gui/RetimerPrefsDialog.h 15 ++++++++-------
R src/gui/xiRetimer_wxfb.cpp -> src/gui/retimer_wx.cpp 6 +++++-
R src/gui/xiRetimer_wxfb.fbp -> src/gui/retimer_wx.fbp 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++++------
R src/gui/xiRetimer_wxfb.h -> src/gui/retimer_wx.h 9 +++++----
M src/main.cpp 3 +--
M src/main.h 1 +
M src/marker.h 10 +++++-----
M src/playback.h 4 ++--
M src/rbprocess.h 4 ++--
M src/sample.h 4 ++--
R src/buffer.cpp -> src/xiarray.cpp 22 +++++++++++-----------
R src/buffer.h -> src/xiarray.h 14 +++++++++-----
M xiRetimer 0

20 files changed, 167 insertions, 100 deletions


diff --git a/README b/README

@@ -10,6 +10,9 @@ timestretch - rubberband (v>=1.5)
   10    10 
   11    11 
   12    12 TODO
   -1    13 renaming (remove xi)
   -1    14 rubberband crashes
   -1    15 remove deprecated buttons
   13    16 smooth interpolation
   14    17 always update gui
   15    18 libmad

diff --git a/src/curve.h b/src/curve.h

@@ -1,5 +1,5 @@
    1    -1 #ifndef __XICURVE_H
    2    -1 #define __XICURVE_H
   -1     1 #ifndef __CURVE_H
   -1     2 #define __CURVE_H
    3     3 
    4     4 #include <iostream>
    5     5 #include "marker.h"

diff --git a/src/gui/xiRTAboutDialog.cpp b/src/gui/RetimerAboutDialog.cpp

@@ -1,13 +1,13 @@
    1    -1 #include "xiRTAboutDialog.h"
   -1     1 #include "RetimerAboutDialog.h"
    2     2 
    3    -1 xiRTAboutDialog::xiRTAboutDialog( wxWindow* parent )
   -1     3 RetimerAboutDialog::RetimerAboutDialog( wxWindow* parent )
    4     4 :
    5     5 AboutDialog( parent )
    6     6 {
    7     7 
    8     8 }
    9     9 
   10    -1 void xiRTAboutDialog::OnOKClick( wxCommandEvent& event )
   -1    10 void RetimerAboutDialog::OnOKClick( wxCommandEvent& event )
   11    11 {
   12    12 	Close();
   13    13 }

diff --git a/src/gui/xiRTAboutDialog.h b/src/gui/RetimerAboutDialog.h

@@ -1,15 +1,15 @@
    1    -1 #ifndef __xiRTAboutDialog__
    2    -1 #define __xiRTAboutDialog__
   -1     1 #ifndef __RetimerAboutDialog__
   -1     2 #define __RetimerAboutDialog__
    3     3 
    4     4 /**
    5     5 @file
    6     6 Subclass of AboutDialog, which is generated by wxFormBuilder.
    7     7 */
    8     8 
    9    -1 #include "xiRetimer_wxfb.h"
   -1     9 #include "retimer_wx.h"
   10    10 
   11    11 /** Implementing AboutDialog */
   12    -1 class xiRTAboutDialog : public AboutDialog
   -1    12 class RetimerAboutDialog : public AboutDialog
   13    13 {
   14    14 protected:
   15    15 	// Handlers for AboutDialog events.
@@ -17,7 +17,7 @@ protected:
   17    17 	
   18    18 public:
   19    19 	/** Constructor */
   20    -1 	xiRTAboutDialog( wxWindow* parent );
   -1    20 	RetimerAboutDialog( wxWindow* parent );
   21    21 };
   22    22 
   23    -1 #endif // __xiRTAboutDialog__
   -1    23 #endif // __RetimerAboutDialog__

diff --git a/src/gui/xiRTMainFrame.cpp b/src/gui/RetimerMainFrame.cpp

@@ -1,12 +1,12 @@
    1    -1 #include "xiRTMainFrame.h"
    2    -1 #include "xiRTAboutDialog.h"
    3    -1 #include "xiRTPrefsDialog.h"
   -1     1 #include "RetimerMainFrame.h"
   -1     2 #include "RetimerAboutDialog.h"
   -1     3 #include "RetimerPrefsDialog.h"
    4     4 
    5     5 #include <iostream>
    6     6 
    7     7 
    8     8 
    9    -1 xiRTMainFrame::xiRTMainFrame( wxWindow* parent ) : MainFrame( parent ) {
   -1     9 RetimerMainFrame::RetimerMainFrame( wxWindow* parent ) : MainFrame( parent ) {
   10    10   marker=new Marker();
   11    11   sample=new Sample(marker);
   12    12   playback=new Playback(sample);
@@ -25,7 +25,7 @@ xiRTMainFrame::xiRTMainFrame( wxWindow* parent ) : MainFrame( parent ) {
   25    25 }
   26    26 
   27    27 
   28    -1 xiRTMainFrame::~xiRTMainFrame() {
   -1    28 RetimerMainFrame::~RetimerMainFrame() {
   29    29 // TODO destroy objects
   30    30 //  delete[] curve;
   31    31 //  delete[] playback;
@@ -34,7 +34,7 @@ xiRTMainFrame::~xiRTMainFrame() {
   34    34 }
   35    35 
   36    36 // ************  mouse  **************
   37    -1 void xiRTMainFrame::OnLeftDown( wxMouseEvent& event ) {
   -1    37 void RetimerMainFrame::OnLeftDown( wxMouseEvent& event ) {
   38    38   // check for Marker Select
   39    39   if (event.m_y<=MARKERWIDTH*4/5) {
   40    40     for (int i=0; i<curve->getMarkerLength(); ++i) {
@@ -52,12 +52,12 @@ void xiRTMainFrame::OnLeftDown( wxMouseEvent& event ) {
   52    52   curve->selectMarker(-1);  //deselct
   53    53 }
   54    54 
   55    -1 void xiRTMainFrame::OnLeftUp( wxMouseEvent& event ) {
   -1    55 void RetimerMainFrame::OnLeftUp( wxMouseEvent& event ) {
   56    56   Marker_move=false;
   57    57   Seeker_move=false;
   58    58 }
   59    59 
   60    -1 void xiRTMainFrame::OnLeftDClick( wxMouseEvent& event ) {
   -1    60 void RetimerMainFrame::OnLeftDClick( wxMouseEvent& event ) {
   61    61   // check for Marker Select
   62    62   if (event.m_y<=MARKERWIDTH*4/5) {
   63    63     for (int i=0; i<curve->getMarkerLength(); ++i) {
@@ -74,7 +74,7 @@ void xiRTMainFrame::OnLeftDClick( wxMouseEvent& event ) {
   74    74   curve->addMarker();
   75    75 }
   76    76 
   77    -1 void xiRTMainFrame::OnMotion( wxMouseEvent& event ) {
   -1    77 void RetimerMainFrame::OnMotion( wxMouseEvent& event ) {
   78    78   if (Marker_move) {
   79    79     curve->setMarker(event.m_x/(float)width);
   80    80     _updateWaveform=true;
@@ -84,7 +84,7 @@ void xiRTMainFrame::OnMotion( wxMouseEvent& event ) {
   84    84 }
   85    85 
   86    86 // ************  file  **************
   87    -1 void xiRTMainFrame::OnOpenClick( wxCommandEvent& event )
   -1    87 void RetimerMainFrame::OnOpenClick( wxCommandEvent& event )
   88    88 {
   89    89   wxFileDialog* dialog = new wxFileDialog( (wxWindow*)NULL );
   90    90   dialog->Show();
@@ -100,7 +100,7 @@ void xiRTMainFrame::OnOpenClick( wxCommandEvent& event )
  100   100     reportError( _T("Please choose a valid file!"));
  101   101 }
  102   102 
  103    -1 void xiRTMainFrame::OnExportClick( wxCommandEvent& event )
   -1   103 void RetimerMainFrame::OnExportClick( wxCommandEvent& event )
  104   104 {
  105   105     wxFileDialog* dialog = new wxFileDialog((wxWindow*)NULL, _T("Export As"), _T(""), _T(""), _T("*.wav"), wxSAVE | wxOVERWRITE_PROMPT);
  106   106     dialog->Show();
@@ -117,59 +117,59 @@ void xiRTMainFrame::OnExportClick( wxCommandEvent& event )
  117   117 }
  118   118 
  119   119 // ************  playback  **************
  120    -1 void xiRTMainFrame::OnStartClick( wxCommandEvent& event ) {
   -1   120 void RetimerMainFrame::OnStartClick( wxCommandEvent& event ) {
  121   121   playback->setSeeker(0);
  122   122 }
  123   123 
  124    -1 void xiRTMainFrame::OnPlayClick( wxCommandEvent& event ) {
   -1   124 void RetimerMainFrame::OnPlayClick( wxCommandEvent& event ) {
  125   125   playback->play();
  126   126 }
  127   127 
  128    -1 void xiRTMainFrame::OnEndClick( wxCommandEvent& event ) {
   -1   128 void RetimerMainFrame::OnEndClick( wxCommandEvent& event ) {
  129   129   playback->setSeeker(1);
  130   130 }
  131   131 
  132   132 // ************  general  **************
  133    -1 void xiRTMainFrame::OnPrefsClick( wxCommandEvent& event )
   -1   133 void RetimerMainFrame::OnPrefsClick( wxCommandEvent& event )
  134   134 {
  135    -1     xiRTPrefsDialog* dialog = new xiRTPrefsDialog(marker, sample, curve);
   -1   135     RetimerPrefsDialog* dialog = new RetimerPrefsDialog(marker, sample, curve);
  136   136     dialog->Show();
  137   137 }
  138   138 
  139    -1 void xiRTMainFrame::OnExitClick( wxCommandEvent& event )
   -1   139 void RetimerMainFrame::OnExitClick( wxCommandEvent& event )
  140   140 {
  141   141   Close();
  142   142 }
  143   143 
  144    -1 void xiRTMainFrame::OnHelpClick( wxCommandEvent& event )
   -1   144 void RetimerMainFrame::OnHelpClick( wxCommandEvent& event )
  145   145 {
  146   146 	// TODO: create Help
  147    -1     xiRTAboutDialog* dialog = new xiRTAboutDialog( (wxWindow*)NULL );
   -1   147     RetimerAboutDialog* dialog = new RetimerAboutDialog( (wxWindow*)NULL );
  148   148     dialog->Show();
  149   149 }
  150   150 
  151   151 // ************  marker  **************
  152    -1 void xiRTMainFrame::OnClearClick( wxCommandEvent& event ) {
   -1   152 void RetimerMainFrame::OnClearClick( wxCommandEvent& event ) {
  153   153   curve->clearMarker();
  154   154   _updateWaveform=true;
  155   155 }
  156   156 
  157   157 
  158   158 // ************  misc  **************
  159    -1 void xiRTMainFrame::OnProcessClick( wxCommandEvent& event ) {process();}
   -1   159 void RetimerMainFrame::OnProcessClick( wxCommandEvent& event ) {process();}
  160   160 
  161    -1 void xiRTMainFrame::OnPaint( wxUpdateUIEvent& event ) {
   -1   161 void RetimerMainFrame::OnPaint( wxUpdateUIEvent& event ) {
  162   162 // TODO repaint also if UI update is not necessary, eg whe seeker is moving from playback
  163   163   paint();
  164   164 }
  165   165 
  166    -1 void xiRTMainFrame::OnSize( wxSizeEvent& event ) {
   -1   166 void RetimerMainFrame::OnSize( wxSizeEvent& event ) {
  167   167   _updateWaveform=true;
  168   168 }
  169   169 
  170   170 
  171   171 // ***********************************
  172    -1 void xiRTMainFrame::process() {
   -1   172 void RetimerMainFrame::process() {
  173   173     // sometings wrong here
  174   174     if (sample->process()!=0)
  175   175 //      reportError(_T("Could not process data!"));
@@ -184,7 +184,7 @@ void xiRTMainFrame::process() {
  184   184     // TODO deatroy dialog
  185   185 }
  186   186 
  187    -1 void xiRTMainFrame::paint() {
   -1   187 void RetimerMainFrame::paint() {
  188   188   wxClientDC dc(this);
  189   189   dc.GetSize(&width,&height);
  190   190   wxBufferedDC bdc(&dc,wxSize(width,height));
@@ -232,7 +232,7 @@ void xiRTMainFrame::paint() {
  232   232   }
  233   233 }
  234   234 
  235    -1 void xiRTMainFrame::reportError(wxString string) {
   -1   235 void RetimerMainFrame::reportError(wxString string) {
  236   236   wxMessageDialog::wxMessageDialog* dialog = new wxMessageDialog( this, string, _T("Error"), wxOK | wxICON_ERROR );
  237   237   dialog ->ShowModal();
  238   238 }

diff --git a/src/gui/xiRTMainFrame.h b/src/gui/RetimerMainFrame.h

@@ -1,12 +1,12 @@
    1    -1 #ifndef __xiRTMainFrame__
    2    -1 #define __xiRTMainFrame__
   -1     1 #ifndef __RetimerMainFrame__
   -1     2 #define __RetimerMainFrame__
    3     3 
    4     4 /**
    5     5 @file
    6     6 Subclass of MainFrame, which is generated by wxFormBuilder.
    7     7 */
    8     8 
    9    -1 #include "xiRetimer_wxfb.h"
   -1     9 #include "retimer_wx.h"
   10    10 #include "../marker.h"
   11    11 #include "../sample.h"
   12    12 #include "../playback.h"
@@ -22,7 +22,7 @@ Subclass of MainFrame, which is generated by wxFormBuilder.
   22    22 #include <iostream>
   23    23 
   24    24 /** Implementing MainFrame */
   25    -1 class xiRTMainFrame : public MainFrame
   -1    25 class RetimerMainFrame : public MainFrame
   26    26 {
   27    27 protected:
   28    28   // mouse
@@ -73,8 +73,8 @@ wxBitmap waveform;
   73    73 
   74    74 public:
   75    75 	/** Constructor */
   76    -1 	xiRTMainFrame( wxWindow* parent );
   77    -1 	~xiRTMainFrame(  );
   -1    76 	RetimerMainFrame( wxWindow* parent );
   -1    77 	~RetimerMainFrame(  );
   78    78 };
   79    79 
   80    -1 #endif // __xiRTMainFrame__
   -1    80 #endif // __RetimerMainFrame__

diff --git a/src/gui/xiRTPrefsDialog.cpp b/src/gui/RetimerPrefsDialog.cpp

@@ -1,7 +1,6 @@
    1    -1 #include "xiRTPrefsDialog.h"
    2    -1 #include <iostream>
   -1     1 #include "RetimerPrefsDialog.h"
    3     2 
    4    -1 xiRTPrefsDialog::xiRTPrefsDialog(Marker* m, Sample* s, Curve* c) : PrefsDialog( (wxWindow*)NULL )
   -1     3 RetimerPrefsDialog::RetimerPrefsDialog(Marker* m, Sample* s, Curve* c) : PrefsDialog( (wxWindow*)NULL )
    5     4 {
    6     5   marker=m;
    7     6   sample=s;
@@ -24,15 +23,15 @@ xiRTPrefsDialog::xiRTPrefsDialog(Marker* m, Sample* s, Curve* c) : PrefsDialog( 
   24    23   t_beatres->SetValue(wxs5);
   25    24 }
   26    25 
   27    -1 void xiRTPrefsDialog::OnIntModeChange( wxCommandEvent& event ) {
   -1    26 void RetimerPrefsDialog::OnIntModeChange( wxCommandEvent& event ) {
   28    27   marker->setInterpolationMode(c_intmode->GetSelection());
   29    28 }
   30    29 
   31    -1 void xiRTPrefsDialog::OnStretchModeChange( wxCommandEvent& event ) {
   -1    30 void RetimerPrefsDialog::OnStretchModeChange( wxCommandEvent& event ) {
   32    31   sample->setStretchMode(c_stretchmode->GetSelection());
   33    32 }
   34    33 
   35    -1 void xiRTPrefsDialog::OnTempoEnter( wxCommandEvent& event ) {
   -1    34 void RetimerPrefsDialog::OnTempoEnter( wxCommandEvent& event ) {
   36    35   long tempo;
   37    36   if (event.GetString().ToLong(&tempo))
   38    37     curve->setTempo(tempo);
@@ -40,7 +39,7 @@ void xiRTPrefsDialog::OnTempoEnter( wxCommandEvent& event ) {
   40    39     std::cout << "Please insert an interger " << curve->getTempo() << std::endl;
   41    40 }
   42    41 
   43    -1 void xiRTPrefsDialog::OnBeatResEnter( wxCommandEvent& event ) {
   -1    42 void RetimerPrefsDialog::OnBeatResEnter( wxCommandEvent& event ) {
   44    43   double beatres;
   45    44   if (event.GetString().ToDouble(&beatres))
   46    45     curve->setBeatResolution(beatres);
@@ -48,11 +47,11 @@ void xiRTPrefsDialog::OnBeatResEnter( wxCommandEvent& event ) {
   48    47     std::cout << "Please insert a float " << std::endl;
   49    48 }
   50    49 
   51    -1 void xiRTPrefsDialog::OnOKClick( wxCommandEvent& event ) {
   -1    50 void RetimerPrefsDialog::OnOKClick( wxCommandEvent& event ) {
   52    51   Close();
   53    52 }
   54    53 
   55    -1 void xiRTPrefsDialog::OnCancelClick( wxCommandEvent& event ) {
   -1    54 void RetimerPrefsDialog::OnCancelClick( wxCommandEvent& event ) {
   56    55   marker->setInterpolationMode(oldInterpolationMode);
   57    56   sample->setStretchMode(oldStretchMode);
   58    57   curve->setTempo(oldTempo);

diff --git a/src/gui/xiRTPrefsDialog.h b/src/gui/RetimerPrefsDialog.h

@@ -1,19 +1,20 @@
    1    -1 #ifndef __xiRTPrefsDialog__
    2    -1 #define __xiRTPrefsDialog__
   -1     1 #ifndef __RetimerPrefsDialog__
   -1     2 #define __RetimerPrefsDialog__
    3     3 
    4     4 #include "../marker.h"
    5     5 #include "../sample.h"
    6     6 #include "../curve.h"
    7     7 
   -1     8 #include "retimer_wx.h"
   -1     9 #include <iostream>
   -1    10 
    8    11 /**
    9    12 @file
   10    13 Subclass of PrefsDialog, which is generated by wxFormBuilder.
   11    14 */
   12    15 
   13    -1 #include "xiRetimer_wxfb.h"
   14    -1 
   15    16 /** Implementing PrefsDialog */
   16    -1 class xiRTPrefsDialog : public PrefsDialog
   -1    17 class RetimerPrefsDialog : public PrefsDialog
   17    18 {
   18    19 protected:
   19    20 	// Handlers for PrefsDialog events.
@@ -35,7 +36,7 @@ protected:
   35    36 	
   36    37 public:
   37    38 	/** Constructor */
   38    -1 	xiRTPrefsDialog(Marker* m, Sample* s, Curve* c);
   -1    39 	RetimerPrefsDialog(Marker* m, Sample* s, Curve* c);
   39    40 };
   40    41 
   41    -1 #endif // __xiRTPrefsDialog__
   -1    42 #endif // __RetimerPrefsDialog__

diff --git a/src/gui/xiRetimer_wxfb.cpp b/src/gui/retimer_wx.cpp

@@ -5,7 +5,7 @@
    5     5 // PLEASE DO "NOT" EDIT THIS FILE!
    6     6 ///////////////////////////////////////////////////////////////////////////
    7     7 
    8    -1 #include "xiRetimer_wxfb.h"
   -1     8 #include "retimer_wx.h"
    9     9 
   10    10 ///////////////////////////////////////////////////////////////////////////
   11    11 
@@ -182,6 +182,10 @@ AboutDialog::AboutDialog( wxWindow* parent, wxWindowID id, const wxString& title
  182   182 	wxBoxSizer* bSizer14;
  183   183 	bSizer14 = new wxBoxSizer( wxVERTICAL );
  184   184 	
   -1   185 	m_staticText7 = new wxStaticText( this, wxID_ANY, wxT("xiRetimer v0.2"), wxDefaultPosition, wxDefaultSize, 0 );
   -1   186 	m_staticText7->Wrap( -1 );
   -1   187 	bSizer14->Add( m_staticText7, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
   -1   188 	
  185   189 	m_staticText1 = new wxStaticText( this, wxID_ANY, wxT("Created by xi."), wxDefaultPosition, wxDefaultSize, 0 );
  186   190 	m_staticText1->Wrap( -1 );
  187   191 	bSizer14->Add( m_staticText1, 0, wxALIGN_CENTER|wxALL, 5 );

diff --git a/src/gui/xiRetimer_wxfb.fbp b/src/gui/retimer_wx.fbp

@@ -8,11 +8,11 @@
    8     8         <property name="encoding">UTF-8</property>
    9     9         <property name="event_generation">connect</property>
   10    10         <property name="event_handler">impl_virtual</property>
   11    -1         <property name="file">xiRetimer_wxfb</property>
   -1    11         <property name="file">retimer_wx</property>
   12    12         <property name="first_id">1000</property>
   13    13         <property name="help_provider">none</property>
   14    14         <property name="internationalize">0</property>
   15    -1         <property name="name">xiRT</property>
   -1    15         <property name="name">Retimer</property>
   16    16         <property name="namespace"></property>
   17    17         <property name="path">.</property>
   18    18         <property name="precompiled_header"></property>
@@ -130,7 +130,7 @@
  130   130                 <event name="OnSize"></event>
  131   131                 <event name="OnUpdateUI"></event>
  132   132             </object>
  133    -1             <object class="wxMenuBar" expanded="0">
   -1   133             <object class="wxMenuBar" expanded="1">
  134   134                 <property name="bg"></property>
  135   135                 <property name="context_help"></property>
  136   136                 <property name="enabled">1</property>
@@ -357,7 +357,7 @@
  357   357                 </object>
  358   358             </object>
  359   359         </object>
  360    -1         <object class="Dialog" expanded="0">
   -1   360         <object class="Dialog" expanded="1">
  361   361             <property name="bg"></property>
  362   362             <property name="center"></property>
  363   363             <property name="context_help"></property>
@@ -374,7 +374,7 @@
  374   374             <property name="size">159,135</property>
  375   375             <property name="style">wxDEFAULT_DIALOG_STYLE</property>
  376   376             <property name="subclass"></property>
  377    -1             <property name="title"></property>
   -1   377             <property name="title">About</property>
  378   378             <property name="tooltip"></property>
  379   379             <property name="validator_data_type"></property>
  380   380             <property name="validator_style">wxFILTER_NONE</property>
@@ -429,6 +429,61 @@
  429   429                         <property name="permission">none</property>
  430   430                         <object class="sizeritem" expanded="1">
  431   431                             <property name="border">5</property>
   -1   432                             <property name="flag">wxALL|wxALIGN_CENTER_HORIZONTAL</property>
   -1   433                             <property name="proportion">0</property>
   -1   434                             <object class="wxStaticText" expanded="1">
   -1   435                                 <property name="bg"></property>
   -1   436                                 <property name="context_help"></property>
   -1   437                                 <property name="enabled">1</property>
   -1   438                                 <property name="fg"></property>
   -1   439                                 <property name="font"></property>
   -1   440                                 <property name="hidden">0</property>
   -1   441                                 <property name="id">wxID_ANY</property>
   -1   442                                 <property name="label">xiRetimer v0.2</property>
   -1   443                                 <property name="maximum_size"></property>
   -1   444                                 <property name="minimum_size"></property>
   -1   445                                 <property name="name">m_staticText7</property>
   -1   446                                 <property name="permission">protected</property>
   -1   447                                 <property name="pos"></property>
   -1   448                                 <property name="size"></property>
   -1   449                                 <property name="style"></property>
   -1   450                                 <property name="subclass"></property>
   -1   451                                 <property name="tooltip"></property>
   -1   452                                 <property name="validator_data_type"></property>
   -1   453                                 <property name="validator_style">wxFILTER_NONE</property>
   -1   454                                 <property name="validator_type">wxDefaultValidator</property>
   -1   455                                 <property name="validator_variable"></property>
   -1   456                                 <property name="window_extra_style"></property>
   -1   457                                 <property name="window_name"></property>
   -1   458                                 <property name="window_style"></property>
   -1   459                                 <property name="wrap">-1</property>
   -1   460                                 <event name="OnChar"></event>
   -1   461                                 <event name="OnEnterWindow"></event>
   -1   462                                 <event name="OnEraseBackground"></event>
   -1   463                                 <event name="OnKeyDown"></event>
   -1   464                                 <event name="OnKeyUp"></event>
   -1   465                                 <event name="OnKillFocus"></event>
   -1   466                                 <event name="OnLeaveWindow"></event>
   -1   467                                 <event name="OnLeftDClick"></event>
   -1   468                                 <event name="OnLeftDown"></event>
   -1   469                                 <event name="OnLeftUp"></event>
   -1   470                                 <event name="OnMiddleDClick"></event>
   -1   471                                 <event name="OnMiddleDown"></event>
   -1   472                                 <event name="OnMiddleUp"></event>
   -1   473                                 <event name="OnMotion"></event>
   -1   474                                 <event name="OnMouseEvents"></event>
   -1   475                                 <event name="OnMouseWheel"></event>
   -1   476                                 <event name="OnPaint"></event>
   -1   477                                 <event name="OnRightDClick"></event>
   -1   478                                 <event name="OnRightDown"></event>
   -1   479                                 <event name="OnRightUp"></event>
   -1   480                                 <event name="OnSetFocus"></event>
   -1   481                                 <event name="OnSize"></event>
   -1   482                                 <event name="OnUpdateUI"></event>
   -1   483                             </object>
   -1   484                         </object>
   -1   485                         <object class="sizeritem" expanded="1">
   -1   486                             <property name="border">5</property>
  432   487                             <property name="flag">wxALIGN_CENTER|wxALL</property>
  433   488                             <property name="proportion">0</property>
  434   489                             <object class="wxStaticText" expanded="1">
@@ -608,7 +663,7 @@
  608   663                 </object>
  609   664             </object>
  610   665         </object>
  611    -1         <object class="Dialog" expanded="0">
   -1   666         <object class="Dialog" expanded="1">
  612   667             <property name="bg"></property>
  613   668             <property name="center"></property>
  614   669             <property name="context_help"></property>

diff --git a/src/gui/xiRetimer_wxfb.h b/src/gui/retimer_wx.h

@@ -5,8 +5,8 @@
    5     5 // PLEASE DO "NOT" EDIT THIS FILE!
    6     6 ///////////////////////////////////////////////////////////////////////////
    7     7 
    8    -1 #ifndef __xiRetimer_wxfb__
    9    -1 #define __xiRetimer_wxfb__
   -1     8 #ifndef __retimer_wx__
   -1     9 #define __retimer_wx__
   10    10 
   11    11 #include <wx/sizer.h>
   12    12 #include <wx/gdicmn.h>
@@ -77,6 +77,7 @@ class AboutDialog : public wxDialog
   77    77 	private:
   78    78 	
   79    79 	protected:
   -1    80 		wxStaticText* m_staticText7;
   80    81 		wxStaticText* m_staticText1;
   81    82 		wxStaticText* m_staticText2;
   82    83 		wxButton* m_button1;
@@ -87,7 +88,7 @@ class AboutDialog : public wxDialog
   87    88 	
   88    89 	public:
   89    90 		
   90    -1 		AboutDialog( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 159,135 ), long style = wxDEFAULT_DIALOG_STYLE );
   -1    91 		AboutDialog( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxT("About"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 159,135 ), long style = wxDEFAULT_DIALOG_STYLE );
   91    92 		~AboutDialog();
   92    93 	
   93    94 };
@@ -127,4 +128,4 @@ class PrefsDialog : public wxDialog
  127   128 	
  128   129 };
  129   130 
  130    -1 #endif //__xiRetimer_wxfb__
   -1   131 #endif //__retimer_wx__

diff --git a/src/main.cpp b/src/main.cpp

@@ -1,4 +1,3 @@
    1    -1 #include "gui/xiRTMainFrame.h"
    2     1 #include "main.h"
    3     2 
    4     3 
@@ -14,7 +13,7 @@ wxWidgetsApp::~wxWidgetsApp()
   14    13 
   15    14 bool wxWidgetsApp::OnInit()
   16    15 {
   17    -1     xiRTMainFrame* dialog = new xiRTMainFrame( (wxWindow*)NULL );
   -1    16     RetimerMainFrame* dialog = new RetimerMainFrame( (wxWindow*)NULL );
   18    17     dialog ->Show();
   19    18     SetTopWindow( dialog );
   20    19     return true;

diff --git a/src/main.h b/src/main.h

@@ -2,6 +2,7 @@
    2     2 #define __WXWIDGETSAPP_H
    3     3 
    4     4 #include <wx/wx.h>
   -1     5 #include "gui/RetimerMainFrame.h"
    5     6 
    6     7 class wxWidgetsApp : public wxApp
    7     8 {

diff --git a/src/marker.h b/src/marker.h

@@ -1,8 +1,8 @@
    1    -1 #ifndef __XIMARKER_H
    2    -1 #define __XIMARKER_H
   -1     1 #ifndef __MARKER_H
   -1     2 #define __MARKER_H
    3     3 
    4     4 #include <iostream>
    5    -1 #include "buffer.h"
   -1     5 #include "xiarray.h"
    6     6 
    7     7 /*
    8     8 marker works with float values
@@ -47,8 +47,8 @@ public:
   47    47   int getInterpolationMode();
   48    48   void setInterpolationMode(int m);
   49    49 private:
   50    -1   Buffer anew;
   51    -1   Buffer aold;
   -1    50   xiArray anew;
   -1    51   xiArray aold;
   52    52   int resort(int pi);
   53    53   int interpolationMode;
   54    54 };

diff --git a/src/playback.h b/src/playback.h

@@ -1,5 +1,5 @@
    1    -1 #ifndef __XIPLAYBACK_H
    2    -1 #define __XIPLAYBACK_H
   -1     1 #ifndef __PLAYBACK_H
   -1     2 #define __PLAYBACK_H
    3     3 
    4     4 #include <iostream>
    5     5 

diff --git a/src/rbprocess.h b/src/rbprocess.h

@@ -1,5 +1,5 @@
    1    -1 #ifndef __XIRBPROCESS_H
    2    -1 #define __XIRBPROCESS_H
   -1     1 #ifndef __RBPROCESS_H
   -1     2 #define __RBPROCESS_H
    3     3 
    4     4 #include "marker.h"
    5     5 #include "sample.h"

diff --git a/src/sample.h b/src/sample.h

@@ -1,5 +1,5 @@
    1    -1 #ifndef __XISAMPLE_H
    2    -1 #define __XISAMPLE_H
   -1     1 #ifndef __SAMPLE_H
   -1     2 #define __SAMPLE_H
    3     3 
    4     4 #include <sndfile.h>
    5     5 #include <iostream>

diff --git a/src/buffer.cpp b/src/xiarray.cpp

@@ -1,26 +1,26 @@
    1    -1 #include "buffer.h"
   -1     1 #include "xiarray.h"
    2     2 
    3    -1 Buffer::Buffer() {
   -1     3 xiArray::xiArray() {
    4     4   _length=0;
    5     5   array=new float[getLength()];
    6     6 }
    7     7 
    8    -1 Buffer::~Buffer() {
   -1     8 xiArray::~xiArray() {
    9     9   delete[] array;
   10    10 }
   11    11 
   12    -1 float Buffer::get(int i) {
   -1    12 float xiArray::get(int i) {
   13    13   if (i>=0 && i<getLength())
   14    14     return array[i];
   15    15   else
   16    16     return NULL;
   17    17 }
   18    18 
   19    -1 void Buffer::set(int i, float v) {
   -1    19 void xiArray::set(int i, float v) {
   20    20   if (i>=0 && i<=getLength()) array[i]=v;
   21    21 }
   22    22 
   23    -1 void Buffer::insert(int i,float v) {
   -1    23 void xiArray::insert(int i,float v) {
   24    24   if (i>=0 && i<=getLength()) {
   25    25     float* tmpArray=new float[getLength()+1];
   26    26     for (int ii=0; ii<i; ii++)
@@ -34,11 +34,11 @@ void Buffer::insert(int i,float v) {
   34    34   }
   35    35 }
   36    36 
   37    -1 void Buffer::add(float v) {
   -1    37 void xiArray::add(float v) {
   38    38   insert(getLength(),v);
   39    39 }
   40    40 
   41    -1 void Buffer::remove(int i) {
   -1    41 void xiArray::remove(int i) {
   42    42   if (i>=0 && i<getLength()) {
   43    43     float* tmpArray=new float[getLength()-1];
   44    44     for (int ii=0; ii<i; ii++)
@@ -51,11 +51,11 @@ void Buffer::remove(int i) {
   51    51   }
   52    52 }
   53    53 
   54    -1 int Buffer::getLength() {
   -1    54 int xiArray::getLength() {
   55    55   return _length;
   56    56 }
   57    57 
   58    -1 void Buffer::print() {
   -1    58 void xiArray::print() {
   59    59   std::cout << "[";
   60    60   for (int i=0; i<getLength()-1; i++)
   61    61     std::cout << get(i) << " ";
@@ -64,7 +64,7 @@ void Buffer::print() {
   64    64   std::cout << "]";
   65    65 }
   66    66 
   67    -1 void Buffer::println() {
   -1    67 void xiArray::println() {
   68    68   print();
   69    69   std::cout << std::endl;
   70    70 }

diff --git a/src/buffer.h b/src/xiarray.h

@@ -1,12 +1,16 @@
    1    -1 #ifndef __XIBUFFER_H
    2    -1 #define __XIBUFFER_H
   -1     1 #ifndef __XIARRAY_H
   -1     2 #define __XIARRAY_H
    3     3 
    4     4 #include <iostream>
    5     5 
    6    -1 class Buffer {
   -1     6 /*
   -1     7 This is like the first c++ class I wrote and was more like making an easy start. If anybody wants to eliminate this from the project and replace it with vectors or something lika that, just do as you want.
   -1     8 */
   -1     9 
   -1    10 class xiArray {
    7    11 public:
    8    -1   Buffer();
    9    -1   ~Buffer();
   -1    12   xiArray();
   -1    13   ~xiArray();
   10    14   float get(int i);
   11    15   void set(int i, float v);
   12    16   void add(float v);

diff --git a/xiRetimer b/xiRetimer

Binary files differ.