# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= gstreamer1-plugins-x265 VERSION= 1.24.9 KEYWORDS= multimedia VARIANTS= std SDESC[std]= GStreamer1 H.265 video encoder plugin HOMEPAGE= https://gstreamer.freedesktop.org/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= https://gstreamer.freedesktop.org/src/gst-plugins-bad/ DISTFILE[1]= gst-plugins-bad-1.24.9.tar.xz:main DF_INDEX= 1 SPKGS[std]= single OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILD_DEPENDS= gstreamer1:dev:std gstreamer1-plugins-base:dev:std gstreamer1-plugins-bad:primary:std x265:dev:std BUILDRUN_DEPENDS= gstreamer1-plugins-base:primary:std gstreamer1:primary:std x265:primary:std USES= cpe gmake pkgconfig meson GNOME_COMPONENTS= glib DISTNAME= gst-plugins-bad-1.24.9 LICENSE= LGPL20+:single LICENSE_TERMS= single:{{WRKDIR}}/TERMS LICENSE_FILE= LGPL20+:{{WRKSRC}}/COPYING LICENSE_AWK= TERMS:"^$$" LICENSE_SOURCE= TERMS:{{WRKSRC}}/ext/x265/gstx265enc.h LICENSE_SCHEME= solo CPE_PRODUCT= gst-plugins-bad CPE_VENDOR= freedesktop FPC_EQUIVALENT= multimedia/gstreamer1-plugins-x265 MESON_ARGS= -Daccurip=disabled -Dadpcmdec=disabled -Dadpcmenc=disabled -Daiff=disabled -Dasfmux=disabled -Daudiobuffersplit=disabled -Daudiofxbad=disabled -Daudiolatency=disabled -Daudiomixmatrix=disabled -Daudiovisualizers=disabled -Dautoconvert=disabled -Dbayer=disabled -Dcamerabin2=disabled -Dcoloreffects=disabled -Ddebugutils=disabled -Ddvbsubenc=disabled -Ddvbsuboverlay=disabled -Ddvdspu=disabled -Dfaceoverlay=disabled -Dfestival=disabled -Dfieldanalysis=disabled -Dfreeverb=disabled -Dfrei0r=disabled -Dgaudieffects=disabled -Dgdp=disabled -Dgeometrictransform=disabled -Did3tag=disabled -Dinter=disabled -Dinterlace=disabled -Divfparse=disabled -Divtc=disabled -Djp2kdecimator=disabled -Djpegformat=disabled -Dlibrfb=disabled -Dmidi=disabled -Dmpegdemux=disabled -Dmpegpsmux=disabled -Dmpegtsdemux=disabled -Dmpegtsmux=disabled -Dmxf=disabled -Dnetsim=disabled -Donvif=disabled -Dpcapparse=disabled -Dpnm=disabled -Dproxy=disabled -Drawparse=disabled -Dremovesilence=disabled -Drist=disabled -Drtmp2=disabled -Drtp=disabled -Dsdp=disabled -Dsegmentclip=disabled -Dsiren=disabled -Dsmooth=disabled -Dspeed=disabled -Dsubenc=disabled -Dswitchbin=disabled -Dtimecode=disabled -Dvideofilters=disabled -Dvideoframe_audiolevel=disabled -Dvideoparsers=disabled -Dvideosignal=disabled -Dvmnc=disabled -Dy4m=disabled -Dqsv=disabled -Dbz2=disabled -Dipcpipeline=disabled -Ddash=disabled -Dhls=disabled -Dbluez=disabled -Dbs2b=disabled -Dchromaprint=disabled -Dclosedcaption=disabled -Dcolormanagement=disabled -Dcurl=disabled -Dcurl-ssh2=disabled -Dd3dvideosink=disabled -Dd3d11=disabled -Ddc1394=disabled -Ddecklink=disabled -Ddirectfb=disabled -Ddirectsound=disabled -Ddtls=disabled -Ddts=disabled -Ddvb=disabled -Dfaac=disabled -Dfaad=disabled -Dfbdev=disabled -Dfdkaac=disabled -Dflite=disabled -Dfluidsynth=disabled -Dgl=disabled -Dgme=disabled -Dgsm=disabled -Diqa=disabled -Dkms=disabled -Dladspa=disabled -Dlibde265=disabled -Dlv2=disabled -Dmediafoundation=disabled -Dmicrodns=disabled -Dmodplug=disabled -Dmpeg2enc=disabled -Dmplex=disabled -Dmsdk=disabled -Dmusepack=disabled -Dneon=disabled -Dnvcodec=disabled -Dopenal=disabled -Dopenexr=disabled -Dopenh264=disabled -Dopenjpeg=disabled -Dopenmpt=disabled -Dopenni2=disabled -Dopensles=disabled -Dopus=disabled -Dresindvd=disabled -Drsvg=disabled -Drtmp=disabled -Dsbc=disabled -Dsctp=disabled -Dsctp-internal-usrsctp=disabled -Dshm=disabled -Dsmoothstreaming=disabled -Dsndfile=disabled -Dsoundtouch=disabled -Dspandsp=disabled -Dsrt=disabled -Dsrtp=disabled -Dsvthevcenc=disabled -Dteletext=disabled -Dtinyalsa=disabled -Dtranscode=disabled -Dttml=disabled -Duvch264=disabled -Dva=disabled -Dvoaacenc=disabled -Dvoamrwbenc=disabled -Dvulkan=disabled -Dwasapi=disabled -Dwasapi2=disabled -Dwebp=disabled -Dwebrtc=disabled -Dwebrtcdsp=disabled -Dwildmidi=disabled -Dwinks=disabled -Dwinscreencap=disabled -Dx265=enabled -Dzbar=disabled -Dzxing=disabled -Dwpe=disabled -Dmagicleap=disabled -Dv4l2codecs=disabled -Ddoc=disabled -Dnls=disabled -Dexamples=disabled -Dtests=disabled -Dorc=disabled -Dcodecalpha=disabled -Dgpl=enabled -Dcodectimestamper=disabled -Dqt6d3d11=disabled -Dunixfd=disabled -Dinsertbin=disabled -Donnx=disabled -Dmse=disabled -Dopencv=disabled PLIST_SUB= GSTVER=1.0 PLUGIN=x265 post-install: ${RM} ${STAGEDIR}${PREFIX}/lib/pkgconfig/gstreamer-plugins-bad-1.0.pc pre-configure: ${REINPLACE_CMD} \ -e "/subdir..gst-libs../d" \ -e "/subdir..tools../d" \ -e "/subdir..data../d" \ ${WRKSRC}/meson.build ${REINPLACE_CMD} -e "/subdir..wayland../d" \ ${WRKSRC}/ext/meson.build ${REINPLACE_CMD} -e "s/not gstva_dep.found()/true/" \ ${WRKSRC}/sys/va/meson.build [FILE:54:descriptions/desc.single] This package contains the H.265 video encoder plugin. [FILE:108:distinfo] 36fcf7a9af0a753b43bb03b9835246f74d72f7124369e66a1e2dc7b04f5a5cab 7075040 gst-plugins-bad-1.24.9.tar.xz [FILE:45:manifests/plist.single] lib/gstreamer-%%GSTVER%%/libgst%%PLUGIN%%.so [FILE:399:patches/patch-ext_webrtc_meson.build] --- ext/webrtc/meson.build.orig 2023-11-13 11:04:22 UTC +++ ext/webrtc/meson.build @@ -12,6 +12,7 @@ webrtc_sources = [ 'webrtcdatachannel.c', ] +libgstwebrtcnice_dep = cc.find_library ('gstwebrtcnice-1.0', required : false) webrtc_option = get_option('webrtc').require( libgstwebrtcnice_dep.found(), error_message: 'webrtc plugin requires libgstwebrtcnice.') if webrtc_option.disabled() [FILE:3212:patches/patch-fix-x265] From 63c4b1950e9613613ad22e88f0196d620e2dfed4 Mon Sep 17 00:00:00 2001 From: Timo Gurr Date: Wed, 2 Oct 2024 09:29:02 +0200 Subject: [PATCH] x265: Fix build against x265 4.0 Fixes #3808. --- .../gst-plugins-bad/ext/x265/gstx265enc.c | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) --- ext/x265/gstx265enc.c.orig +++ ext/x265/gstx265enc.c @@ -1514,7 +1514,13 @@ gst_x265_enc_encode_frame (GstX265Enc * encoder, x265_picture * pic_in, { GstVideoCodecFrame *frame = NULL; GstBuffer *out_buf = NULL; +#if (X265_BUILD >= 210) && (X265_BUILD < 213) + x265_picture pic_layers_out[MAX_SCALABLE_LAYERS]; + x265_picture *pic_lyrptr_out[MAX_SCALABLE_LAYERS]; + x265_picture *pic_out; +#else x265_picture pic_out; +#endif x265_nal *nal; int i_size, i, offset; int encoder_return; @@ -1549,8 +1555,16 @@ gst_x265_enc_encode_frame (GstX265Enc * encoder, x265_picture * pic_in, if (G_UNLIKELY (update_latency)) gst_x265_enc_set_latency (encoder); +#if (X265_BUILD >= 210) && (X265_BUILD < 213) + for (i = 0; i < MAX_SCALABLE_LAYERS; i++) + pic_lyrptr_out[i] = &pic_layers_out[i]; + + encoder_return = api->encoder_encode (encoder->x265enc, + &nal, i_nal, pic_in, pic_lyrptr_out); +#else encoder_return = api->encoder_encode (encoder->x265enc, &nal, i_nal, pic_in, &pic_out); +#endif GST_DEBUG_OBJECT (encoder, "encoder result (%d) with %u nal units", encoder_return, *i_nal); @@ -1575,12 +1589,21 @@ gst_x265_enc_encode_frame (GstX265Enc * encoder, x265_picture * pic_in, } frame = gst_video_encoder_get_frame (GST_VIDEO_ENCODER (encoder), +#if (X265_BUILD >= 210) && (X265_BUILD < 213) + GPOINTER_TO_INT (pic_out->userData)); +#else GPOINTER_TO_INT (pic_out.userData)); +#endif g_assert (frame || !send); GST_DEBUG_OBJECT (encoder, +#if (X265_BUILD >= 210) && (X265_BUILD < 213) + "output picture ready POC=%d system=%d frame found %d", pic_out->poc, + GPOINTER_TO_INT (pic_out->userData), frame != NULL); +#else "output picture ready POC=%d system=%d frame found %d", pic_out.poc, GPOINTER_TO_INT (pic_out.userData), frame != NULL); +#endif if (!send || !frame) { GST_LOG_OBJECT (encoder, "not sending (%d) or frame not found (%d)", send, @@ -1599,7 +1622,11 @@ gst_x265_enc_encode_frame (GstX265Enc * encoder, x265_picture * pic_in, offset += nal[i].sizeBytes; } +#if (X265_BUILD >= 210) && (X265_BUILD < 213) + if (pic_out->sliceType == X265_TYPE_IDR || pic_out->sliceType == X265_TYPE_I) { +#else if (pic_out.sliceType == X265_TYPE_IDR || pic_out.sliceType == X265_TYPE_I) { +#endif GST_VIDEO_CODEC_FRAME_SET_SYNC_POINT (frame); } @@ -1615,9 +1642,15 @@ gst_x265_enc_encode_frame (GstX265Enc * encoder, x265_picture * pic_in, GST_LOG_OBJECT (encoder, "output: dts %" G_GINT64_FORMAT " pts %" G_GINT64_FORMAT, +#if (X265_BUILD >= 210) && (X265_BUILD < 213) + (gint64) pic_out->dts, (gint64) pic_out->pts); + + frame->dts = pic_out->dts + encoder->dts_offset; +#else (gint64) pic_out.dts, (gint64) pic_out.pts); frame->dts = pic_out.dts + encoder->dts_offset; +#endif out: if (frame) { -- GitLab [FILE:251:patches/patch-sys_va_meson.build] --- sys/va/meson.build.orig 2024-03-21 20:47:53 UTC +++ sys/va/meson.build @@ -34,7 +34,7 @@ va_win32_sources = [ 'gstvadevice_win32.cpp' ] -if host_system not in ['linux', 'windows'] +if host_system not in ['windows'] subdir_done() endif