git: 6c0042253d43 - main - multimedia/asdcplib: New port: Library and tools for working with MXF and DCP files

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

URL: https://cgit.FreeBSD.org/ports/commit/?id=6c0042253d431192d82f3511fa45609b9a841830

commit 6c0042253d431192d82f3511fa45609b9a841830
Author:     Jimmy Olgeni <olgeni@FreeBSD.org>
AuthorDate: 2026-07-08 22:41:31 +0000
Commit:     Jimmy Olgeni <olgeni@FreeBSD.org>
CommitDate: 2026-07-09 20:46:17 +0000

    multimedia/asdcplib: New port: Library and tools for working with MXF and DCP files
    
    AS-DCP Lib implements the SMPTE and MXF Interop standards used to package
    Digital Cinema (DCP) and IMF essence, providing the libkumu and libasdcp
    libraries plus a set of wrap/unwrap/info command line utilities.  Optional
    support for AS-02 (IMF), JPEG XS and P-HDR is available via options.
    
    This port was previously removed in 2019 and is reintroduced against the
    current upstream at https://github.com/cinecert/asdcplib.
---
 multimedia/Makefile           |  1 +
 multimedia/asdcplib/Makefile  | 41 ++++++++++++++++++++++++
 multimedia/asdcplib/distinfo  |  3 ++
 multimedia/asdcplib/pkg-descr |  9 ++++++
 multimedia/asdcplib/pkg-plist | 72 +++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 126 insertions(+)

diff --git a/multimedia/Makefile b/multimedia/Makefile
index 8edc571e4a8a..fe0285e456ec 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -8,6 +8,7 @@
     SUBDIR += aravis
     SUBDIR += arcan
     SUBDIR += aribb24
+    SUBDIR += asdcplib
     SUBDIR += assimp
     SUBDIR += atomicparsley
     SUBDIR += audacious
diff --git a/multimedia/asdcplib/Makefile b/multimedia/asdcplib/Makefile
new file mode 100644
index 000000000000..79a1a0c2e281
--- /dev/null
+++ b/multimedia/asdcplib/Makefile
@@ -0,0 +1,41 @@
+PORTNAME=	asdcplib
+DISTVERSION=	2.13.2
+CATEGORIES=	multimedia
+
+MAINTAINER=	olgeni@FreeBSD.org
+COMMENT=	Library and tools for working with MXF and DCP files
+WWW=		https://github.com/cinecert/asdcplib
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+LIB_DEPENDS=	libexpat.so:textproc/expat2
+
+USES=		autoreconf compiler:c++11-lang gmake libtool pathfix ssl
+USE_GITHUB=	yes
+GH_ACCOUNT=	cinecert
+GH_TAGNAME=	rel_${DISTVERSION:S/./_/g}
+USE_LDCONFIG=	yes
+
+GNU_CONFIGURE=	yes
+CONFIGURE_ARGS=	--enable-dev-headers \
+		--with-expat=${LOCALBASE} \
+		--with-openssl=${OPENSSLBASE}
+INSTALL_TARGET=	install-strip
+
+PLIST_SUB=	LIBVER=${DISTVERSION}
+
+OPTIONS_DEFINE=		AS02 JXS PHDR
+OPTIONS_DEFAULT=	AS02
+OPTIONS_SUB=		yes
+
+AS02_DESC=	SMPTE ST 2067-5 (AS-02 / IMF) support
+JXS_DESC=	JPEG XS file wrapping support
+PHDR_DESC=	Prototype for High Dynamic Range (P-HDR) support
+
+AS02_CONFIGURE_ENABLE=	as-02
+JXS_CONFIGURE_ENABLE=	asdcp-jxs
+PHDR_IMPLIES=	AS02
+PHDR_CONFIGURE_ENABLE=	phdr
+
+.include <bsd.port.mk>
diff --git a/multimedia/asdcplib/distinfo b/multimedia/asdcplib/distinfo
new file mode 100644
index 000000000000..3bb79d9e247e
--- /dev/null
+++ b/multimedia/asdcplib/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1783549900
+SHA256 (cinecert-asdcplib-2.13.2-rel_2_13_2_GH0.tar.gz) = ee40998f737d5751cf9157c4c416f2ef4f63fc5bdae579afefbb91a3265e6039
+SIZE (cinecert-asdcplib-2.13.2-rel_2_13_2_GH0.tar.gz) = 443888
diff --git a/multimedia/asdcplib/pkg-descr b/multimedia/asdcplib/pkg-descr
new file mode 100644
index 000000000000..75ee4fc00a6e
--- /dev/null
+++ b/multimedia/asdcplib/pkg-descr
@@ -0,0 +1,9 @@
+AS-DCP Lib is a library and set of command line tools that implement the
+SMPTE and MXF Interop standards used to package Digital Cinema (DCP) and
+IMF essence.
+
+It provides the libkumu platform-compatibility layer, the libasdcp library
+for SMPTE ST 429 and JPEG Interop DCP track files, and optional support for
+SMPTE ST 2067-5 (AS-02 / IMF) and JPEG XS wrapping.  Companion utilities such
+as asdcp-wrap, asdcp-unwrap, asdcp-info, as-02-wrap and as-02-unwrap read,
+write and inspect these files.
diff --git a/multimedia/asdcplib/pkg-plist b/multimedia/asdcplib/pkg-plist
new file mode 100644
index 000000000000..0beb4308c192
--- /dev/null
+++ b/multimedia/asdcplib/pkg-plist
@@ -0,0 +1,72 @@
+%%AS02%%bin/as-02-info
+%%AS02%%bin/as-02-unwrap
+%%AS02%%bin/as-02-wrap
+%%AS02%%bin/as-02-wrap-iab
+%%AS02%%bin/as-02-wrap-jxs
+bin/asdcp-info
+bin/asdcp-test
+bin/asdcp-unwrap
+bin/asdcp-util
+bin/asdcp-wrap
+bin/blackwave
+bin/j2c-test
+bin/klvsplit
+bin/klvwalk
+bin/kmfilegen
+bin/kmrandgen
+bin/kmuuidgen
+%%PHDR%%bin/phdr-unwrap
+%%PHDR%%bin/phdr-wrap
+bin/pinkwave
+bin/wavesplit
+%%AS02%%include/AS_02.h
+%%AS02%%include/AS_02_ACES.h
+%%AS02%%include/AS_02_IAB.h
+%%AS02%%include/AS_02_JXS.h
+%%PHDR%%include/AS_02_PHDR.h
+include/AS_DCP.h
+include/AS_DCP_DCData_internal.h
+include/AS_DCP_JXS.h
+include/AS_DCP_internal.h
+include/AtmosSyncChannel_Generator.h
+include/AtmosSyncChannel_Mixer.h
+include/JP2K.h
+include/JXS.h
+include/KLV.h
+include/KM_aes.h
+include/KM_error.h
+include/KM_fileio.h
+include/KM_log.h
+include/KM_memio.h
+include/KM_mutex.h
+include/KM_platform.h
+include/KM_prng.h
+include/KM_sha1.h
+include/KM_tai.h
+include/KM_util.h
+include/KM_xml.h
+include/MDD.h
+include/MXF.h
+include/MXFTypes.h
+include/Metadata.h
+include/PCMDataProviders.h
+include/PCMParserList.h
+include/S12MTimecode.h
+include/ST2095_PinkNoise.h
+include/SyncCommon.h
+include/SyncEncoder.h
+include/UUIDInformation.h
+include/Wav.h
+include/WavFileWriter.h
+%%AS02%%lib/libas02-%%LIBVER%%.so
+%%AS02%%lib/libas02.a
+%%AS02%%lib/libas02.so
+lib/libasdcp-%%LIBVER%%.so
+lib/libasdcp.a
+lib/libasdcp.so
+lib/libkumu-%%LIBVER%%.so
+lib/libkumu.a
+lib/libkumu.so
+%%PHDR%%lib/libphdr-%%LIBVER%%.so
+%%PHDR%%lib/libphdr.a
+%%PHDR%%lib/libphdr.so