1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-19 19:59:43 +00:00

multimedia/x265: update to 3.0

- Add SVTHEVC option, see http://x265.org/x265-svt-hevc-house/
- Drop libmd patch due to rebase churn for what little value it provides

Changes:	https://x265.readthedocs.io/en/latest/releasenotes.html#version-3-0
PR:		235906
Approved by:	maintainer timeout (2 weeks)
This commit is contained in:
Jan Beich 2019-03-10 17:10:56 +00:00
parent 8c5202b6db
commit 71bb197b3a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=495302
16 changed files with 94 additions and 67 deletions

View File

@ -3,7 +3,7 @@
PORTNAME= libbpg
PORTVERSION= 0.9.7
PORTREVISION= 6
PORTREVISION= 7
CATEGORIES= graphics
MASTER_SITES= http://bellard.org/bpg/

View File

@ -3,7 +3,7 @@
PORTNAME= libheif
DISTVERSIONPREFIX= v
DISTVERSION= 1.3.2
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= graphics
MAINTAINER= me@sebastiansteinmetz.ch

View File

@ -3,7 +3,7 @@
PORTNAME= avidemux
PORTVERSION= ${AVIDEMUX_VERSION}
PORTREVISION= 11
PORTREVISION= 12
CATEGORIES= multimedia
PKGNAMESUFFIX= -plugins

View File

@ -3,7 +3,7 @@
PORTNAME= ccextractor
DISTVERSIONPREFIX= v
DISTVERSION= 0.85
PORTREVISION= 10
PORTREVISION= 11
CATEGORIES= multimedia
MAINTAINER= oz@nixil.net

View File

@ -3,7 +3,7 @@
PORTNAME= cinelerra-gg
DISTVERSION= 5.1-20180714
DISTVERSIONSUFFIX= -${REV:C/(.......).*/\1/}
PORTREVISION= 6
PORTREVISION= 7
CATEGORIES= multimedia
MASTER_SITES= https://git.cinelerra-cv.org/gitweb?p=goodguy/cinelerra.git;a=snapshot;h=${REV};sf=tgz;dummy=/ # tarballs are @ https://cinelerra-cv.org/five/pkgs/src/

View File

@ -3,7 +3,7 @@
PORTNAME= ffmpeg
PORTVERSION= 4.1.1
PORTREVISION= 5
PORTREVISION= 6
PORTEPOCH= 1
CATEGORIES= multimedia audio ipv6 net
MASTER_SITES= https://ffmpeg.org/releases/

View File

@ -1,6 +1,6 @@
# $FreeBSD$
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= multimedia
COMMENT= GStreamer libx265 based H265 plugin

View File

@ -3,7 +3,7 @@
PORTNAME= vlc
DISTVERSION= 3.0.6
PORTREVISION= 6
PORTREVISION= 7
PORTEPOCH= 4
CATEGORIES= multimedia audio ipv6 net www
MASTER_SITES= http://download.videolan.org/pub/videolan/${PORTNAME}/${DISTVERSION:S/a$//}/ \

View File

@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= x265
PORTVERSION= 2.8
PORTREVISION= 2
PORTVERSION= 3.0
CATEGORIES= multimedia
MASTER_SITES= https://downloads.videolan.org/pub/videolan/x265/ \
https://mirror.leaseweb.com/videolan/x265/ \
@ -12,7 +11,7 @@ MASTER_SITES= https://downloads.videolan.org/pub/videolan/x265/ \
DISTNAME= ${PORTNAME}_${PORTVERSION}
PATCH_SITES= http://hg.videolan.org/${PORTNAME}/raw-rev/
PATCHFILES= 450421921079:-p2
PATCHFILES+= 878541319ea1:-p1 a41325fc854f:-p1 # SVT-HEVC
MAINTAINER= mi@aldan.algebra.com
COMMENT= H.265/High Efficiency Video Coding (HEVC) format
@ -25,7 +24,7 @@ BUILD_DEPENDS= nasm:devel/nasm
USES= cmake compiler:c++14-lang pathfix
OPTIONS_DEFINE= DEBUG OPTIMIZED_FLAGS
OPTIONS_DEFINE_amd64= HI10P HI12P
OPTIONS_DEFINE_amd64= HI10P HI12P SVTHEVC
DEBUG_PREVENTS= OPTIMIZED_FLAGS
DEBUG_PREVENTS_MSG= Optimizations are incompatible with debugging code
@ -34,18 +33,23 @@ HI10P_CMAKE_BOOL= HIGH_BIT_DEPTH
HI12P_CMAKE_BOOL= MAIN12
HI12P_IMPLIES= HI10P
OPTIMIZED_FLAGS_VARS= CFLAGS+=-O3 CXXFLAGS+=-O3
SVTHEVC_LIB_DEPENDS= libSvtHevcEnc.so:multimedia/svt-hevc
SVTHEVC_CMAKE_BOOL= ENABLE_SVT_HEVC
SVTHEVC_CMAKE_ON= -DSVT_HEVC_INCLUDE_DIR:PATH="${LOCALBASE}/include/svt-hevc"
DEBUG_DESC= Enable debugging
HI10P_DESC= Enable HI10P Support (64-bit only)
HI12P_DESC= Enable HI12P Support (64-bit only)
OPTIMIZED_FLAGS_DESC= Enable O3 optimization
SVTHEVC_DESC= HEVC encoding via SVT-HEVC
USE_LDCONFIG= yes
CMAKE_ARGS= -DENABLE_PIC=on -DPLATFORM_LIBS=md -DENABLE_TESTS=on
CMAKE_ARGS= -DENABLE_PIC=on -DENABLE_TESTS=on
CFLAGS_mips= -DNO_ATOMICS # cannot use lang/gcc
CFLAGS_mips64= -DNO_ATOMICS # cannot use lang/gcc
LDFLAGS_i386= -Wl,-znotext
EXTRACT_AFTER_ARGS+= --exclude "md5*" --exclude compat
EXTRACT_AFTER_ARGS+= --exclude compat
PATCH_WRKSRC= ${WRKSRC:H}
WRKSRC= ${WRKDIR}/${PORTNAME}_${PORTVERSION}/source
do-test:

View File

@ -1,5 +1,7 @@
TIMESTAMP = 1531665864
SHA256 (x265_2.8.tar.gz) = 6e59f9afc0c2b87a46f98e33b5159d56ffb3558a49d8e3d79cb7fdc6b7aaa863
SIZE (x265_2.8.tar.gz) = 1379551
SHA256 (450421921079) = 015d99bbcc60e184293cd86879f54d6f78559c9ff2cda32c5ad54e6113bc7fca
SIZE (450421921079) = 703
TIMESTAMP = 1548236838
SHA256 (x265_3.0.tar.gz) = c5b9fc260cabbc4a81561a448f4ce9cad7218272b4011feabc3a6b751b2f0662
SIZE (x265_3.0.tar.gz) = 1398519
SHA256 (878541319ea1) = cb135430143d4d0df4e1d7e5b9d7994f0b6279796f44f7b8b6e5159c00c92768
SIZE (878541319ea1) = 86799
SHA256 (a41325fc854f) = 5fb5a2d97cecf9920f5800364534f56584dbf805f1e215de9dbdeca025eb3ec8
SIZE (a41325fc854f) = 912

View File

@ -1,13 +0,0 @@
See:
https://bitbucket.org/multicoreware/x265/issues/422
--- common/pixel.cpp 2018-05-21 08:33:10 UTC
+++ common/pixel.cpp 2018-08-05 21:57:26 UTC
@@ -923,5 +923,5 @@
{
for (int i = 0; i < count; i++)
- dst[i] = (uint16_t)(src[i] * 256.0);
+ dst[i] = (int16_t)(src[i] * 256.0);
}

View File

@ -1,33 +0,0 @@
Use FreeBSD's MD5-implementation instead of yet another bundled one.
-mi
--- common/CMakeLists.txt 2016-01-25 00:16:50.000000000 -0500
+++ common/CMakeLists.txt 2016-02-02 17:57:52.620700000 -0500
@@ -109,5 +109,4 @@
threadpool.cpp threadpool.h
wavefront.h wavefront.cpp
- md5.cpp md5.h
bitstream.h bitstream.cpp
yuv.cpp yuv.h
--- common/picyuv.h 2016-01-25 00:16:50.000000000 -0500
+++ common/picyuv.h 2016-02-02 21:52:24.690114000 -0500
@@ -25,6 +25,8 @@
#define X265_PICYUV_H
+#include <sys/types.h>
+#include <md5.h>
+
#include "common.h"
-#include "md5.h"
#include "x265.h"
--- encoder/frameencoder.cpp 2016-01-25 00:16:50.000000000 -0500
+++ encoder/frameencoder.cpp 2016-02-02 18:06:58.918647000 -0500
@@ -667,5 +667,5 @@
m_seiReconPictureDigest.m_method = SEIDecodedPictureHash::MD5;
for (int i = 0; i < planes; i++)
- MD5Final(&m_state[i], m_seiReconPictureDigest.m_digest[i]);
+ MD5Final(m_seiReconPictureDigest.m_digest[i], &m_state[i]);
}
else if (m_param->decodedPictureHashSEI == 2)

View File

@ -0,0 +1,22 @@
===> Checking for items in STAGEDIR missing from pkg-plist
Error: Orphaned: bin/libSvtHevcEnc.so
Error: Orphaned: include/EbApi.h
Error: Orphaned: include/EbErrorCodes.h
Error: Orphaned: include/EbTime.h
--- source/CMakeLists.txt.orig 2019-01-23 09:47:18 UTC
+++ source/CMakeLists.txt
@@ -570,13 +570,6 @@ if(ENABLE_HDR10_PLUS)
ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
endif()
-if(SVTHEVC_FOUND)
- install(FILES "${SVT_HEVC_INCLUDE_DIR}/EbApi.h" DESTINATION include)
- install(FILES "${SVT_HEVC_INCLUDE_DIR}/EbErrorCodes.h" DESTINATION include)
- install(FILES "${SVT_HEVC_INCLUDE_DIR}/EbTime.h" DESTINATION include)
- install(FILES "${SVT_HEVC_LIBRARY}" DESTINATION ${BIN_INSTALL_DIR})
-endif()
-
install(FILES x265.h "${PROJECT_BINARY_DIR}/x265_config.h" DESTINATION include)
if((WIN32 AND ENABLE_CLI) OR (WIN32 AND ENABLE_SHARED))
if(MSVC_IDE)

View File

@ -0,0 +1,45 @@
source/encoder/api.cpp:432:17: error: cannot jump from this
goto statement to its label
goto fail;
^
source/encoder/api.cpp:436:36: note: jump bypasses variable
initialization
EB_H265_ENC_CONFIGURATION* svtParam = (EB_H265_ENC_CONFIGURATION*)encoder->m_svtAppData->svtHevcParams;
^
source/encoder/api.cpp:413:17: error: cannot jump from this
goto statement to its label
goto fail;
^
source/encoder/api.cpp:436:36: note: jump bypasses variable
initialization
EB_H265_ENC_CONFIGURATION* svtParam = (EB_H265_ENC_CONFIGURATION*)encoder->m_svtAppData->svtHevcParams;
^
source/encoder/api.cpp:406:21: error: cannot jump from this
goto statement to its label
goto fail;
^
source/encoder/api.cpp:436:36: note: jump bypasses variable
initialization
EB_H265_ENC_CONFIGURATION* svtParam = (EB_H265_ENC_CONFIGURATION*)encoder->m_svtAppData->svtHevcParams;
^
3 errors generated.
--- source/encoder/api.cpp.orig 2019-01-23 09:47:18 UTC
+++ source/encoder/api.cpp
@@ -355,6 +355,7 @@ int x265_encoder_encode(x265_encoder *enc, x265_nal **
static unsigned char picSendDone = 0;
numEncoded = 0;
static int codedNal = 0, eofReached = 0;
+ EB_H265_ENC_CONFIGURATION* svtParam = NULL;
if (encoder->m_param->bEnableSvtHevc)
{
@@ -433,7 +434,7 @@ int x265_encoder_encode(x265_encoder *enc, x265_nal **
}
}
- EB_H265_ENC_CONFIGURATION* svtParam = (EB_H265_ENC_CONFIGURATION*)encoder->m_svtAppData->svtHevcParams;
+ svtParam = (EB_H265_ENC_CONFIGURATION*)encoder->m_svtAppData->svtHevcParams;
if (eofReached && svtParam->codeEosNal == 0 && !codedNal)
{
EB_BUFFERHEADERTYPE *outputStreamPtr = 0;

View File

@ -3,5 +3,5 @@ include/x265.h
include/x265_config.h
lib/libx265.a
lib/libx265.so
lib/libx265.so.160
lib/libx265.so.170
libdata/pkgconfig/x265.pc

View File

@ -2,7 +2,7 @@
PORTNAME= xpra
PORTVERSION= 2.4.3
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= x11
MASTER_SITES= http://xpra.org/src/