diff options
-rw-r--r-- | multimedia/Makefile | 1 | ||||
-rw-r--r-- | multimedia/pipewire/Makefile | 38 | ||||
-rw-r--r-- | multimedia/pipewire/distinfo | 3 | ||||
-rw-r--r-- | multimedia/pipewire/files/patch-meson | 53 | ||||
-rw-r--r-- | multimedia/pipewire/files/patch-src_tools_pw-cli.c | 12 | ||||
-rw-r--r-- | multimedia/pipewire/pkg-descr | 8 | ||||
-rw-r--r-- | multimedia/pipewire/pkg-plist | 156 |
7 files changed, 271 insertions, 0 deletions
diff --git a/multimedia/Makefile b/multimedia/Makefile index 3c128d44c92a..da968be4a5d9 100644 --- a/multimedia/Makefile +++ b/multimedia/Makefile @@ -312,6 +312,7 @@ SUBDIR += phonon-vlc SUBDIR += photofilmstrip SUBDIR += php-pHash + SUBDIR += pipewire SUBDIR += pitivi SUBDIR += plexmediaserver SUBDIR += plexmediaserver-plexpass diff --git a/multimedia/pipewire/Makefile b/multimedia/pipewire/Makefile new file mode 100644 index 000000000000..113cc13826b3 --- /dev/null +++ b/multimedia/pipewire/Makefile @@ -0,0 +1,38 @@ +# $FreeBSD$ + +PORTNAME= pipewire +DISTVERSION= 0.3.0 +CATEGORIES= multimedia + +MAINTAINER= arrowd@FreeBSD.org +COMMENT= Server and user space API to deal with multimedia pipelines + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +#TODO: xmltoman +BUILD_DEPENDS= v4l_compat>0:multimedia/v4l_compat +LIB_DEPENDS= libasound.so:audio/alsa-lib \ + libdbus-1.so:devel/dbus \ + libepoll-shim.so:devel/libepoll-shim \ + libudev.so:devel/libudev-devd + +USES= gnome meson pkgconfig + +USE_GNOME= glib20 +USE_LDCONFIG= yes + +USE_GITHUB= yes +GH_ACCOUNT= PipeWire + +MESON_ARGS= -D gstreamer=false \ + -D bluez5=false \ + -D jack=false -D pipewire-jack=false \ + -D vulkan=false \ + -D pipewire-pulseaudio=false \ + -D systemd=false + +post-install: + ${MV} ${STAGEDIR}${ETCDIR}/pipewire.conf ${STAGEDIR}${ETCDIR}/pipewire.conf.sample + +.include <bsd.port.mk> diff --git a/multimedia/pipewire/distinfo b/multimedia/pipewire/distinfo new file mode 100644 index 000000000000..37ed8a109a74 --- /dev/null +++ b/multimedia/pipewire/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1582285863 +SHA256 (PipeWire-pipewire-0.3.0_GH0.tar.gz) = 9e799ac9d191dc1afd10a6503601ab14ccba02983fa152c5133190904eb6c110 +SIZE (PipeWire-pipewire-0.3.0_GH0.tar.gz) = 865782 diff --git a/multimedia/pipewire/files/patch-meson b/multimedia/pipewire/files/patch-meson new file mode 100644 index 000000000000..ac0553c51527 --- /dev/null +++ b/multimedia/pipewire/files/patch-meson @@ -0,0 +1,53 @@ +--- meson.build.orig 2020-02-20 14:33:31 UTC ++++ meson.build +@@ -221,6 +221,10 @@ epoll_shim_dep = (build_machine.system() == 'freebsd' + ? dependency('epoll-shim', required: true) + : dependency('', required: false)) + ++if build_machine.system() == 'freebsd' ++ epoll_shim_dep = dependency('epoll-shim', required: true) ++endif ++ + subdir('spa') + subdir('src') + +--- spa/plugins/alsa/meson.build.orig 2020-02-20 14:33:31 UTC ++++ spa/plugins/alsa/meson.build +@@ -10,6 +10,6 @@ spa_alsa_sources = ['alsa.c', + spa_alsa = shared_library('spa-alsa', + spa_alsa_sources, + include_directories : [spa_inc], +- dependencies : [ alsa_dep, libudev_dep, mathlib, ], ++ dependencies : [ alsa_dep, libudev_dep, mathlib, epoll_shim_dep], + install : true, + install_dir : join_paths(spa_plugindir, 'alsa')) +--- spa/plugins/audiotestsrc/meson.build.orig 2020-02-20 14:33:31 UTC ++++ spa/plugins/audiotestsrc/meson.build +@@ -3,6 +3,6 @@ audiotestsrc_sources = ['audiotestsrc.c', 'plugin.c'] + audiotestsrclib = shared_library('spa-audiotestsrc', + audiotestsrc_sources, + include_directories : [spa_inc], +- dependencies : [mathlib, ], ++ dependencies : [mathlib, epoll_shim_dep], + install : true, + install_dir : join_paths(spa_plugindir, 'audiotestsrc')) +--- src/modules/meson.build.orig 2020-02-20 14:33:31 UTC ++++ src/modules/meson.build +@@ -29,7 +29,7 @@ pipewire_module_rtkit = shared_library('pipewire-modul + include_directories : [configinc, spa_inc], + install : true, + install_dir : modules_install_dir, +- dependencies : [dbus_dep, mathlib, dl_lib, pipewire_dep], ++ dependencies : [dbus_dep, mathlib, dl_lib, pipewire_dep, epoll_shim_dep], + ) + endif + +@@ -42,7 +42,7 @@ pipewire_module_client_node = shared_library('pipewire + include_directories : [configinc, spa_inc], + install : true, + install_dir : modules_install_dir, +- dependencies : [mathlib, dl_lib, pipewire_dep], ++ dependencies : [mathlib, dl_lib, pipewire_dep, epoll_shim_dep], + ) + + pipewire_module_link_factory = shared_library('pipewire-module-link-factory', diff --git a/multimedia/pipewire/files/patch-src_tools_pw-cli.c b/multimedia/pipewire/files/patch-src_tools_pw-cli.c new file mode 100644 index 000000000000..174af07c07e6 --- /dev/null +++ b/multimedia/pipewire/files/patch-src_tools_pw-cli.c @@ -0,0 +1,12 @@ +--- src/tools/pw-cli.c.orig 2020-02-20 14:33:31 UTC ++++ src/tools/pw-cli.c +@@ -28,7 +28,9 @@ + #include <signal.h> + #include <string.h> + #include <ctype.h> ++#ifndef __FreeBSD__ + #include <alloca.h> ++#endif + + #include <spa/utils/result.h> + #include <spa/debug/pod.h> diff --git a/multimedia/pipewire/pkg-descr b/multimedia/pipewire/pkg-descr new file mode 100644 index 000000000000..230036578b31 --- /dev/null +++ b/multimedia/pipewire/pkg-descr @@ -0,0 +1,8 @@ +PipeWire is a server and user space API to deal with multimedia pipelines. This +includes: +- Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. +- Accessing sources of video for consumption. +- Generating graphs for audio and video processing. + +WWW: https://pipewire.org/ diff --git a/multimedia/pipewire/pkg-plist b/multimedia/pipewire/pkg-plist new file mode 100644 index 000000000000..c059acfb96fb --- /dev/null +++ b/multimedia/pipewire/pkg-plist @@ -0,0 +1,156 @@ +bin/pipewire +bin/pipewire-media-session +bin/pw-cli +bin/pw-dot +bin/pw-mon +bin/pw-profiler +bin/spa-inspect +bin/spa-monitor +@sample %%ETCDIR%%/pipewire.conf.sample +include/pipewire-0.3/pipewire/array.h +include/pipewire-0.3/pipewire/buffers.h +include/pipewire-0.3/pipewire/client.h +include/pipewire-0.3/pipewire/context.h +include/pipewire-0.3/pipewire/control.h +include/pipewire-0.3/pipewire/core.h +include/pipewire-0.3/pipewire/data-loop.h +include/pipewire-0.3/pipewire/device.h +include/pipewire-0.3/pipewire/extensions/client-node.h +include/pipewire-0.3/pipewire/extensions/metadata.h +include/pipewire-0.3/pipewire/extensions/profiler.h +include/pipewire-0.3/pipewire/extensions/protocol-native.h +include/pipewire-0.3/pipewire/extensions/session-manager.h +include/pipewire-0.3/pipewire/extensions/session-manager/impl-interfaces.h +include/pipewire-0.3/pipewire/extensions/session-manager/interfaces.h +include/pipewire-0.3/pipewire/extensions/session-manager/introspect.h +include/pipewire-0.3/pipewire/extensions/session-manager/keys.h +include/pipewire-0.3/pipewire/factory.h +include/pipewire-0.3/pipewire/filter.h +include/pipewire-0.3/pipewire/global.h +include/pipewire-0.3/pipewire/impl-client.h +include/pipewire-0.3/pipewire/impl-core.h +include/pipewire-0.3/pipewire/impl-device.h +include/pipewire-0.3/pipewire/impl-factory.h +include/pipewire-0.3/pipewire/impl-link.h +include/pipewire-0.3/pipewire/impl-module.h +include/pipewire-0.3/pipewire/impl-node.h +include/pipewire-0.3/pipewire/impl-port.h +include/pipewire-0.3/pipewire/impl.h +include/pipewire-0.3/pipewire/keys.h +include/pipewire-0.3/pipewire/link.h +include/pipewire-0.3/pipewire/log.h +include/pipewire-0.3/pipewire/loop.h +include/pipewire-0.3/pipewire/main-loop.h +include/pipewire-0.3/pipewire/map.h +include/pipewire-0.3/pipewire/mem.h +include/pipewire-0.3/pipewire/module.h +include/pipewire-0.3/pipewire/node.h +include/pipewire-0.3/pipewire/permission.h +include/pipewire-0.3/pipewire/pipewire.h +include/pipewire-0.3/pipewire/port.h +include/pipewire-0.3/pipewire/properties.h +include/pipewire-0.3/pipewire/protocol.h +include/pipewire-0.3/pipewire/proxy.h +include/pipewire-0.3/pipewire/resource.h +include/pipewire-0.3/pipewire/stream.h +include/pipewire-0.3/pipewire/thread-loop.h +include/pipewire-0.3/pipewire/type.h +include/pipewire-0.3/pipewire/utils.h +include/pipewire-0.3/pipewire/version.h +include/pipewire-0.3/pipewire/work-queue.h +include/spa-0.2/spa/buffer/alloc.h +include/spa-0.2/spa/buffer/buffer.h +include/spa-0.2/spa/buffer/meta.h +include/spa-0.2/spa/buffer/type-info.h +include/spa-0.2/spa/control/control.h +include/spa-0.2/spa/control/type-info.h +include/spa-0.2/spa/debug/buffer.h +include/spa-0.2/spa/debug/dict.h +include/spa-0.2/spa/debug/format.h +include/spa-0.2/spa/debug/mem.h +include/spa-0.2/spa/debug/node.h +include/spa-0.2/spa/debug/pod.h +include/spa-0.2/spa/debug/types.h +include/spa-0.2/spa/graph/graph.h +include/spa-0.2/spa/monitor/device.h +include/spa-0.2/spa/monitor/utils.h +include/spa-0.2/spa/node/command.h +include/spa-0.2/spa/node/event.h +include/spa-0.2/spa/node/io.h +include/spa-0.2/spa/node/keys.h +include/spa-0.2/spa/node/node.h +include/spa-0.2/spa/node/type-info.h +include/spa-0.2/spa/node/utils.h +include/spa-0.2/spa/param/audio/format-utils.h +include/spa-0.2/spa/param/audio/format.h +include/spa-0.2/spa/param/audio/layout.h +include/spa-0.2/spa/param/audio/raw.h +include/spa-0.2/spa/param/audio/type-info.h +include/spa-0.2/spa/param/format-utils.h +include/spa-0.2/spa/param/format.h +include/spa-0.2/spa/param/param.h +include/spa-0.2/spa/param/profiler.h +include/spa-0.2/spa/param/props.h +include/spa-0.2/spa/param/type-info.h +include/spa-0.2/spa/param/video/chroma.h +include/spa-0.2/spa/param/video/color.h +include/spa-0.2/spa/param/video/encoded.h +include/spa-0.2/spa/param/video/format-utils.h +include/spa-0.2/spa/param/video/format.h +include/spa-0.2/spa/param/video/multiview.h +include/spa-0.2/spa/param/video/raw.h +include/spa-0.2/spa/param/video/type-info.h +include/spa-0.2/spa/pod/builder.h +include/spa-0.2/spa/pod/command.h +include/spa-0.2/spa/pod/compare.h +include/spa-0.2/spa/pod/event.h +include/spa-0.2/spa/pod/filter.h +include/spa-0.2/spa/pod/iter.h +include/spa-0.2/spa/pod/parser.h +include/spa-0.2/spa/pod/pod.h +include/spa-0.2/spa/pod/vararg.h +include/spa-0.2/spa/support/cpu.h +include/spa-0.2/spa/support/dbus.h +include/spa-0.2/spa/support/log-impl.h +include/spa-0.2/spa/support/log.h +include/spa-0.2/spa/support/loop.h +include/spa-0.2/spa/support/plugin.h +include/spa-0.2/spa/support/system.h +include/spa-0.2/spa/utils/defs.h +include/spa-0.2/spa/utils/dict.h +include/spa-0.2/spa/utils/hook.h +include/spa-0.2/spa/utils/keys.h +include/spa-0.2/spa/utils/list.h +include/spa-0.2/spa/utils/names.h +include/spa-0.2/spa/utils/result.h +include/spa-0.2/spa/utils/ringbuffer.h +include/spa-0.2/spa/utils/type-info.h +include/spa-0.2/spa/utils/type.h +lib/alsa-lib/libasound_module_pcm_pipewire.so +lib/libpipewire-0.3.so +lib/libpipewire-0.3.so.0 +lib/libpipewire-0.3.so.0.300.0 +lib/pipewire-0.3/libpipewire-module-access.so +lib/pipewire-0.3/libpipewire-module-adapter.so +lib/pipewire-0.3/libpipewire-module-client-device.so +lib/pipewire-0.3/libpipewire-module-client-node.so +lib/pipewire-0.3/libpipewire-module-link-factory.so +lib/pipewire-0.3/libpipewire-module-metadata.so +lib/pipewire-0.3/libpipewire-module-profiler.so +lib/pipewire-0.3/libpipewire-module-protocol-native.so +lib/pipewire-0.3/libpipewire-module-rtkit.so +lib/pipewire-0.3/libpipewire-module-session-manager.so +lib/pipewire-0.3/libpipewire-module-spa-device-factory.so +lib/pipewire-0.3/libpipewire-module-spa-device.so +lib/pipewire-0.3/libpipewire-module-spa-node-factory.so +lib/pipewire-0.3/libpipewire-module-spa-node.so +lib/spa-0.2/alsa/libspa-alsa.so +lib/spa-0.2/audioconvert/libspa-audioconvert.so +lib/spa-0.2/audiomixer/libspa-audiomixer.so +lib/spa-0.2/control/libspa-control.so +lib/spa-0.2/support/libspa-dbus.so +lib/spa-0.2/support/libspa-support.so +lib/spa-0.2/v4l2/libspa-v4l2.so +lib/spa-0.2/videoconvert/libspa-videoconvert.so +libdata/pkgconfig/libpipewire-0.3.pc +libdata/pkgconfig/libspa-0.2.pc |