From 89e7fc6f6920e4e5b49d851a321a7750bc97e9ba Mon Sep 17 00:00:00 2001 From: Jeremy Bullock Date: Mon, 31 Aug 2020 12:55:57 -0600 Subject: [PATCH] Allow older Canon cameras to work (#129) --- toonz/sources/stopmotion/canon.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/toonz/sources/stopmotion/canon.cpp b/toonz/sources/stopmotion/canon.cpp index e99dc620..88cfafa5 100644 --- a/toonz/sources/stopmotion/canon.cpp +++ b/toonz/sources/stopmotion/canon.cpp @@ -1008,10 +1008,17 @@ EdsError Canon::takePicture() { std::string real = m_realShutterSpeed.toStdString(); EdsError err; - err = EdsSendCommand(m_camera, kEdsCameraCommand_PressShutterButton, - kEdsCameraCommand_ShutterButton_Completely_NonAF); - err = EdsSendCommand(m_camera, kEdsCameraCommand_PressShutterButton, - kEdsCameraCommand_ShutterButton_OFF); + if (m_cameraName.find("450D") != std::string::npos || + m_cameraName.find("1000D") != std::string::npos || + m_cameraName.find("40D") != std::string::npos) { + err = EdsSendCommand(m_camera, kEdsCameraCommand_TakePicture, 0); + } + else { + err = EdsSendCommand(m_camera, kEdsCameraCommand_PressShutterButton, + kEdsCameraCommand_ShutterButton_Completely_NonAF); + err = EdsSendCommand(m_camera, kEdsCameraCommand_PressShutterButton, + kEdsCameraCommand_ShutterButton_OFF); + } return err; }