git: 3b599eff03ba - main - multimedia/shaka-packager: New port: Media packaging SDK and tool for DASH and HLS

From: Jimmy Olgeni <olgeni_at_FreeBSD.org>
Date: Thu, 09 Jul 2026 21:09:03 UTC
The branch main has been updated by olgeni:

URL: https://cgit.FreeBSD.org/ports/commit/?id=3b599eff03ba3ed7f37d9078f6a14be112e6a5fa

commit 3b599eff03ba3ed7f37d9078f6a14be112e6a5fa
Author:     Jimmy Olgeni <olgeni@FreeBSD.org>
AuthorDate: 2026-07-08 23:40:35 +0000
Commit:     Jimmy Olgeni <olgeni@FreeBSD.org>
CommitDate: 2026-07-09 20:46:17 +0000

    multimedia/shaka-packager: New port: Media packaging SDK and tool for DASH and HLS
---
 multimedia/Makefile                 |  1 +
 multimedia/shaka-packager/Makefile  | 43 +++++++++++++++++++++++++++++++++++++
 multimedia/shaka-packager/distinfo  | 31 ++++++++++++++++++++++++++
 multimedia/shaka-packager/pkg-descr | 12 +++++++++++
 4 files changed, 87 insertions(+)

diff --git a/multimedia/Makefile b/multimedia/Makefile
index fe0285e456ec..41e5381f48e9 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -340,6 +340,7 @@
     SUBDIR += rubygem-gstreamer
     SUBDIR += rubygem-streamio-ffmpeg
     SUBDIR += scte35dump
+    SUBDIR += shaka-packager
     SUBDIR += shotcut
     SUBDIR += shotcut-qt6
     SUBDIR += showtime
diff --git a/multimedia/shaka-packager/Makefile b/multimedia/shaka-packager/Makefile
new file mode 100644
index 000000000000..80c5e46ceed9
--- /dev/null
+++ b/multimedia/shaka-packager/Makefile
@@ -0,0 +1,43 @@
+PORTNAME=	shaka-packager
+DISTVERSIONPREFIX=	v
+DISTVERSION=	3.8.0
+CATEGORIES=	multimedia
+
+MAINTAINER=	olgeni@FreeBSD.org
+COMMENT=	Media packaging SDK and tool for DASH and HLS
+WWW=		https://github.com/shaka-project/shaka-packager
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		cmake compiler:c++17-lang python:build
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	shaka-project
+GH_TUPLE=	google:googletest:15460959cbbfa20e66ef0b5ab497367e47fc0a04:googletest/packager/third_party/googletest/source \
+		abseil:abseil-cpp:255c84dadd029fd8ad25c5efb5933e47beaa00c7:abseil/packager/third_party/abseil-cpp/source \
+		curl:curl:8c908d2d0a6d32abdedda2c52e90bd56ec76c24d:curl/packager/third_party/curl/source \
+		nlohmann:json:55f93686c01528224f448c19128836e7df245f72:json/packager/third_party/json/source \
+		Mbed-TLS:mbedtls:e185d7fd85499c8ce5ca2a54f5cf8fe7dbe3f8df:mbedtls/packager/third_party/mbedtls/source \
+		Mbed-TLS:mbedtls-framework:457996474728cb8e968ed21953b72f74d2f536b2:mbedtlsframework/packager/third_party/mbedtls/source/framework \
+		madler:zlib:5c42a230b7b468dff011f444161c0145b5efae59:zlib/packager/third_party/zlib/source \
+		glennrp:libpng:2b978915d82377df13fcbb1fb56660195ded868a:libpng/packager/third_party/libpng/source \
+		webmproject:libwebm:f2a982d748b80586ae53b89a2e6ebbc305848b8c:libwebm/packager/third_party/libwebm/source \
+		GNOME:libxml2:3d840e17858de03a09fba8b202e3a89267d5795a:libxml2/packager/third_party/libxml2/source \
+		protocolbuffers:protobuf:b6f9284da830b69be787732ffdaa35049d20a088:protobuf/packager/third_party/protobuf/source \
+		cesanta:mongoose:5c8e05a4fc34c5309ceea887a7e60b895b2100d7:mongoose/packager/third_party/mongoose/source \
+		c-ares:c-ares:d3a507e920e7af18a5efb7f9f1d8044ed4750013:cares/packager/third_party/c-ares/source \
+		microsoft:mimalloc:4e50d6714d471b72b2285e25a3df6c92db944593:mimalloc/packager/third_party/mimalloc/source
+
+CMAKE_OFF=	BUILD_SHARED_LIBS USE_SYSTEM_DEPENDENCIES
+
+PLIST_FILES=	bin/mpd_generator \
+		bin/packager
+
+# Drop the pssh-box helper and its bundled protobuf Python runtime (168 files
+# under bin/pssh-box-protos); ship only the packager and mpd_generator tools.
+post-install:
+	${RM} -r ${STAGEDIR}${PREFIX}/bin/pssh-box.py \
+		${STAGEDIR}${PREFIX}/bin/pssh-box-protos
+
+.include <bsd.port.mk>
diff --git a/multimedia/shaka-packager/distinfo b/multimedia/shaka-packager/distinfo
new file mode 100644
index 000000000000..85bb9ae8b56c
--- /dev/null
+++ b/multimedia/shaka-packager/distinfo
@@ -0,0 +1,31 @@
+TIMESTAMP = 1783552297
+SHA256 (shaka-project-shaka-packager-v3.8.0_GH0.tar.gz) = 98a051c8feacabf81ed66b6fdf1d3cb1cac9fa632222cda0b7acb2233c7e707a
+SIZE (shaka-project-shaka-packager-v3.8.0_GH0.tar.gz) = 69366508
+SHA256 (google-googletest-15460959cbbfa20e66ef0b5ab497367e47fc0a04_GH0.tar.gz) = 258f33ab1a8ee17adf48ec65e821d0ea9eafcbedeff6110f9eaed78472e73dde
+SIZE (google-googletest-15460959cbbfa20e66ef0b5ab497367e47fc0a04_GH0.tar.gz) = 855900
+SHA256 (abseil-abseil-cpp-255c84dadd029fd8ad25c5efb5933e47beaa00c7_GH0.tar.gz) = 87e91fb785a2d0233f4599317afd576b7736e6732d557bdcdfdc11990bd333ef
+SIZE (abseil-abseil-cpp-255c84dadd029fd8ad25c5efb5933e47beaa00c7_GH0.tar.gz) = 2301499
+SHA256 (curl-curl-8c908d2d0a6d32abdedda2c52e90bd56ec76c24d_GH0.tar.gz) = 905a45930dc0a9c3954fb483be38ad4e4bf60805ad61eccbcb605b33976758b5
+SIZE (curl-curl-8c908d2d0a6d32abdedda2c52e90bd56ec76c24d_GH0.tar.gz) = 3459450
+SHA256 (nlohmann-json-55f93686c01528224f448c19128836e7df245f72_GH0.tar.gz) = 67f4cdd9ca930c9c1e130af4a437c7fc98fab77a2846fc2d2a14b4943831f8ef
+SIZE (nlohmann-json-55f93686c01528224f448c19128836e7df245f72_GH0.tar.gz) = 9681256
+SHA256 (Mbed-TLS-mbedtls-e185d7fd85499c8ce5ca2a54f5cf8fe7dbe3f8df_GH0.tar.gz) = 052dccf3a404dce25a467c6fe044b0c858d609ace8e883b59e9dfd479fdd4528
+SIZE (Mbed-TLS-mbedtls-e185d7fd85499c8ce5ca2a54f5cf8fe7dbe3f8df_GH0.tar.gz) = 5673564
+SHA256 (Mbed-TLS-mbedtls-framework-457996474728cb8e968ed21953b72f74d2f536b2_GH0.tar.gz) = c15bcc24fc43bdf325b0e04fa63270daf6e9488167b94b46547d8134efa9c906
+SIZE (Mbed-TLS-mbedtls-framework-457996474728cb8e968ed21953b72f74d2f536b2_GH0.tar.gz) = 945866
+SHA256 (madler-zlib-5c42a230b7b468dff011f444161c0145b5efae59_GH0.tar.gz) = 59b61656a6629f27567d58fe9b62b4398358ff108e273fbe2646980df1ee46eb
+SIZE (madler-zlib-5c42a230b7b468dff011f444161c0145b5efae59_GH0.tar.gz) = 1573297
+SHA256 (glennrp-libpng-2b978915d82377df13fcbb1fb56660195ded868a_GH0.tar.gz) = fba1c8e793f01b493f3f47a926862edbfab487ae4240e02ec67131f1e2bf067f
+SIZE (glennrp-libpng-2b978915d82377df13fcbb1fb56660195ded868a_GH0.tar.gz) = 1583920
+SHA256 (webmproject-libwebm-f2a982d748b80586ae53b89a2e6ebbc305848b8c_GH0.tar.gz) = 796857525e8b02ee6725f83c5f1e435b01b6aa57aedbe3879a9057ad1d290bec
+SIZE (webmproject-libwebm-f2a982d748b80586ae53b89a2e6ebbc305848b8c_GH0.tar.gz) = 500823
+SHA256 (GNOME-libxml2-3d840e17858de03a09fba8b202e3a89267d5795a_GH0.tar.gz) = 0650a5977922cde948d237c8cd172d945ba2d6dcf285c443a9d975123aa6c724
+SIZE (GNOME-libxml2-3d840e17858de03a09fba8b202e3a89267d5795a_GH0.tar.gz) = 2961056
+SHA256 (protocolbuffers-protobuf-b6f9284da830b69be787732ffdaa35049d20a088_GH0.tar.gz) = 374166fe6f8f1178ef2d759262548eb7063bde83c2805f6db71c5fca87a9d87d
+SIZE (protocolbuffers-protobuf-b6f9284da830b69be787732ffdaa35049d20a088_GH0.tar.gz) = 6901563
+SHA256 (cesanta-mongoose-5c8e05a4fc34c5309ceea887a7e60b895b2100d7_GH0.tar.gz) = ec6ef00270ec031bb1e6ff6680e4876596af297c64d07b6cbff1e31509d086dd
+SIZE (cesanta-mongoose-5c8e05a4fc34c5309ceea887a7e60b895b2100d7_GH0.tar.gz) = 11170397
+SHA256 (c-ares-c-ares-d3a507e920e7af18a5efb7f9f1d8044ed4750013_GH0.tar.gz) = cd1968cd09d384a5c553c82bf53ba458e47e9bfcdc253a3627f1b36ea6f814e2
+SIZE (c-ares-c-ares-d3a507e920e7af18a5efb7f9f1d8044ed4750013_GH0.tar.gz) = 586644
+SHA256 (microsoft-mimalloc-4e50d6714d471b72b2285e25a3df6c92db944593_GH0.tar.gz) = 7da5f0915ef2cf40671da52601ba8f457bacf4a4af83404fe8566eb48c1e8c78
+SIZE (microsoft-mimalloc-4e50d6714d471b72b2285e25a3df6c92db944593_GH0.tar.gz) = 1166210
diff --git a/multimedia/shaka-packager/pkg-descr b/multimedia/shaka-packager/pkg-descr
new file mode 100644
index 000000000000..cff83f000cf0
--- /dev/null
+++ b/multimedia/shaka-packager/pkg-descr
@@ -0,0 +1,12 @@
+Shaka Packager is a media packaging SDK and tool for use with DASH and HLS
+playback. It can prepare and package media content for online streaming,
+supporting features such as:
+
+- Fragmented MP4, WebM, and MPEG-2 TS output
+- DASH and HLS manifest generation
+- Common Encryption (CENC) and key rotation
+- Integration with several DRM key servers (Widevine, PlayReady, Marlin,
+  FairPlay) and raw keys
+- Live and on-demand packaging
+
+The port installs the "packager" and "mpd_generator" command line tools.