From owner-svn-ports-all@freebsd.org Wed Dec 16 02:48:06 2020 Return-Path: Delivered-To: svn-ports-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5E4894AC9B5; Wed, 16 Dec 2020 02:48:06 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Cwfgp26Klz3n5B; Wed, 16 Dec 2020 02:48:06 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 307061EA62; Wed, 16 Dec 2020 02:48:06 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 0BG2m6J2035114; Wed, 16 Dec 2020 02:48:06 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 0BG2m4cQ035104; Wed, 16 Dec 2020 02:48:04 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <202012160248.0BG2m4cQ035104@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Wed, 16 Dec 2020 02:48:04 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r558199 - in head: audio/mythplugin-mythmusic multimedia/mythtv multimedia/mythtv-frontend multimedia/mythtv/files X-SVN-Group: ports-head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in head: audio/mythplugin-mythmusic multimedia/mythtv multimedia/mythtv-frontend multimedia/mythtv/files X-SVN-Commit-Revision: 558199 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Dec 2020 02:48:06 -0000 Author: kevans Date: Wed Dec 16 02:48:03 2020 New Revision: 558199 URL: https://svnweb.freebsd.org/changeset/ports/558199 Log: multimedia/mythtv: update to 31.0 - Upgrade multimedia/mythtv and multimedia/mythtv-frontend from 30 to 31.0 - Bumps python to 3.5+ - Uses ffmpeg 4.3.1 so CVE-2016-10191 no longer applies - Configuration options changed to reflect update Release notes: https://www.mythtv.org/wiki/Release_Notes_-_31 audio/mythplugin-mythmusic also bumped as a reverse dep. Pass maintainership of multimedia/mythtv* to submitter. PR: 249484 Submitted by: Alan Hicks Added: head/multimedia/mythtv/files/audio.h (contents, props changed) head/multimedia/mythtv/files/ca.h (contents, props changed) head/multimedia/mythtv/files/dmx.h (contents, props changed) head/multimedia/mythtv/files/frontend.h (contents, props changed) head/multimedia/mythtv/files/net.h (contents, props changed) head/multimedia/mythtv/files/osd.h (contents, props changed) head/multimedia/mythtv/files/version.h (contents, props changed) head/multimedia/mythtv/files/video.h (contents, props changed) Deleted: head/multimedia/mythtv/files/patch-CVE-2016-10191 head/multimedia/mythtv/files/patch-configure head/multimedia/mythtv/files/patch-external_FFmpeg_libavformat_rtsp.c head/multimedia/mythtv/files/patch-external_libmythdvdnav_dvdnav_dvdnav_dvdnav.h head/multimedia/mythtv/files/patch-libs_libmythmetadata_imagemetadata.cpp head/multimedia/mythtv/files/patch-libs_libmythtv_DVD_dvdringbuffer.h head/multimedia/mythtv/files/patch-libs_libmythtv_videodev2.h Modified: head/audio/mythplugin-mythmusic/Makefile head/audio/mythplugin-mythmusic/distinfo head/audio/mythplugin-mythmusic/pkg-plist head/multimedia/mythtv-frontend/Makefile head/multimedia/mythtv-frontend/pkg-plist head/multimedia/mythtv/Makefile head/multimedia/mythtv/distinfo head/multimedia/mythtv/pkg-plist Modified: head/audio/mythplugin-mythmusic/Makefile ============================================================================== --- head/audio/mythplugin-mythmusic/Makefile Wed Dec 16 02:02:25 2020 (r558198) +++ head/audio/mythplugin-mythmusic/Makefile Wed Dec 16 02:48:03 2020 (r558199) @@ -3,8 +3,7 @@ PORTNAME= mythmusic DISTVERSIONPREFIX= v -DISTVERSION= 30.0 -PORTREVISION= 1 +DISTVERSION= 31.0 CATEGORIES= audio PKGNAMEPREFIX= mythplugin- @@ -18,7 +17,7 @@ LIB_DEPENDS= libFLAC.so:audio/flac \ libmp3lame.so:audio/lame \ libogg.so:audio/libogg \ libvorbis.so:audio/libvorbis \ - libmyth-30.so:multimedia/mythtv + libmyth-31.so:multimedia/mythtv USES= gmake qt:5 USE_GITHUB= yes Modified: head/audio/mythplugin-mythmusic/distinfo ============================================================================== --- head/audio/mythplugin-mythmusic/distinfo Wed Dec 16 02:02:25 2020 (r558198) +++ head/audio/mythplugin-mythmusic/distinfo Wed Dec 16 02:48:03 2020 (r558199) @@ -1,3 +1,3 @@ -TIMESTAMP = 1549080114 -SHA256 (MythTV-mythtv-v30.0_GH0.tar.gz) = 7f7ae9b8927659616f181afc12d7ddc26b0a4b0d13982e2586985f4770640b43 -SIZE (MythTV-mythtv-v30.0_GH0.tar.gz) = 101169041 +TIMESTAMP = 1607876879 +SHA256 (MythTV-mythtv-v31.0_GH0.tar.gz) = 907d1747950ec6ef1ec965069c75500b4538b781333f60e16d62d519b221a86d +SIZE (MythTV-mythtv-v31.0_GH0.tar.gz) = 102552136 Modified: head/audio/mythplugin-mythmusic/pkg-plist ============================================================================== --- head/audio/mythplugin-mythmusic/pkg-plist Wed Dec 16 02:02:25 2020 (r558198) +++ head/audio/mythplugin-mythmusic/pkg-plist Wed Dec 16 02:48:03 2020 (r558199) @@ -1,4 +1,5 @@ lib/mythtv/plugins/libmythmusic.so +%%MYTHSHARE%%/i18n/mythmusic_bg.qm %%MYTHSHARE%%/i18n/mythmusic_ca.qm %%MYTHSHARE%%/i18n/mythmusic_cs.qm %%MYTHSHARE%%/i18n/mythmusic_da.qm Modified: head/multimedia/mythtv-frontend/Makefile ============================================================================== --- head/multimedia/mythtv-frontend/Makefile Wed Dec 16 02:02:25 2020 (r558198) +++ head/multimedia/mythtv-frontend/Makefile Wed Dec 16 02:48:03 2020 (r558199) @@ -1,10 +1,9 @@ # Created by: Bernhard Froehlich # $FreeBSD$ -PORTREVISION= 2 PKGNAMESUFFIX= -${SLAVEPORT} -MAINTAINER= ports@FreeBSD.org +MAINTAINER= ahicks@p-o.co.uk COMMENT= Homebrew PVR project (frontend only) MASTERDIR= ${.CURDIR}/../../multimedia/mythtv Modified: head/multimedia/mythtv-frontend/pkg-plist ============================================================================== --- head/multimedia/mythtv-frontend/pkg-plist Wed Dec 16 02:02:25 2020 (r558198) +++ head/multimedia/mythtv-frontend/pkg-plist Wed Dec 16 02:48:03 2020 (r558199) @@ -25,7 +25,6 @@ include/mythtv/bonjourregister.h include/mythtv/bswap.h include/mythtv/compat.h include/mythtv/dbutil.h -include/mythtv/dialogbox.h include/mythtv/dvdnav/dvd_types.h include/mythtv/dvdnav/dvdnav.h include/mythtv/dvdnav/dvdnav_events.h @@ -114,6 +113,7 @@ include/mythtv/libavutil/fifo.h include/mythtv/libavutil/file.h include/mythtv/libavutil/frame.h include/mythtv/libavutil/hash.h +include/mythtv/libavutil/hdr_dynamic_metadata.h include/mythtv/libavutil/hmac.h include/mythtv/libavutil/hwcontext.h include/mythtv/libavutil/hwcontext_cuda.h @@ -160,6 +160,7 @@ include/mythtv/libavutil/timecode.h include/mythtv/libavutil/timestamp.h include/mythtv/libavutil/tree.h include/mythtv/libavutil/twofish.h +include/mythtv/libavutil/tx.h include/mythtv/libavutil/version.h include/mythtv/libavutil/xtea.h include/mythtv/libmyth/audioconvert.h @@ -167,17 +168,13 @@ include/mythtv/libmyth/audiooutput.h include/mythtv/libmyth/audiooutputsettings.h include/mythtv/libmyth/audiooutpututil.h include/mythtv/libmyth/audiosettings.h -include/mythtv/libmyth/dialogbox.h include/mythtv/libmyth/eldutils.h include/mythtv/libmyth/langsettings.h include/mythtv/libmyth/mythcontext.h -include/mythtv/libmyth/mythdialogs.h include/mythtv/libmyth/mythexp.h include/mythtv/libmyth/mythmediamonitor.h include/mythtv/libmyth/mythrssmanager.h include/mythtv/libmyth/mythterminal.h -include/mythtv/libmyth/mythwidgets.h -include/mythtv/libmyth/mythwizard.h include/mythtv/libmyth/netgrabbermanager.h include/mythtv/libmyth/netutils.h include/mythtv/libmyth/output.h @@ -331,7 +328,6 @@ include/mythtv/libmythui/mythmainwindow.h include/mythtv/libmythui/mythnotification.h include/mythtv/libmythui/mythnotificationcenter.h include/mythtv/libmythui/mythpainter.h -include/mythtv/libmythui/mythpainter_ogl.h include/mythtv/libmythui/mythpainter_qt.h include/mythtv/libmythui/mythprogressdialog.h include/mythtv/libmythui/mythrect.h @@ -430,7 +426,6 @@ include/mythtv/mythdb.h include/mythtv/mythdbcon.h include/mythtv/mythdbparams.h include/mythtv/mythdeque.h -include/mythtv/mythdialogs.h include/mythtv/mythdirs.h include/mythtv/mythdownloadmanager.h include/mythtv/mythevent.h @@ -460,8 +455,6 @@ include/mythtv/mythtranslation.h include/mythtv/mythtvexp.h include/mythtv/mythtypes.h include/mythtv/mythversion.h -include/mythtv/mythwidgets.h -include/mythtv/mythwizard.h include/mythtv/netgrabbermanager.h include/mythtv/netutils.h include/mythtv/output.h @@ -519,86 +512,78 @@ include/mythtv/verbosedefs.h include/mythtv/version.h include/mythtv/visual.h include/mythtv/volumebase.h -lib/libmyth-30.so -lib/libmyth-30.so.30 -lib/libmyth-30.so.30.0 -lib/libmyth-30.so.30.0.0 +lib/libmyth-31.so +lib/libmyth-31.so.31 +lib/libmyth-31.so.31.0 +lib/libmyth-31.so.31.0.0 lib/libmythavcodec.so lib/libmythavcodec.so.58 -lib/libmythavcodec.so.58.18.100 +lib/libmythavcodec.so.58.54.100 lib/libmythavdevice.so lib/libmythavdevice.so.58 -lib/libmythavdevice.so.58.3.100 +lib/libmythavdevice.so.58.8.100 lib/libmythavfilter.so lib/libmythavfilter.so.7 -lib/libmythavfilter.so.7.16.100 +lib/libmythavfilter.so.7.57.100 lib/libmythavformat.so lib/libmythavformat.so.58 -lib/libmythavformat.so.58.12.100 +lib/libmythavformat.so.58.29.100 lib/libmythavutil.so lib/libmythavutil.so.56 -lib/libmythavutil.so.56.14.100 -lib/libmythbase-30.so -lib/libmythbase-30.so.30 -lib/libmythbase-30.so.30.0 -lib/libmythbase-30.so.30.0.0 -lib/libmythfreemheg-30.so -lib/libmythfreemheg-30.so.30 -lib/libmythfreemheg-30.so.30.0 -lib/libmythfreemheg-30.so.30.0.0 -lib/libmythmetadata-30.so -lib/libmythmetadata-30.so.30 -lib/libmythmetadata-30.so.30.0 -lib/libmythmetadata-30.so.30.0.0 +lib/libmythavutil.so.56.31.100 +lib/libmythbase-31.so +lib/libmythbase-31.so.31 +lib/libmythbase-31.so.31.0 +lib/libmythbase-31.so.31.0.0 +lib/libmythfreemheg-31.so +lib/libmythfreemheg-31.so.31 +lib/libmythfreemheg-31.so.31.0 +lib/libmythfreemheg-31.so.31.0.0 +lib/libmythmetadata-31.so +lib/libmythmetadata-31.so.31 +lib/libmythmetadata-31.so.31.0 +lib/libmythmetadata-31.so.31.0.0 lib/libmythpostproc.so lib/libmythpostproc.so.55 -lib/libmythpostproc.so.55.1.100 -lib/libmythprotoserver-30.so -lib/libmythprotoserver-30.so.30 -lib/libmythprotoserver-30.so.30.0 -lib/libmythprotoserver-30.so.30.0.0 -lib/libmythservicecontracts-30.so -lib/libmythservicecontracts-30.so.30 -lib/libmythservicecontracts-30.so.30.0 -lib/libmythservicecontracts-30.so.30.0.0 +lib/libmythpostproc.so.55.5.100 +lib/libmythprotoserver-31.so +lib/libmythprotoserver-31.so.31 +lib/libmythprotoserver-31.so.31.0 +lib/libmythprotoserver-31.so.31.0.0 +lib/libmythservicecontracts-31.so +lib/libmythservicecontracts-31.so.31 +lib/libmythservicecontracts-31.so.31.0 +lib/libmythservicecontracts-31.so.31.0.0 lib/libmythswresample.so lib/libmythswresample.so.3 -lib/libmythswresample.so.3.1.100 +lib/libmythswresample.so.3.5.100 lib/libmythswscale.so lib/libmythswscale.so.5 -lib/libmythswscale.so.5.1.100 -lib/libmythtv-30.so -lib/libmythtv-30.so.30 -lib/libmythtv-30.so.30.0 -lib/libmythtv-30.so.30.0.0 -lib/libmythui-30.so -lib/libmythui-30.so.30 -lib/libmythui-30.so.30.0 -lib/libmythui-30.so.30.0.0 -lib/libmythupnp-30.so -lib/libmythupnp-30.so.30 -lib/libmythupnp-30.so.30.0 -lib/libmythupnp-30.so.30.0.0 -lib/mythtv/filters/libadjust.so -lib/mythtv/filters/libbobdeint.so -lib/mythtv/filters/libcrop.so -lib/mythtv/filters/libdenoise3d.so -lib/mythtv/filters/libfieldorder.so -lib/mythtv/filters/libforce.so -lib/mythtv/filters/libgreedyhdeint.so -lib/mythtv/filters/libinvert.so -lib/mythtv/filters/libivtc.so -lib/mythtv/filters/libkerneldeint.so -lib/mythtv/filters/liblinearblend.so -lib/mythtv/filters/libonefield.so -lib/mythtv/filters/libpostprocess.so -lib/mythtv/filters/libquickdnr.so -lib/mythtv/filters/libvflip.so -lib/mythtv/filters/libyadif.so +lib/libmythswscale.so.5.5.100 +lib/libmythtv-31.so +lib/libmythtv-31.so.31 +lib/libmythtv-31.so.31.0 +lib/libmythtv-31.so.31.0.0 +lib/libmythui-31.so +lib/libmythui-31.so.31 +lib/libmythui-31.so.31.0 +lib/libmythui-31.so.31.0.0 +lib/libmythupnp-31.so +lib/libmythupnp-31.so.31 +lib/libmythupnp-31.so.31.0 +lib/libmythupnp-31.so.31.0.0 %%DATADIR%%/CDS_scpd.xml %%DATADIR%%/CMGR_scpd.xml %%DATADIR%%/MFEXML_scpd.xml %%DATADIR%%/MSRR_scpd.xml +%%DATADIR%%/bindings/php/MythBackend.php +%%DATADIR%%/bindings/php/MythBase.php +%%DATADIR%%/bindings/php/MythFrontend.php +%%DATADIR%%/bindings/php/MythTV.php +%%DATADIR%%/bindings/php/MythTVChannel.php +%%DATADIR%%/bindings/php/MythTVProgram.php +%%DATADIR%%/bindings/php/MythTVRecording.php +%%DATADIR%%/bindings/php/MythTVStorageGroup.php %%DATADIR%%/fonts/DroidSans-Bold.ttf %%DATADIR%%/fonts/DroidSans.ttf %%DATADIR%%/fonts/DroidSansMono.ttf Modified: head/multimedia/mythtv/Makefile ============================================================================== --- head/multimedia/mythtv/Makefile Wed Dec 16 02:02:25 2020 (r558198) +++ head/multimedia/mythtv/Makefile Wed Dec 16 02:48:03 2020 (r558199) @@ -3,22 +3,17 @@ PORTNAME= mythtv DISTVERSIONPREFIX= v -DISTVERSION= 30.0 -PORTREVISION?= 6 +DISTVERSION= 31.0 PORTEPOCH= 1 CATEGORIES= multimedia -PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ -PATCHFILES+= aab7d3f065a7.patch:-p2 - -MAINTAINER?= ports@FreeBSD.org +MAINTAINER?= ahicks@p-o.co.uk COMMENT?= Homebrew PVR project LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING ONLY_FOR_ARCHS= amd64 i386 -BROKEN= fails to package .if ${/usr/bin/ld:L:tA} == /usr/bin/ld.lld BROKEN_i386= ld: error: can't create dynamic relocation R_386_32 against local symbol in readonly segment .endif @@ -35,7 +30,10 @@ LIB_DEPENDS= liblzo2.so:archivers/lzo2 \ libfftw3_threads.so:math/fftw3 \ libfftw3f.so:math/fftw3-float \ libfreetype.so:print/freetype2 \ - libxml2.so:textproc/libxml2 + libxml2.so:textproc/libxml2 \ + libdav1d.so:multimedia/dav1d \ + libaom.so:multimedia/aom \ + libdrm.so:graphics/libdrm BUILD_DEPENDS= yasm:devel/yasm \ ${LOCALBASE}/include/linux/input.h:devel/evdev-proto @@ -53,9 +51,7 @@ USE_XORG= x11 xv xrandr xxf86vm xinerama xext xcb HAS_CONFIGURE= yes CONFIGURE_ARGS= --prefix="${PREFIX}" --cc="${CC}" --cxx="${CXX}" \ --libxml2-path="${LOCALBASE}/include/libxml2" \ - --enable-opengl-video \ - --disable-audio-alsa --disable-indev=alsa \ - --disable-outdev=alsa + --disable-audio-alsa CONFIGURE_ENV= QMAKESPEC="${QMAKESPEC}" MOC="${MOC}" \ QTDIR="${PREFIX}" PKG_CONFIG_PATH="${LOCALBASE}/libdata/pkgconfig" MAKE_ENV= QTDIR="${PREFIX}" \ @@ -75,19 +71,18 @@ DESKTOP_ENTRIES="MythTV Frontend" "MythTV is a homebre CONFLICTS_INSTALL= mythtv CONFIGURE_ARGS+=--disable-dvb --disable-firewire --disable-hdhomerun \ - --disable-hdpvr --disable-ivtv --disable-v4l2 \ - --without-bindings=perl,python,php + --disable-hdpvr --disable-ivtv \ + --without-bindings=perl,python -EXTRA_PATCHES= ${FILESDIR}/extrapatch-programs_programs.pro +EXTRA_PATCHES= ${.CURDIR}/../../multimedia/mythtv/files/extrapatch-programs_programs.pro OPTIONS_EXCLUDE+= BINDINGS LIRC MYSQL .else CONFLICTS_INSTALL= mythtv-frontend -BUILD_DEPENDS+= v4l_compat>=1.18.0:multimedia/v4l_compat RUN_DEPENDS+= tv_check:textproc/p5-xmltv \ wget:ftp/wget -USES+= perl5 python:2.7 shebangfix +USES+= perl5 python:3.5+ shebangfix USE_PERL5= run build USE_RC_SUBR= mythbackend SHEBANG_FILES= programs/scripts/database/*.pl \ @@ -99,8 +94,8 @@ SHEBANG_FILES= programs/scripts/database/*.pl \ programs/scripts/metadata/Movie/tmdb3.py \ programs/scripts/metadata/Music/mbutils.py -CONFIGURE_ARGS+=--dvb-path="${LOCALBASE}/include" \ - --enable-ivtv --enable-v4l2 --enable-xv +CONFIGURE_ARGS+=--dvb-path="${WRKSRC}/media_tree/include/uapi" \ + --enable-ivtv --enable-v4l2 USERS= mythtv GROUPS= mythtv @@ -114,9 +109,11 @@ OPTIONS_DEFAULT= BINDINGS HDHOMERUN VDPAU OPTIONS_SUB= yes BINDINGS_DESC= Perl and Python bindings -BINDINGS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}MySQLdb>=1.2.2:databases/py-MySQLdb@${PY_FLAVOR} \ +BINDINGS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=0:databases/py-mysqlclient@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}future>=0:devel/py-future@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}urlgrabber>=3.1.0_1:www/py-urlgrabber@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}simplejson>=0:devel/py-simplejson@${PY_FLAVOR} \ p5-DBI>=0:databases/p5-DBI \ p5-DBD-mysql>0:databases/p5-DBD-mysql \ p5-Net-UPnP>=0:multimedia/p5-Net-UPnP \ @@ -124,13 +121,13 @@ BINDINGS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}MySQLdb p5-XML-Simple>=0:textproc/p5-XML-Simple \ p5-HTTP-Request-Params>=0:www/p5-HTTP-Request-Params \ p5-LWP-UserAgent-Determined>=0:www/p5-LWP-UserAgent-Determined -BINDINGS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}MySQLdb>=1.2.2:databases/py-MySQLdb@${PY_FLAVOR} \ +BINDINGS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=1.2.2:databases/py-mysqlclient@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ ${PY_FUTURES} \ ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests-cache>0:www/py-requests-cache@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}urlgrabber>=3.1.0_1:www/py-urlgrabber@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}simplejson>=3:devel/py-simplejson@${PY_FLAVOR} \ p5-DBI>=0:databases/p5-DBI \ p5-DBD-mysql>0:databases/p5-DBD-mysql \ p5-Net-UPnP>=0:multimedia/p5-Net-UPnP \ @@ -138,30 +135,30 @@ BINDINGS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}MySQLdb>= p5-XML-Simple>=0:textproc/p5-XML-Simple \ p5-HTTP-Request-Params>=0:www/p5-HTTP-Request-Params \ p5-LWP-UserAgent-Determined>=0:www/p5-LWP-UserAgent-Determined -BINDINGS_CONFIGURE_ON= --python=${PYTHON_CMD} -BINDINGS_CONFIGURE_OFF= --without-bindings=perl,python +BINDINGS_CONFIGURE_ON= --python="${PYTHON_CMD}" --with-bindings=perl,python HDHOMERUN_DESC= Native support for HDHomeRun network tuners HDHOMERUN_LIB_DEPENDS= libhdhomerun.so:multimedia/libhdhomerun HDHOMERUN_CONFIGURE_OFF= --disable-hdhomerun JACK_LIB_DEPENDS= libjack.so:audio/jack -JACK_CONFIGURE_ON= --enable-audio-jack --enable-indev=jack -JACK_CONFIGURE_OFF= --disable-audio-jack --disable-indev=jack +JACK_CONFIGURE_OFF= --disable-audio-jack LIRC_LIB_DEPENDS= liblirc_client.so:comms/lirc -LIRC_CONFIGURE_ENABLE= lirc +LIRC_CONFIGURE_OFF= --disable-lirc MYSQL_DESC= Install MySQL server in addition to client MYSQL_USES= mysql:client,server MYSQL_USES_OFF= mysql PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio -PULSEAUDIO_CONFIGURE_ENABLE= audio-pulse audio-pulseoutput +PULSEAUDIO_CONFIGURE_OFF= --disable-audio-pulseoutput VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau -VDPAU_CONFIGURE_ENABLE= vdpau +VDPAU_CONFIGURE_OFF= --disable-vdpau +LINUXDVB= ${WRKSRC}/media_tree/include/uapi/linux/dvb + post-patch: @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ ${WRKSRC}/configure \ @@ -171,6 +168,62 @@ post-patch: ${WRKSRC}/programs/scripts/database/mythconverg_backup.pl \ ${WRKSRC}/programs/scripts/database/mythconverg_restore.pl \ ${WRKSRC}/programs/mythcommflag/mythcommflag-analyze +.if !defined(SLAVEPORT) + # Header file from: + # https://git.linuxtv.org/media_tree.git/tree/include/uapi/linux/dvb + @${MKDIR} ${LINUXDVB} + @${CP} ${FILESDIR}/audio.h ${LINUXDVB} + @${CP} ${FILESDIR}/ca.h ${LINUXDVB} + @${CP} ${FILESDIR}/dmx.h ${LINUXDVB} + @${CP} ${FILESDIR}/frontend.h ${LINUXDVB} + @${CP} ${FILESDIR}/net.h ${LINUXDVB} + @${CP} ${FILESDIR}/osd.h ${LINUXDVB} + @${CP} ${FILESDIR}/version.h ${LINUXDVB} + @${CP} ${FILESDIR}/video.h ${LINUXDVB} + # Linux to BSD from multimedia/libv4l/Makefile + @${FIND} ${LINUXDVB} -type f -name "*.h" | \ + ${XARGS} -n 1 ${REINPLACE_CMD} \ + -e 's|#include |#include |'\ + -e 's|__inline__|inline|g' \ + -e 's|__u8|uint8_t|g' \ + -e 's|__s8|int8_t|g' \ + -e 's|__le16|uint16_t|g' \ + -e 's|__be16|uint16_t|g' \ + -e 's|__u16|uint16_t|g' \ + -e 's|__s16|int16_t|g' \ + -e 's|__le32|uint32_t|g' \ + -e 's|__be32|uint32_t|g' \ + -e 's|__u32|uint32_t|g' \ + -e 's|__s32|int32_t|g' \ + -e 's|__le64|uint64_t|g' \ + -e 's|__be64|uint64_t|g' \ + -e 's|__u64|uint64_t|g' \ + -e 's|__s64|int64_t|g' \ + -e 's|uint16_t_to_cpu|letoh16|g' \ + -e 's|uint32_t_to_cpu|letoh32|g' \ + -e 's|uint64_t_to_cpu|letoh64|g' \ + -e 's|error_t|int|g' \ + -e 's|"gettext.h"||g' \ + -e 's|MSG_MORE|0|g' \ + -e 's|EBADR|EFAULT|g' \ + -e 's|ENONET|EHOSTDOWN|g' \ + -e 's|_IOC_READ|IOC_OUT|g' \ + -e 's|_IOC_WRITE|IOC_IN|g' \ + -e 's|_IOC_NONE|IOC_VOID|g' \ + -e 's|||g' \ + -e 's|||g' \ + -e 's|||g' \ + -e 's|||g' \ + -e '/^.*\.*/d' \ + -e 's|||g' \ + -e 's|||g' \ + -e 's|||g' \ + -e 's|||g' \ + -e 's|||g' \ + -e 's|/usr/bin/perl|${LOCALBASE}/bin/perl|g' \ + -e 's|__user||g' \ + ${LINUXDVB}/frontend.h +.endif post-install: .if !defined(SLAVEPORT) @@ -179,15 +232,21 @@ post-install: .endif @${FIND} ${STAGEDIR}${PREFIX}/bin -type f -exec ${SH} -c "${FILE} -i '{}' | \ ${GREP} -q 'x-executable; charset=binary'" \; -print | ${XARGS} ${STRIP_CMD} - @(cd ${STAGEDIR}${PREFIX} && ${STRIP_CMD} lib/libmyth*.so lib/mythtv/filters/lib*.so) + @${FIND} ${STAGEDIR}${PREFIX}/lib -type f -name lib\*.so.\* | ${XARGS} ${STRIP_CMD} # Apply additional substitutions to pkg-plist generated by the 'makeplist' target create-plist: stage @(cd ${.CURDIR} && ${MAKE} makeplist > pkg-plist && \ - ${REINPLACE_CMD} -E \ - -e '1d' -e '/etc\/rc.d\/mythbackend/d' -e '/packlist/d' \ - -e '/mythfrontend.desktop/d' \ - -e '/(^%%PYTHON_SITELIBDIR%%|^%%SITE_PERL%%|mythpython|mythwikiscripts)/s|^|%%BINDINGS%%|g' \ + ${REINPLACE_CMD} -E \ + -e '1d' -e '/etc\/rc.d\/mythbackend/d' -e '/[.]packlist$$/d' \ + -e '/[.]bak$$/d' \ + -e '/[.]gitignore$$/d' \ + -e 's#^bin/mythpython#%%BINDINGS%%bin/mythpython#' \ + -e 's#^bin/mythwikiscripts#%%BINDINGS%%bin/mythwikiscripts#' \ + -e 's#^%%PYTHON_SITELIBDIR%%#%%BINDINGS%%%%PYTHON_SITELIBDIR%%#' \ + -e 's#^%%DATADIR%%hardwareprofile#%%BINDINGS%%hardwareprofile#' \ + -e 's#^%%DATADIR%%internetcontent#%%BINDINGS%%internetcontent#' \ + -e 's#^%%SITE_PERL%%#%%BINDINGS%%%%SITE_PERL%%#' \ pkg-plist) .include Modified: head/multimedia/mythtv/distinfo ============================================================================== --- head/multimedia/mythtv/distinfo Wed Dec 16 02:02:25 2020 (r558198) +++ head/multimedia/mythtv/distinfo Wed Dec 16 02:48:03 2020 (r558199) @@ -1,5 +1,3 @@ -TIMESTAMP = 1548724555 -SHA256 (MythTV-mythtv-v30.0_GH0.tar.gz) = 7f7ae9b8927659616f181afc12d7ddc26b0a4b0d13982e2586985f4770640b43 -SIZE (MythTV-mythtv-v30.0_GH0.tar.gz) = 101169041 -SHA256 (aab7d3f065a7.patch) = b6ba39d0d29cdbe5feb6173fbde124b68e94826eb919b74702891286040f718d -SIZE (aab7d3f065a7.patch) = 917 +TIMESTAMP = 1599843409 +SHA256 (MythTV-mythtv-v31.0_GH0.tar.gz) = 907d1747950ec6ef1ec965069c75500b4538b781333f60e16d62d519b221a86d +SIZE (MythTV-mythtv-v31.0_GH0.tar.gz) = 102552136 Added: head/multimedia/mythtv/files/audio.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/multimedia/mythtv/files/audio.h Wed Dec 16 02:48:03 2020 (r558199) @@ -0,0 +1,101 @@ +/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */ +/* + * audio.h - DEPRECATED MPEG-TS audio decoder API + * + * NOTE: should not be used on future drivers + * + * Copyright (C) 2000 Ralph Metzler + * & Marcus Metzler + * for convergence integrated media GmbH + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Lesser Public License + * as published by the Free Software Foundation; either version 2.1 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + */ + +#ifndef _DVBAUDIO_H_ +#define _DVBAUDIO_H_ + +#include + +typedef enum { + AUDIO_SOURCE_DEMUX, /* Select the demux as the main source */ + AUDIO_SOURCE_MEMORY /* Select internal memory as the main source */ +} audio_stream_source_t; + + +typedef enum { + AUDIO_STOPPED, /* Device is stopped */ + AUDIO_PLAYING, /* Device is currently playing */ + AUDIO_PAUSED /* Device is paused */ +} audio_play_state_t; + + +typedef enum { + AUDIO_STEREO, + AUDIO_MONO_LEFT, + AUDIO_MONO_RIGHT, + AUDIO_MONO, + AUDIO_STEREO_SWAPPED +} audio_channel_select_t; + + +typedef struct audio_mixer { + unsigned int volume_left; + unsigned int volume_right; + /* what else do we need? bass, pass-through, ... */ +} audio_mixer_t; + + +typedef struct audio_status { + int AV_sync_state; /* sync audio and video? */ + int mute_state; /* audio is muted */ + audio_play_state_t play_state; /* current playback state */ + audio_stream_source_t stream_source; /* current stream source */ + audio_channel_select_t channel_select; /* currently selected channel */ + int bypass_mode; /* pass on audio data to */ + audio_mixer_t mixer_state; /* current mixer state */ +} audio_status_t; /* separate decoder hardware */ + + +/* for GET_CAPABILITIES and SET_FORMAT, the latter should only set one bit */ +#define AUDIO_CAP_DTS 1 +#define AUDIO_CAP_LPCM 2 +#define AUDIO_CAP_MP1 4 +#define AUDIO_CAP_MP2 8 +#define AUDIO_CAP_MP3 16 +#define AUDIO_CAP_AAC 32 +#define AUDIO_CAP_OGG 64 +#define AUDIO_CAP_SDDS 128 +#define AUDIO_CAP_AC3 256 + +#define AUDIO_STOP _IO('o', 1) +#define AUDIO_PLAY _IO('o', 2) +#define AUDIO_PAUSE _IO('o', 3) +#define AUDIO_CONTINUE _IO('o', 4) +#define AUDIO_SELECT_SOURCE _IO('o', 5) +#define AUDIO_SET_MUTE _IO('o', 6) +#define AUDIO_SET_AV_SYNC _IO('o', 7) +#define AUDIO_SET_BYPASS_MODE _IO('o', 8) +#define AUDIO_CHANNEL_SELECT _IO('o', 9) +#define AUDIO_GET_STATUS _IOR('o', 10, audio_status_t) + +#define AUDIO_GET_CAPABILITIES _IOR('o', 11, unsigned int) +#define AUDIO_CLEAR_BUFFER _IO('o', 12) +#define AUDIO_SET_ID _IO('o', 13) +#define AUDIO_SET_MIXER _IOW('o', 14, audio_mixer_t) +#define AUDIO_SET_STREAMTYPE _IO('o', 15) +#define AUDIO_BILINGUAL_CHANNEL_SELECT _IO('o', 20) + +#endif /* _DVBAUDIO_H_ */ Added: head/multimedia/mythtv/files/ca.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/multimedia/mythtv/files/ca.h Wed Dec 16 02:48:03 2020 (r558199) @@ -0,0 +1,155 @@ +/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */ +/* + * ca.h + * + * Copyright (C) 2000 Ralph Metzler + * & Marcus Metzler + * for convergence integrated media GmbH + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Lesser Public License + * as published by the Free Software Foundation; either version 2.1 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + */ + +#ifndef _DVBCA_H_ +#define _DVBCA_H_ + +/** + * struct ca_slot_info - CA slot interface types and info. + * + * @num: slot number. + * @type: slot type. + * @flags: flags applicable to the slot. + * + * This struct stores the CA slot information. + * + * @type can be: + * + * - %CA_CI - CI high level interface; + * - %CA_CI_LINK - CI link layer level interface; + * - %CA_CI_PHYS - CI physical layer level interface; + * - %CA_DESCR - built-in descrambler; + * - %CA_SC -simple smart card interface. + * + * @flags can be: + * + * - %CA_CI_MODULE_PRESENT - module (or card) inserted; + * - %CA_CI_MODULE_READY - module is ready for usage. + */ + +struct ca_slot_info { + int num; + int type; +#define CA_CI 1 +#define CA_CI_LINK 2 +#define CA_CI_PHYS 4 +#define CA_DESCR 8 +#define CA_SC 128 + + unsigned int flags; +#define CA_CI_MODULE_PRESENT 1 +#define CA_CI_MODULE_READY 2 +}; + + +/** + * struct ca_descr_info - descrambler types and info. + * + * @num: number of available descramblers (keys). + * @type: type of supported scrambling system. + * + * Identifies the number of descramblers and their type. + * + * @type can be: + * + * - %CA_ECD - European Common Descrambler (ECD) hardware; + * - %CA_NDS - Videoguard (NDS) hardware; + * - %CA_DSS - Distributed Sample Scrambling (DSS) hardware. + */ +struct ca_descr_info { + unsigned int num; + unsigned int type; +#define CA_ECD 1 +#define CA_NDS 2 +#define CA_DSS 4 +}; + +/** + * struct ca_caps - CA slot interface capabilities. + * + * @slot_num: total number of CA card and module slots. + * @slot_type: bitmap with all supported types as defined at + * &struct ca_slot_info (e. g. %CA_CI, %CA_CI_LINK, etc). + * @descr_num: total number of descrambler slots (keys) + * @descr_type: bitmap with all supported types as defined at + * &struct ca_descr_info (e. g. %CA_ECD, %CA_NDS, etc). + */ +struct ca_caps { + unsigned int slot_num; + unsigned int slot_type; + unsigned int descr_num; + unsigned int descr_type; +}; + +/** + * struct ca_msg - a message to/from a CI-CAM + * + * @index: unused + * @type: unused + * @length: length of the message + * @msg: message + * + * This struct carries a message to be send/received from a CI CA module. + */ +struct ca_msg { + unsigned int index; + unsigned int type; + unsigned int length; + unsigned char msg[256]; +}; + +/** + * struct ca_descr - CA descrambler control words info + * + * @index: CA Descrambler slot + * @parity: control words parity, where 0 means even and 1 means odd + * @cw: CA Descrambler control words + */ +struct ca_descr { + unsigned int index; + unsigned int parity; + unsigned char cw[8]; +}; + +#define CA_RESET _IO('o', 128) +#define CA_GET_CAP _IOR('o', 129, struct ca_caps) +#define CA_GET_SLOT_INFO _IOR('o', 130, struct ca_slot_info) +#define CA_GET_DESCR_INFO _IOR('o', 131, struct ca_descr_info) +#define CA_GET_MSG _IOR('o', 132, struct ca_msg) +#define CA_SEND_MSG _IOW('o', 133, struct ca_msg) +#define CA_SET_DESCR _IOW('o', 134, struct ca_descr) + +#if !defined(__KERNEL__) + +/* This is needed for legacy userspace support */ +typedef struct ca_slot_info ca_slot_info_t; +typedef struct ca_descr_info ca_descr_info_t; +typedef struct ca_caps ca_caps_t; +typedef struct ca_msg ca_msg_t; +typedef struct ca_descr ca_descr_t; + +#endif + + +#endif Added: head/multimedia/mythtv/files/dmx.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/multimedia/mythtv/files/dmx.h Wed Dec 16 02:48:03 2020 (r558199) @@ -0,0 +1,330 @@ +/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */ +/* + * dmx.h + * + * Copyright (C) 2000 Marcus Metzler + * & Ralph Metzler + * for convergence integrated media GmbH + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License + * as published by the Free Software Foundation; either version 2.1 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + */ + +#ifndef _UAPI_DVBDMX_H_ +#define _UAPI_DVBDMX_H_ + +#include +#ifndef __KERNEL__ +#include +#endif + + +#define DMX_FILTER_SIZE 16 + +/** + * enum dmx_output - Output for the demux. + * + * @DMX_OUT_DECODER: + * Streaming directly to decoder. + * @DMX_OUT_TAP: + * Output going to a memory buffer (to be retrieved via the read command). + * Delivers the stream output to the demux device on which the ioctl + * is called. + * @DMX_OUT_TS_TAP: + * Output multiplexed into a new TS (to be retrieved by reading from the + * logical DVR device). Routes output to the logical DVR device + * ``/dev/dvb/adapter?/dvr?``, which delivers a TS multiplexed from all + * filters for which @DMX_OUT_TS_TAP was specified. + * @DMX_OUT_TSDEMUX_TAP: + * Like @DMX_OUT_TS_TAP but retrieved from the DMX device. + */ +enum dmx_output { + DMX_OUT_DECODER, + DMX_OUT_TAP, + DMX_OUT_TS_TAP, + DMX_OUT_TSDEMUX_TAP +}; + + +/** + * enum dmx_input - Input from the demux. + * + * @DMX_IN_FRONTEND: Input from a front-end device. + * @DMX_IN_DVR: Input from the logical DVR device. + */ +enum dmx_input { + DMX_IN_FRONTEND, + DMX_IN_DVR +}; + +/** + * enum dmx_ts_pes - type of the PES filter. + * + * @DMX_PES_AUDIO0: first audio PID. Also referred as @DMX_PES_AUDIO. + * @DMX_PES_VIDEO0: first video PID. Also referred as @DMX_PES_VIDEO. + * @DMX_PES_TELETEXT0: first teletext PID. Also referred as @DMX_PES_TELETEXT. + * @DMX_PES_SUBTITLE0: first subtitle PID. Also referred as @DMX_PES_SUBTITLE. + * @DMX_PES_PCR0: first Program Clock Reference PID. + * Also referred as @DMX_PES_PCR. + * + * @DMX_PES_AUDIO1: second audio PID. + * @DMX_PES_VIDEO1: second video PID. + * @DMX_PES_TELETEXT1: second teletext PID. + * @DMX_PES_SUBTITLE1: second subtitle PID. + * @DMX_PES_PCR1: second Program Clock Reference PID. + * + * @DMX_PES_AUDIO2: third audio PID. + * @DMX_PES_VIDEO2: third video PID. + * @DMX_PES_TELETEXT2: third teletext PID. + * @DMX_PES_SUBTITLE2: third subtitle PID. + * @DMX_PES_PCR2: third Program Clock Reference PID. + * + * @DMX_PES_AUDIO3: fourth audio PID. + * @DMX_PES_VIDEO3: fourth video PID. + * @DMX_PES_TELETEXT3: fourth teletext PID. + * @DMX_PES_SUBTITLE3: fourth subtitle PID. + * @DMX_PES_PCR3: fourth Program Clock Reference PID. + * + * @DMX_PES_OTHER: any other PID. + */ + +enum dmx_ts_pes { + DMX_PES_AUDIO0, + DMX_PES_VIDEO0, + DMX_PES_TELETEXT0, + DMX_PES_SUBTITLE0, + DMX_PES_PCR0, + + DMX_PES_AUDIO1, + DMX_PES_VIDEO1, + DMX_PES_TELETEXT1, + DMX_PES_SUBTITLE1, + DMX_PES_PCR1, + + DMX_PES_AUDIO2, + DMX_PES_VIDEO2, + DMX_PES_TELETEXT2, + DMX_PES_SUBTITLE2, + DMX_PES_PCR2, + + DMX_PES_AUDIO3, + DMX_PES_VIDEO3, + DMX_PES_TELETEXT3, + DMX_PES_SUBTITLE3, + DMX_PES_PCR3, + + DMX_PES_OTHER +}; + +#define DMX_PES_AUDIO DMX_PES_AUDIO0 +#define DMX_PES_VIDEO DMX_PES_VIDEO0 +#define DMX_PES_TELETEXT DMX_PES_TELETEXT0 +#define DMX_PES_SUBTITLE DMX_PES_SUBTITLE0 +#define DMX_PES_PCR DMX_PES_PCR0 + + + +/** + * struct dmx_filter - Specifies a section header filter. + * + * @filter: bit array with bits to be matched at the section header. + * @mask: bits that are valid at the filter bit array. + * @mode: mode of match: if bit is zero, it will match if equal (positive + * match); if bit is one, it will match if the bit is negated. + * + * Note: All arrays in this struct have a size of DMX_FILTER_SIZE (16 bytes). + */ +struct dmx_filter { + __u8 filter[DMX_FILTER_SIZE]; + __u8 mask[DMX_FILTER_SIZE]; + __u8 mode[DMX_FILTER_SIZE]; +}; + +/** + * struct dmx_sct_filter_params - Specifies a section filter. + * + * @pid: PID to be filtered. + * @filter: section header filter, as defined by &struct dmx_filter. + * @timeout: maximum time to filter, in milliseconds. + * @flags: extra flags for the section filter. + * + * Carries the configuration for a MPEG-TS section filter. + * + * The @flags can be: + * + * - %DMX_CHECK_CRC - only deliver sections where the CRC check succeeded; + * - %DMX_ONESHOT - disable the section filter after one section + * has been delivered; + * - %DMX_IMMEDIATE_START - Start filter immediately without requiring a + * :ref:`DMX_START`. + */ +struct dmx_sct_filter_params { + __u16 pid; + struct dmx_filter filter; + __u32 timeout; + __u32 flags; +#define DMX_CHECK_CRC 1 +#define DMX_ONESHOT 2 +#define DMX_IMMEDIATE_START 4 +}; + +/** + * struct dmx_pes_filter_params - Specifies Packetized Elementary Stream (PES) + * filter parameters. + * + * @pid: PID to be filtered. + * @input: Demux input, as specified by &enum dmx_input. + * @output: Demux output, as specified by &enum dmx_output. + * @pes_type: Type of the pes filter, as specified by &enum dmx_pes_type. + * @flags: Demux PES flags. + */ +struct dmx_pes_filter_params { + __u16 pid; + enum dmx_input input; + enum dmx_output output; + enum dmx_ts_pes pes_type; + __u32 flags; +}; + +/** + * struct dmx_stc - Stores System Time Counter (STC) information. + * + * @num: input data: number of the STC, from 0 to N. + * @base: output: divisor for STC to get 90 kHz clock. + * @stc: output: stc in @base * 90 kHz units. + */ +struct dmx_stc { + unsigned int num; + unsigned int base; + __u64 stc; +}; + +/** + * enum dmx_buffer_flags - DMX memory-mapped buffer flags + * + * @DMX_BUFFER_FLAG_HAD_CRC32_DISCARD: + * Indicates that the Kernel discarded one or more frames due to wrong + * CRC32 checksum. + * @DMX_BUFFER_FLAG_TEI: + * Indicates that the Kernel has detected a Transport Error indicator *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***