diff --git a/desmume/src/windows/DeSmuME_2008.vcproj b/desmume/src/windows/DeSmuME_2008.vcproj
index 872b4c758..bbed9bd0b 100644
--- a/desmume/src/windows/DeSmuME_2008.vcproj
+++ b/desmume/src/windows/DeSmuME_2008.vcproj
@@ -690,6 +690,10 @@
RelativePath=".\AboutBox.h"
>
+
+
diff --git a/desmume/src/windows/aviout.h b/desmume/src/windows/aviout.h
new file mode 100644
index 000000000..38dc381a5
--- /dev/null
+++ b/desmume/src/windows/aviout.h
@@ -0,0 +1,5 @@
+bool DRV_AviBegin(const char* fname);
+void DRV_AviEnd();
+void DRV_AviSoundUpdate(void* soundData, int soundLen);
+bool DRV_AviIsRecording();
+void DRV_AviVideoUpdate(const u16* buffer);
\ No newline at end of file
diff --git a/desmume/src/windows/main.cpp b/desmume/src/windows/main.cpp
index 61fdf8a97..dd4596b6b 100644
--- a/desmume/src/windows/main.cpp
+++ b/desmume/src/windows/main.cpp
@@ -79,7 +79,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#include "snddx.h"
#include "ramwatch.h"
#include "ram_search.h"
-
+#include "aviout.h"
#include "directx/ddraw.h"
@@ -109,13 +109,6 @@ void UpdateHotkeyAssignments(); //Appends hotkey mappings to corresponding me
static HMENU mainMenu; //Holds handle to the main DeSmuME menu
-//------todo move these into a generic driver api
-bool DRV_AviBegin(const char* fname);
-void DRV_AviEnd();
-void DRV_AviSoundUpdate(void* soundData, int soundLen);
-bool DRV_AviIsRecording();
-void DRV_AviVideoUpdate(const u16* buffer);
-//------
DWORD hKeyInputTimer;
extern LRESULT CALLBACK RamSearchProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);