Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 34 additions & 8 deletions debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,40 @@ Section: utils
Priority: optional
Maintainer: Deepin Packages Builder <packages@deepin.com>
Build-Depends:
debhelper (>=9),cmake,
pkg-config,qt6-base-dev,libdtk6gui-dev,libdtk6widget-dev,qt6-multimedia-dev,
libavutil-dev, libavformat-dev, libavcodec-dev,libavfilter-dev,qt6-tools-dev,
qt6-tools-dev-tools,deepin-gettext-tools, qt6-svg-dev,
libv4l-dev,libsdl2-dev,portaudio19-dev,libpng-dev,libasound2-dev,libpciaccess-dev,
libusb-1.0-0-dev,zlib1g-dev,libudev-dev,libswscale-dev,libswresample-dev,libffmpegthumbnailer-dev,
libx11-dev,libva-dev,libimageeditor6-dev,
libgstreamer1.0-dev,libgstreamer-plugins-base1.0-dev,gstreamer1.0-plugins-good
debhelper (>=9),
cmake,
pkg-config,
libavutil-dev,
libavformat-dev,
libavcodec-dev,
libavfilter-dev,
deepin-gettext-tools,
libv4l-dev,
libsdl2-dev,
portaudio19-dev,
libpng-dev,
libasound2-dev,
libpciaccess-dev,
libusb-1.0-0-dev,
zlib1g-dev,
libudev-dev,
libswscale-dev,
libswresample-dev,
libffmpegthumbnailer-dev,
libx11-dev,
libva-dev,
libimageeditor6-dev | libimageeditor-dev,
libgstreamer1.0-dev,
libgstreamer-plugins-base1.0-dev,
gstreamer1.0-plugins-good,
# Qt
qt6-base-dev | qtbase5-dev,
libdtk6gui-dev | libdtkgui-dev,
libdtk6widget-dev | libdtkwidget-dev,
qt6-multimedia-dev | qtmultimedia5-dev,
qt6-tools-dev | qttools5-dev,
qt6-tools-dev-tools | qttools5-dev-tools,
qt6-svg-dev | libqt5svg5-dev
Standards-Version: 4.1.2
Homepage: http://www.deepin.org

Expand Down
64 changes: 48 additions & 16 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,12 @@ project(deepin-camera VERSION 1.0.0)
set(CMD_NAME deepin-camera)
set(TARGET_NAME deepin-camera)

set(QT_VERSION_MAJOR 6)
find_package(Qt6 QUIET)
if (Qt6_FOUND)
set(QT_VERSION_MAJOR 6)
else()
set(QT_VERSION_MAJOR 5)
endif()
if (${QT_VERSION_MAJOR} GREATER_EQUAL 6)
set(DTK_VERSION 6)
set(IMAGEVISUALRESULT_SUFFIX "6")
Expand Down Expand Up @@ -87,7 +92,11 @@ set(PROJECT_INCLUDE
)

# 设置Qt模块
set(QtModule Core Gui Widgets DBus Concurrent LinguistTools Multimedia PrintSupport Svg SvgWidgets OpenGL OpenGLWidgets)
if (Qt6_FOUND)
set(QtModule Core Gui Widgets DBus Concurrent LinguistTools Multimedia PrintSupport Svg SvgWidgets OpenGL OpenGLWidgets)
else()
set(QtModule Core Gui Widgets DBus Concurrent LinguistTools Multimedia PrintSupport Svg OpenGL)
endif()

# 查找Qt相关的库链接
find_package(Qt${QT_VERSION_MAJOR} REQUIRED ${QtModule})
Expand Down Expand Up @@ -155,7 +164,12 @@ pkg_check_modules(3rd_lib REQUIRED
# libpulse
# libswresample
)
list(APPEND PROJECT_INCLUDE ${CMAKE_INSTALL_PREFIX}/include/glib-2.0 ${CMAKE_INSTALL_PREFIX}/include/gstreamer-1.0)

if (Qt6_FOUND)
list(APPEND PROJECT_INCLUDE ${CMAKE_INSTALL_PREFIX}/include/glib-2.0 ${CMAKE_INSTALL_PREFIX}/include/gstreamer-1.0)
else()
list(APPEND PROJECT_INCLUDE /usr/include /usr/include/libusb-1.0 /usr/include/glib-2.0 /usr/include/gstreamer-1.0)
endif()

# 添加第三方库的所有文件夹路径到工程中来(注意 *_INCLUDE_DIRS)

Expand All @@ -170,7 +184,11 @@ file (GLOB TS LIST_DIRECTORIES false ${PROJECT_SOURCE_DIR}/translations/${TARGET

set_source_files_properties(${TS} PROPERTIES OUTPUT_LOCATION ${PROJECT_SOURCE_DIR}/translations)

qt_create_translation(QM ${CXXSOURCES} ${TS})
if (Qt6_FOUND)
qt_create_translation(QM ${CXXSOURCES} ${TS})
else()
qt5_create_translation(QM ${CXXSOURCES} ${TS})
endif()

# 设置不删除生成的文件夹内容文件
set_directory_properties(PROPERTIES CLEAN_NO_CUSTOM 1)
Expand All @@ -180,18 +198,32 @@ add_executable( ${TARGET_NAME} ${CXXSOURCES} ${CSOURCES} ${RESOURCES} ${QM} )

target_include_directories(${TARGET_NAME} PUBLIC ${3rd_lib_INCLUDE_DIRS} ${PROJECT_INCLUDE} ${GLOB_RECURSE})
# 将第三方库链接进来(注意 *_LIBRARIES)
target_link_libraries(${TARGET_NAME} ${3rd_lib_LIBRARIES}
pthread
dl
imagevisualresult${IMAGEVISUALRESULT_SUFFIX}
${LIBS}
Qt${QT_VERSION_MAJOR}::Widgets
Qt${QT_VERSION_MAJOR}::Multimedia
Qt${QT_VERSION_MAJOR}::Svg
Qt${QT_VERSION_MAJOR}::SvgWidgets
Qt${QT_VERSION_MAJOR}::OpenGL
Qt${QT_VERSION_MAJOR}::OpenGLWidgets
)
if (Qt6_FOUND)
target_link_libraries(${TARGET_NAME} ${3rd_lib_LIBRARIES}
pthread
dl
imagevisualresult${IMAGEVISUALRESULT_SUFFIX}
${LIBS}
Qt${QT_VERSION_MAJOR}::Widgets
Qt${QT_VERSION_MAJOR}::Multimedia
Qt${QT_VERSION_MAJOR}::Svg
Qt${QT_VERSION_MAJOR}::SvgWidgets
Qt${QT_VERSION_MAJOR}::OpenGL
Qt${QT_VERSION_MAJOR}::OpenGLWidgets
)
else()
target_link_libraries(${TARGET_NAME} ${3rd_lib_LIBRARIES}
pthread
dl
imagevisualresult${IMAGEVISUALRESULT_SUFFIX}
${LIBS}
Qt${QT_VERSION_MAJOR}::Widgets
Qt${QT_VERSION_MAJOR}::Multimedia
Qt${QT_VERSION_MAJOR}::Svg
Qt${QT_VERSION_MAJOR}::OpenGL
Qt${QT_VERSION_MAJOR}::Concurrent
)
endif()

include_directories("${CMAKE_INSTALL_PREFIX}/include")

Expand Down
2 changes: 1 addition & 1 deletion src/src/camera.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -378,7 +378,7 @@ void Camera::startCamera(const QString &devName)
m_camera = new QCamera(devName.toStdString().c_str());
QCameraInfo cameraInfo(*m_camera);
connect(m_camera, SIGNAL(statusChanged(QCamera::Status)), this, SLOT(onCameraStatusChanged(QCamera::Status)));
m_curDevName = device.description();
m_curDevName = devName;
qDebug() << "Started camera device:" << m_curDevName;

m_imageCapture = new QCameraImageCapture(m_camera);
Expand Down
10 changes: 5 additions & 5 deletions src/src/mainwindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -442,10 +442,10 @@ static QWidget *createPicSelectableLineEditOptionHandle(QObject *opt)
auto pi = ElideText(value.toString(), { pathEditWidth, tem_fontmetrics.height() }, QTextOption::WrapAnywhere,
picPathLineEdit->font(), Qt::ElideMiddle, tem_fontmetrics.height(), pathEditWidth);
picPathLineEdit->setText(pi);
qDebug() << "picPathLineEdit text:" << picPathLineEdit->text() << Qt::endl;
qDebug() << "picPathLineEdit text:" << picPathLineEdit->text();
lastPicPath = value.toString();
option->setValue(value.toString());
qDebug() << "save pic last path:" << value.toString() << Qt::endl;
qDebug() << "save pic last path:" << value.toString();
picPathLineEdit->update();
});

Expand Down Expand Up @@ -712,10 +712,10 @@ static QWidget *createVdSelectableLineEditOptionHandle(QObject *opt)
QTextOption::WrapAnywhere, videoPathLineEdit->font(), Qt::ElideMiddle,
tem_fontmetrics.height(), pathEditWidth);
videoPathLineEdit->setText(pi);
qDebug() << "picPathLineEdit text:" << videoPathLineEdit->text() << Qt::endl;
qDebug() << "picPathLineEdit text:" << videoPathLineEdit->text();
Comment thread
lichaofan2008 marked this conversation as resolved.
lastVideoPath = value.toString();
option->setValue(value.toString());
qDebug() << "save video last path:" << value.toString() << Qt::endl;
qDebug() << "save video last path:" << value.toString();
videoPathLineEdit->update();
});

Expand Down Expand Up @@ -1474,7 +1474,7 @@ void CMainWindow::onSwitchCameraSuccess(const QString &cameraName)

void CMainWindow::onTimeoutLock(const QString &serviceName, QVariantMap key2value, QStringList)
{
qDebug() << serviceName << key2value << Qt::endl;
qDebug() << serviceName << key2value;
//仅wayland需要锁屏结束录制并停止使用摄像头,从锁屏恢复重新开启摄像头
//wayland下只需要停止录像,不需要停止线程,需要在锁屏状态下继续处理摄像头状态
// if (m_bWayland) {
Expand Down