diff --git a/src/Acid_Cam_v2_Qt b/src/Acid_Cam_v2_Qt
new file mode 100755
index 0000000..8354b9d
Binary files /dev/null and b/src/Acid_Cam_v2_Qt differ
diff --git a/src/Acid_Cam_v2_Qt.app/Contents/Info.plist b/src/Acid_Cam_v2_Qt.app/Contents/Info.plist
new file mode 100644
index 0000000..b33b469
--- /dev/null
+++ b/src/Acid_Cam_v2_Qt.app/Contents/Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ NSPrincipalClass
+ NSApplication
+ CFBundleIconFile
+
+ CFBundlePackageType
+ APPL
+ CFBundleGetInfoString
+ Created by Qt/QMake
+ CFBundleSignature
+ ????
+ CFBundleExecutable
+ Acid_Cam_v2_Qt
+ CFBundleIdentifier
+ com.yourcompany.Acid_Cam_v2_Qt
+ NOTE
+ This file was generated by Qt/QMake.
+
+
diff --git a/src/Acid_Cam_v2_Qt.app/Contents/MacOS/Acid_Cam_v2_Qt b/src/Acid_Cam_v2_Qt.app/Contents/MacOS/Acid_Cam_v2_Qt
new file mode 100755
index 0000000..09dbcd6
Binary files /dev/null and b/src/Acid_Cam_v2_Qt.app/Contents/MacOS/Acid_Cam_v2_Qt differ
diff --git a/src/Acid_Cam_v2_Qt.app/Contents/PkgInfo b/src/Acid_Cam_v2_Qt.app/Contents/PkgInfo
new file mode 100644
index 0000000..6f749b0
--- /dev/null
+++ b/src/Acid_Cam_v2_Qt.app/Contents/PkgInfo
@@ -0,0 +1 @@
+APPL????
diff --git a/src/Acid_Cam_v2_Qt.app/Contents/Resources/empty.lproj b/src/Acid_Cam_v2_Qt.app/Contents/Resources/empty.lproj
new file mode 100644
index 0000000..e69de29
diff --git a/src/Makefile b/src/Makefile
new file mode 100644
index 0000000..9fb473f
--- /dev/null
+++ b/src/Makefile
@@ -0,0 +1,385 @@
+#############################################################################
+# Makefile for building: Acid_Cam_v2_Qt.app/Contents/MacOS/Acid_Cam_v2_Qt
+# Generated by qmake (2.01a) (Qt 4.8.7) on: Sat Mar 17 12:14:14 2018
+# Project: Acid.Cam.v2.Linux.Qt.pro
+# Template: app
+# Command: /usr/local/bin/qmake -o Makefile Acid.Cam.v2.Linux.Qt.pro
+#############################################################################
+
+####### Compiler, tools and options
+
+CC = clang
+CXX = clang++
+DEFINES = -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED
+CFLAGS = -pipe -mmacosx-version-min=10.7 -O2 -arch x86_64 -Wall -W $(DEFINES)
+CXXFLAGS = -pipe -stdlib=libc++ -mmacosx-version-min=10.7 -std=c++11 `pkg-config opencv --cflags` -O2 -arch x86_64 -Wall -W $(DEFINES)
+INCPATH = -I/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/unsupported/macx-clang-libc++ -I. -I/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib/QtCore.framework/Versions/4/Headers -I/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib/QtCore.framework/Versions/4/Headers -I/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib/QtGui.framework/Versions/4/Headers -I/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib/QtGui.framework/Versions/4/Headers -I/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/include -I. -I/usr/include/ -I/Volumes/LostDrive-6/Users/jared/usr.local/local/include -I. -F/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib
+LINK = clang++
+LFLAGS = -headerpad_max_install_names -stdlib=libc++ -mmacosx-version-min=10.7 -arch x86_64
+LIBS = $(SUBLIBS) -F/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib -L/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib `pkg-config opencv --libs` -framework QtGui -L/Volumes/LostDrive-6/Users/jared/usr.local/local/opt/openssl/lib -L/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib -F/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib -framework QtCore
+AR = ar cq
+RANLIB = ranlib -s
+QMAKE = /usr/local/bin/qmake
+TAR = tar -cf
+COMPRESS = gzip -9f
+COPY = cp -f
+SED = sed
+COPY_FILE = cp -f
+COPY_DIR = cp -f -R
+STRIP =
+INSTALL_FILE = $(COPY_FILE)
+INSTALL_DIR = $(COPY_DIR)
+INSTALL_PROGRAM = $(COPY_FILE)
+DEL_FILE = rm -f
+SYMLINK = ln -f -s
+DEL_DIR = rmdir
+MOVE = mv -f
+CHK_DIR_EXISTS= test -d
+MKDIR = mkdir -p
+export MACOSX_DEPLOYMENT_TARGET = 10.7
+
+####### Output directory
+
+OBJECTS_DIR = ./
+
+####### Files
+
+SOURCES = main.cpp \
+ main_window.cpp \
+ new_dialog.cpp \
+ plugin.cpp \
+ select_image.cpp \
+ ac.cpp \
+ fractal.cpp \
+ display_window.cpp \
+ playback_thread.cpp moc_main_window.cpp \
+ moc_new_dialog.cpp \
+ moc_display_window.cpp \
+ moc_playback_thread.cpp \
+ qrc_qresource.cpp
+OBJECTS = main.o \
+ main_window.o \
+ new_dialog.o \
+ plugin.o \
+ select_image.o \
+ ac.o \
+ fractal.o \
+ display_window.o \
+ playback_thread.o \
+ moc_main_window.o \
+ moc_new_dialog.o \
+ moc_display_window.o \
+ moc_playback_thread.o \
+ qrc_qresource.o
+DIST = /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/unix.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/mac.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/gcc-base.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/gcc-base-macx.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/clang.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/qconfig.pri \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/modules/qt_webkit_version.pri \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/qt_functions.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/qt_config.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/exclusive_builds.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/default_pre.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/default_pre.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/release.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/default_post.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/default_post.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/x86_64.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/objective_c.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/shared.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/warn_on.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/qt.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/unix/thread.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/moc.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/rez.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/sdk.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/resources.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/uic.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/yacc.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/lex.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/include_source_dir.prf \
+ Acid.Cam.v2.Linux.Qt.pro
+QMAKE_TARGET = Acid_Cam_v2_Qt
+DESTDIR =
+TARGET = Acid_Cam_v2_Qt.app/Contents/MacOS/Acid_Cam_v2_Qt
+
+####### Custom Compiler Variables
+QMAKE_COMP_QMAKE_OBJECTIVE_CFLAGS = -pipe \
+ -O2 \
+ -arch \
+ x86_64 \
+ -Wall \
+ -W
+
+
+first: all
+####### Implicit rules
+
+.SUFFIXES: .o .c .cpp .cc .cxx .C
+
+.cpp.o:
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
+
+.cc.o:
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
+
+.cxx.o:
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
+
+.C.o:
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
+
+.c.o:
+ $(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<"
+
+####### Build rules
+
+all: Makefile Acid_Cam_v2_Qt.app/Contents/PkgInfo Acid_Cam_v2_Qt.app/Contents/Resources/empty.lproj Acid_Cam_v2_Qt.app/Contents/Info.plist $(TARGET)
+
+$(TARGET): $(OBJECTS)
+ @$(CHK_DIR_EXISTS) Acid_Cam_v2_Qt.app/Contents/MacOS/ || $(MKDIR) Acid_Cam_v2_Qt.app/Contents/MacOS/
+ $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
+
+Makefile: Acid.Cam.v2.Linux.Qt.pro /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/unsupported/macx-clang-libc++/qmake.conf /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/unix.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/mac.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/gcc-base.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/gcc-base-macx.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/clang.conf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/qconfig.pri \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/modules/qt_webkit_version.pri \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/qt_functions.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/qt_config.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/exclusive_builds.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/default_pre.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/default_pre.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/release.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/default_post.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/default_post.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/x86_64.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/objective_c.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/shared.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/warn_on.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/qt.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/unix/thread.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/moc.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/rez.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/sdk.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/resources.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/uic.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/yacc.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/lex.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/include_source_dir.prf \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib/QtGui.framework/QtGui.prl \
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib/QtCore.framework/QtCore.prl
+ $(QMAKE) -o Makefile Acid.Cam.v2.Linux.Qt.pro
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/unix.conf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/mac.conf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/gcc-base.conf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/gcc-base-macx.conf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/common/clang.conf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/qconfig.pri:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/modules/qt_webkit_version.pri:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/qt_functions.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/qt_config.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/exclusive_builds.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/default_pre.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/default_pre.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/release.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/default_post.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/default_post.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/x86_64.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/objective_c.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/shared.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/warn_on.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/qt.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/unix/thread.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/moc.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/rez.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/mac/sdk.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/resources.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/uic.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/yacc.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/lex.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/features/include_source_dir.prf:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib/QtGui.framework/QtGui.prl:
+/Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/lib/QtCore.framework/QtCore.prl:
+qmake: FORCE
+ @$(QMAKE) -o Makefile Acid.Cam.v2.Linux.Qt.pro
+
+Acid_Cam_v2_Qt.app/Contents/PkgInfo:
+ @$(CHK_DIR_EXISTS) Acid_Cam_v2_Qt.app/Contents || $(MKDIR) Acid_Cam_v2_Qt.app/Contents
+ @$(DEL_FILE) Acid_Cam_v2_Qt.app/Contents/PkgInfo
+ @echo "APPL????" >Acid_Cam_v2_Qt.app/Contents/PkgInfo
+Acid_Cam_v2_Qt.app/Contents/Resources/empty.lproj:
+ @$(CHK_DIR_EXISTS) Acid_Cam_v2_Qt.app/Contents/Resources || $(MKDIR) Acid_Cam_v2_Qt.app/Contents/Resources
+ @touch Acid_Cam_v2_Qt.app/Contents/Resources/empty.lproj
+
+Acid_Cam_v2_Qt.app/Contents/Info.plist:
+ @$(CHK_DIR_EXISTS) Acid_Cam_v2_Qt.app/Contents || $(MKDIR) Acid_Cam_v2_Qt.app/Contents
+ @$(DEL_FILE) Acid_Cam_v2_Qt.app/Contents/Info.plist
+ @sed -e "s,@SHORT_VERSION@,1.0,g" -e "s,@TYPEINFO@,????,g" -e "s,@ICON@,,g" -e "s,@EXECUTABLE@,Acid_Cam_v2_Qt,g" -e "s,@TYPEINFO@,????,g" /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/mkspecs/unsupported/macx-clang-libc++/Info.plist.app >Acid_Cam_v2_Qt.app/Contents/Info.plist
+dist:
+ @$(CHK_DIR_EXISTS) .tmp/Acid_Cam_v2_Qt1.0.0 || $(MKDIR) .tmp/Acid_Cam_v2_Qt1.0.0
+ $(COPY_FILE) --parents $(SOURCES) $(DIST) .tmp/Acid_Cam_v2_Qt1.0.0/ && $(COPY_FILE) --parents main_window.h new_dialog.h plugin.h qtheaders.h select_image.h ac.h fractal.h display_window.h playback_thread.h .tmp/Acid_Cam_v2_Qt1.0.0/ && $(COPY_FILE) --parents qresource.qrc .tmp/Acid_Cam_v2_Qt1.0.0/ && $(COPY_FILE) --parents main.cpp main_window.cpp new_dialog.cpp plugin.cpp select_image.cpp ac.cpp fractal.cpp display_window.cpp playback_thread.cpp .tmp/Acid_Cam_v2_Qt1.0.0/ && (cd `dirname .tmp/Acid_Cam_v2_Qt1.0.0` && $(TAR) Acid_Cam_v2_Qt1.0.0.tar Acid_Cam_v2_Qt1.0.0 && $(COMPRESS) Acid_Cam_v2_Qt1.0.0.tar) && $(MOVE) `dirname .tmp/Acid_Cam_v2_Qt1.0.0`/Acid_Cam_v2_Qt1.0.0.tar.gz . && $(DEL_FILE) -r .tmp/Acid_Cam_v2_Qt1.0.0
+
+
+clean:compiler_clean
+ -$(DEL_FILE) $(OBJECTS)
+ -$(DEL_FILE) *~ core *.core
+
+
+####### Sub-libraries
+
+distclean: clean
+ -$(DEL_FILE) -r Acid_Cam_v2_Qt.app
+ -$(DEL_FILE) Makefile
+
+
+check: first
+
+mocclean: compiler_moc_header_clean compiler_moc_source_clean
+
+mocables: compiler_moc_header_make_all compiler_moc_source_make_all
+
+compiler_objective_c_make_all:
+compiler_objective_c_clean:
+compiler_moc_header_make_all: moc_main_window.cpp moc_new_dialog.cpp moc_display_window.cpp moc_playback_thread.cpp
+compiler_moc_header_clean:
+ -$(DEL_FILE) moc_main_window.cpp moc_new_dialog.cpp moc_display_window.cpp moc_playback_thread.cpp
+moc_main_window.cpp: qtheaders.h \
+ ac.h \
+ fractal.h \
+ new_dialog.h \
+ display_window.h \
+ playback_thread.h \
+ main_window.h
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/bin/moc $(DEFINES) $(INCPATH) -D__APPLE__ -D__GNUC__ main_window.h -o moc_main_window.cpp
+
+moc_new_dialog.cpp: qtheaders.h \
+ ac.h \
+ fractal.h \
+ new_dialog.h
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/bin/moc $(DEFINES) $(INCPATH) -D__APPLE__ -D__GNUC__ new_dialog.h -o moc_new_dialog.cpp
+
+moc_display_window.cpp: qtheaders.h \
+ ac.h \
+ fractal.h \
+ display_window.h
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/bin/moc $(DEFINES) $(INCPATH) -D__APPLE__ -D__GNUC__ display_window.h -o moc_display_window.cpp
+
+moc_playback_thread.cpp: qtheaders.h \
+ ac.h \
+ fractal.h \
+ playback_thread.h
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/bin/moc $(DEFINES) $(INCPATH) -D__APPLE__ -D__GNUC__ playback_thread.h -o moc_playback_thread.cpp
+
+compiler_rcc_make_all: qrc_qresource.cpp
+compiler_rcc_clean:
+ -$(DEL_FILE) qrc_qresource.cpp
+qrc_qresource.cpp: qresource.qrc \
+ images/icon.png
+ /Volumes/LostDrive-6/Users/jared/usr.local/local/Cellar/qt/4.8.7_2/bin/rcc -name qresource qresource.qrc -o qrc_qresource.cpp
+
+compiler_image_collection_make_all: qmake_image_collection.cpp
+compiler_image_collection_clean:
+ -$(DEL_FILE) qmake_image_collection.cpp
+compiler_moc_source_make_all:
+compiler_moc_source_clean:
+compiler_rez_source_make_all:
+compiler_rez_source_clean:
+compiler_uic_make_all:
+compiler_uic_clean:
+compiler_yacc_decl_make_all:
+compiler_yacc_decl_clean:
+compiler_yacc_impl_make_all:
+compiler_yacc_impl_clean:
+compiler_lex_make_all:
+compiler_lex_clean:
+compiler_clean: compiler_moc_header_clean compiler_rcc_clean
+
+####### Compile
+
+main.o: main.cpp qtheaders.h \
+ ac.h \
+ fractal.h \
+ main_window.h \
+ new_dialog.h \
+ display_window.h \
+ playback_thread.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o main.o main.cpp
+
+main_window.o: main_window.cpp main_window.h \
+ qtheaders.h \
+ ac.h \
+ fractal.h \
+ new_dialog.h \
+ display_window.h \
+ playback_thread.h \
+ plugin.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o main_window.o main_window.cpp
+
+new_dialog.o: new_dialog.cpp new_dialog.h \
+ qtheaders.h \
+ ac.h \
+ fractal.h \
+ main_window.h \
+ display_window.h \
+ playback_thread.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o new_dialog.o new_dialog.cpp
+
+plugin.o: plugin.cpp plugin.h \
+ qtheaders.h \
+ ac.h \
+ fractal.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o plugin.o plugin.cpp
+
+select_image.o: select_image.cpp select_image.h \
+ qtheaders.h \
+ ac.h \
+ fractal.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o select_image.o select_image.cpp
+
+ac.o: ac.cpp ac.h \
+ fractal.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ac.o ac.cpp
+
+fractal.o: fractal.cpp fractal.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o fractal.o fractal.cpp
+
+display_window.o: display_window.cpp display_window.h \
+ qtheaders.h \
+ ac.h \
+ fractal.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o display_window.o display_window.cpp
+
+playback_thread.o: playback_thread.cpp playback_thread.h \
+ qtheaders.h \
+ ac.h \
+ fractal.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o playback_thread.o playback_thread.cpp
+
+moc_main_window.o: moc_main_window.cpp
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_main_window.o moc_main_window.cpp
+
+moc_new_dialog.o: moc_new_dialog.cpp
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_new_dialog.o moc_new_dialog.cpp
+
+moc_display_window.o: moc_display_window.cpp
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_display_window.o moc_display_window.cpp
+
+moc_playback_thread.o: moc_playback_thread.cpp
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_playback_thread.o moc_playback_thread.cpp
+
+qrc_qresource.o: qrc_qresource.cpp
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o qrc_qresource.o qrc_qresource.cpp
+
+####### Install
+
+install: FORCE
+
+uninstall: FORCE
+
+FORCE:
+
diff --git a/src/playback_thread.cpp b/src/playback_thread.cpp
index 02df3f2..7d586a1 100644
--- a/src/playback_thread.cpp
+++ b/src/playback_thread.cpp
@@ -13,6 +13,8 @@ Playback::Playback(QObject *parent) : QThread(parent) {
isPaused = false;
bright_ = gamma_ = saturation_ = 0;
single_mode = true;
+ alpha = 0;
+ prev_filter = std::pair(0, 0);
}
void Playback::Play() {
@@ -111,7 +113,9 @@ void Playback::setColorOptions(int b, int g, int s) {
}
void Playback::setIndexChanged(std::string value) {
+ prev_filter = current_filter;
current_filter = filter_map[value];
+ alpha = 1.0;
}
void Playback::setSingleMode(bool val) {
@@ -180,7 +184,11 @@ void Playback::run() {
cur = current;
mutex_shown.unlock();
ac::orig_frame = frame.clone();
- if(single_mode == true) {
+
+ if(single_mode == true && alpha > 0) {
+ filterFade(frame, current_filter, prev_filter, alpha);
+ alpha -= 0.08;
+ } else if(single_mode == true) {
mutex.lock();
ac::in_custom = false;
drawFilter(frame, current_filter);
@@ -238,6 +246,8 @@ Playback::~Playback() {
void Playback::Stop() {
stop = true;
+ alpha = 0;
+ prev_filter = std::pair(0, 0);
}
void Playback::Release() {
@@ -268,3 +278,25 @@ void Playback::setImage(const cv::Mat &frame) {
blend_image = frame;
mutex.unlock();
}
+
+void Playback::filterFade(cv::Mat &frame, std::pair &filter1, std::pair &filter2, double alpha) {
+ unsigned int h = frame.rows; // frame height
+ unsigned int w = frame.cols;// framew idth
+ // make copies of original frame
+ cv::Mat frame1 = frame.clone(), frame2 = frame.clone();
+ // apply filters on two copies of original frame
+ drawFilter(frame1,filter1);
+ drawFilter(frame2,filter2);
+ // loop through image setting each pixel with alphablended pixel
+ for(unsigned int z = 0; z < h; ++z) {
+ for(unsigned int i = 0; i < w; ++i) {
+ cv::Vec3b &pixel = frame.at(z, i); // target pixel
+ cv::Vec3b frame1_pix = frame1.at(z, i); // frame1 pixel
+ cv::Vec3b frame2_pix = frame2.at(z, i); // frame2 pixel
+ // loop through pixel components and set target pixel to alpha blended pixel of two frames
+ for(unsigned int q = 0; q < 3; ++q)
+ pixel[q] = frame2_pix[q]+(frame1_pix[q]*alpha);
+ }
+ }
+}
+
diff --git a/src/playback_thread.h b/src/playback_thread.h
index 8e9503f..f907bfe 100644
--- a/src/playback_thread.h
+++ b/src/playback_thread.h
@@ -34,7 +34,8 @@ private:
unsigned int red, green, blue;
unsigned int bright_, gamma_, saturation_;
bool single_mode;
- std::pair current_filter;
+ std::pair current_filter, prev_filter;
+ double alpha;
public:
Playback(QObject *parent = 0);
~Playback();
@@ -58,6 +59,7 @@ public:
void setSingleMode(bool val);
void drawFilter(cv::Mat &frame, std::pair &filter);
void drawEffects(cv::Mat &frame);
+ void filterFade(cv::Mat &frame, std::pair &filter1, std::pair &filter2, double alpha);
signals:
void procImage(const QImage image);
void stopRecording();