Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F152523812
D13348.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
8 KB
Referenced Files
None
Subscribers
None
D13348.diff
View Options
Index: head/multimedia/Makefile
===================================================================
--- head/multimedia/Makefile
+++ head/multimedia/Makefile
@@ -443,6 +443,7 @@
SUBDIR += vtkmpeg2encode
SUBDIR += w_scan
SUBDIR += webcamd
+ SUBDIR += webcamoid
SUBDIR += webvfx-qt5
SUBDIR += win32-codecs
SUBDIR += winff
Index: head/multimedia/webcamoid/Makefile
===================================================================
--- head/multimedia/webcamoid/Makefile
+++ head/multimedia/webcamoid/Makefile
@@ -0,0 +1,30 @@
+# $FreeBSD$
+
+PORTNAME= webcamoid
+DISTVERSION= 8.1.0
+CATEGORIES= multimedia
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Full featured webcam suite
+
+LICENSE= GPLv3
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+LIB_DEPENDS= libasound.so:audio/alsa-lib \
+ libavcodec.so:multimedia/ffmpeg \
+ libjack.so:audio/jack \
+ libpulse.so:audio/pulseaudio \
+ libv4l2.so:multimedia/libv4l
+
+USES= pkgconfig qmake
+USE_GITHUB= yes
+USE_GNOME= glib20
+USE_GSTREAMER1= yes
+USE_GL= gl
+USE_QT5= concurrent core gui multimedia network opengl qml quick svg widgets buildtools_build
+
+MAKE_ENV= NOOSS=1 # NOOSS is because the OSS module attempts to use kevent on OSS devices, which is broken in the base
+QMAKE_ARGS= INSTALLQMLDIR=${QT_QMLDIR} \
+ MANDIR=${PREFIX}/man
+
+.include <bsd.port.mk>
Index: head/multimedia/webcamoid/distinfo
===================================================================
--- head/multimedia/webcamoid/distinfo
+++ head/multimedia/webcamoid/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1512092375
+SHA256 (webcamoid-webcamoid-8.1.0_GH0.tar.gz) = 2e51731c36a86a4b3e323c11000a04b7ce06b5d228519676f4070e44e2a62947
+SIZE (webcamoid-webcamoid-8.1.0_GH0.tar.gz) = 10062681
Index: head/multimedia/webcamoid/files/patch-libAvKys_Plugins_MultiSrc_src_multisrcelement.cpp
===================================================================
--- head/multimedia/webcamoid/files/patch-libAvKys_Plugins_MultiSrc_src_multisrcelement.cpp
+++ head/multimedia/webcamoid/files/patch-libAvKys_Plugins_MultiSrc_src_multisrcelement.cpp
@@ -0,0 +1,21 @@
+--- libAvKys/Plugins/MultiSrc/src/multisrcelement.cpp.orig 2017-10-09 06:45:30 UTC
++++ libAvKys/Plugins/MultiSrc/src/multisrcelement.cpp
+@@ -201,9 +201,15 @@ void MultiSrcElement::codecLibUpdated(co
+ auto state = this->state();
+ this->setState(AkElement::ElementStateNull);
+
+- auto media = this->m_mediaSource->media();
+- auto loop = this->m_mediaSource->loop();
+- auto showLog = this->m_mediaSource->showLog();
++ // crashes with these lines: https://github.com/webcamoid/webcamoid/issues/100
++ // auto media = this->m_mediaSource->media();
++ // auto loop = this->m_mediaSource->loop();
++ // auto showLog = this->m_mediaSource->showLog();
++
++ // workaround for the crash
++ QString media;
++ bool loop = true;
++ bool showLog = true;
+
+ this->m_mutexLib.lock();
+
Index: head/multimedia/webcamoid/files/patch-libAvKys_Plugins_VideoCapture_src_v4l2sys_src_capturev4l2.cpp
===================================================================
--- head/multimedia/webcamoid/files/patch-libAvKys_Plugins_VideoCapture_src_v4l2sys_src_capturev4l2.cpp
+++ head/multimedia/webcamoid/files/patch-libAvKys_Plugins_VideoCapture_src_v4l2sys_src_capturev4l2.cpp
@@ -0,0 +1,53 @@
+--- libAvKys/Plugins/VideoCapture/src/v4l2sys/src/capturev4l2.cpp.orig 2017-10-09 06:45:30 UTC
++++ libAvKys/Plugins/VideoCapture/src/v4l2sys/src/capturev4l2.cpp
+@@ -60,12 +60,15 @@ inline IoMethodMap initIoMethodMap()
+
+ Q_GLOBAL_STATIC_WITH_ARGS(IoMethodMap, ioMethodToStr, (initIoMethodMap()))
+
++#define FREEBSD_BUG224011_VIDEO0
++
+ CaptureV4L2::CaptureV4L2(QObject *parent):
+ Capture(parent)
+ {
+ this->m_id = -1;
+ this->m_ioMethod = IoMethodUnknown;
+ this->m_nBuffers = 32;
++#if !defined(FREEBSD_BUG224011_VIDEO0)
+ this->m_fsWatcher = new QFileSystemWatcher({"/dev"}, this);
+
+ QObject::connect(this->m_fsWatcher,
+@@ -76,13 +79,15 @@ CaptureV4L2::CaptureV4L2(QObject *parent
+ &QFileSystemWatcher::fileChanged,
+ this,
+ &CaptureV4L2::onFileChanged);
+-
++#endif
+ this->updateDevices();
+ }
+
+ CaptureV4L2::~CaptureV4L2()
+ {
++#if !defined(FREEBSD_BUG224011_VIDEO0)
+ delete this->m_fsWatcher;
++#endif
+ }
+
+ QStringList CaptureV4L2::webcams() const
+@@ -1176,13 +1181,16 @@ void CaptureV4L2::updateDevices()
+ this->m_cameraControls = cameraControls;
+
+ if (this->m_devices != devices) {
++#if !defined(FREEBSD_BUG224011_VIDEO0)
+ if (!this->m_devices.isEmpty())
+ this->m_fsWatcher->removePaths(this->m_devices);
+-
++#endif
+ this->m_devices = devices;
+
++#if !defined(FREEBSD_BUG224011_VIDEO0)
+ if (!this->m_devices.isEmpty())
+ this->m_fsWatcher->addPaths(this->m_devices);
++#endif
+
+ emit this->webcamsChanged(this->m_devices);
+ }
Index: head/multimedia/webcamoid/pkg-descr
===================================================================
--- head/multimedia/webcamoid/pkg-descr
+++ head/multimedia/webcamoid/pkg-descr
@@ -0,0 +1,17 @@
+Webcamoid is a full featured and multiplatform webcam suite.
+
+Features:
+* Cross-platform (GNU/Linux, Mac, Windows)
+* Take pictures and record videos with the webcam.
+* Manages multiple webcams.
+* Written in C++ and Qt.
+* Custom controls for each webcam.
+* Add funny effects to the webcam.
+* +60 effects available.
+* Translated to many languages.
+* Use custom network and local files as capture devices.
+* Capture from desktop.
+* Many recording formats.
+* Virtual webcam support for feeding other programs.
+
+WWW: https://webcamoid.github.io
Index: head/multimedia/webcamoid/pkg-plist
===================================================================
--- head/multimedia/webcamoid/pkg-plist
+++ head/multimedia/webcamoid/pkg-plist
@@ -0,0 +1,98 @@
+bin/webcamoid
+lib/avkys/libACapsConvert.so
+lib/avkys/libAging.so
+lib/avkys/libAudioDevice.so
+lib/avkys/libAudioGen.so
+lib/avkys/libBin.so
+lib/avkys/libBlur.so
+lib/avkys/libCartoon.so
+lib/avkys/libChangeHSL.so
+lib/avkys/libCharify.so
+lib/avkys/libCinema.so
+lib/avkys/libColorFilter.so
+lib/avkys/libColorReplace.so
+lib/avkys/libColorTap.so
+lib/avkys/libColorTransform.so
+lib/avkys/libConvolve.so
+lib/avkys/libDelayGrab.so
+lib/avkys/libDenoise.so
+lib/avkys/libDesktopCapture.so
+lib/avkys/libDice.so
+lib/avkys/libDistort.so
+lib/avkys/libDizzy.so
+lib/avkys/libEdge.so
+lib/avkys/libEmboss.so
+lib/avkys/libEqualize.so
+lib/avkys/libFaceDetect.so
+lib/avkys/libFalseColor.so
+lib/avkys/libFire.so
+lib/avkys/libFrameOverlap.so
+lib/avkys/libGrayScale.so
+lib/avkys/libHalftone.so
+lib/avkys/libHypnotic.so
+lib/avkys/libImplode.so
+lib/avkys/libInvert.so
+lib/avkys/libLife.so
+lib/avkys/libMatrix.so
+lib/avkys/libMatrixTransform.so
+lib/avkys/libMultiSink.so
+lib/avkys/libMultiSrc.so
+lib/avkys/libMultiplex.so
+lib/avkys/libNervous.so
+lib/avkys/libNormalize.so
+lib/avkys/libOilPaint.so
+lib/avkys/libPhotocopy.so
+lib/avkys/libPixelate.so
+lib/avkys/libPrimariesColors.so
+lib/avkys/libProbe.so
+lib/avkys/libQuark.so
+lib/avkys/libRadioactive.so
+lib/avkys/libRipple.so
+lib/avkys/libScanLines.so
+lib/avkys/libScroll.so
+lib/avkys/libShagadelic.so
+lib/avkys/libSwirl.so
+lib/avkys/libTemperature.so
+lib/avkys/libVideoCapture.so
+lib/avkys/libVignette.so
+lib/avkys/libVirtualCamera.so
+lib/avkys/libWarhol.so
+lib/avkys/libWarp.so
+lib/avkys/libWave.so
+lib/avkys/submodules/ACapsConvert/libffmpegav.so
+lib/avkys/submodules/ACapsConvert/libffmpegsw.so
+lib/avkys/submodules/AudioDevice/libalsa.so
+lib/avkys/submodules/AudioDevice/libjack.so
+lib/avkys/submodules/AudioDevice/liboss.so
+lib/avkys/submodules/AudioDevice/libpulseaudio.so
+lib/avkys/submodules/AudioDevice/libqtaudio.so
+lib/avkys/submodules/DesktopCapture/libqtscreen.so
+lib/avkys/submodules/MultiSink/libffmpeg.so
+lib/avkys/submodules/MultiSink/libgstreamer.so
+lib/avkys/submodules/MultiSrc/libffmpeg.so
+lib/avkys/submodules/MultiSrc/libgstreamer.so
+lib/avkys/submodules/VideoCapture/libffmpeg.so
+lib/avkys/submodules/VideoCapture/libgstreamer.so
+lib/avkys/submodules/VideoCapture/libv4l2sys.so
+lib/avkys/submodules/VideoCapture/libv4lutils.so
+lib/avkys/submodules/VirtualCamera/libffmpeg.so
+lib/avkys/submodules/VirtualCamera/libgstreamer.so
+lib/avkys/submodules/VirtualCamera/libv4l2sys.so
+lib/avkys/submodules/VirtualCamera/libv4lutils.so
+lib/libavkys.so
+lib/libavkys.so.8
+lib/libavkys.so.8.1
+lib/libavkys.so.8.1.0
+%%QT_QMLDIR%%/AkQml/libAkQml.so
+%%QT_QMLDIR%%/AkQml/qmldir
+man/man1/webcamoid.1.gz
+share/applications/webcamoid.desktop
+share/icons/hicolor/128x128/apps/webcamoid.png
+share/icons/hicolor/16x16/apps/webcamoid.png
+share/icons/hicolor/22x22/apps/webcamoid.png
+share/icons/hicolor/256x256/apps/webcamoid.png
+share/icons/hicolor/32x32/apps/webcamoid.png
+share/icons/hicolor/48x48/apps/webcamoid.png
+share/icons/hicolor/64x64/apps/webcamoid.png
+share/icons/hicolor/8x8/apps/webcamoid.png
+share/icons/hicolor/scalable/apps/webcamoid.svg
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Apr 16, 11:53 AM (21 h, 14 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31601116
Default Alt Text
D13348.diff (8 KB)
Attached To
Mode
D13348: New port: multimedia/webcamoid: Full featured webcam suite
Attached
Detach File
Event Timeline
Log In to Comment