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 <ahicks p-o co uk>
This commit is contained in:
Kyle Evans 2020-12-16 02:48:03 +00:00
parent beed130fb4
commit e7b2c0d90a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=558199
23 changed files with 2355 additions and 438 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -1,10 +1,9 @@
# Created by: Bernhard Froehlich <decke@bluelife.at>
# $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

View File

@ -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

View File

@ -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 homebrew PVR project" "" \
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>=1.2.2:databases/py-MySQL
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,29 +135,29 @@ BINDINGS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}MySQLdb>=1.2.2:databases/py-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' \
@ -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 <linux/types.h>|#include <sys/types.h>|'\
-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"|<stdio.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|<endian.h>|<sys/endian.h>|g' \
-e 's|<linux/compiler.h>|<sys/cdefs.h>|g' \
-e 's|<linux/errno.h>|<errno.h>|g' \
-e 's|<linux/ioctl.h>|<sys/ioctl.h>|g' \
-e '/^.*\<linux\/kernel.h\>.*/d' \
-e 's|<linux/string.h>|<string.h>|g' \
-e 's|<linux/sysmacros.h>|<sys/types.h>|g' \
-e 's|<malloc.h>|<stdlib.h>|g' \
-e 's|<sys/epoll.h>|<libepoll-shim/sys/epoll.h>|g' \
-e 's|<sys/sysmacros.h>|<sys/types.h>|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 <bsd.port.mk>

View File

@ -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

View File

@ -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 <ralph@convergence.de>
* & Marcus Metzler <marcus@convergence.de>
* 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 <linux/types.h>
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_ */

View File

@ -0,0 +1,155 @@
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
/*
* ca.h
*
* Copyright (C) 2000 Ralph Metzler <ralph@convergence.de>
* & Marcus Metzler <marcus@convergence.de>
* 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

View File

@ -0,0 +1,330 @@
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
/*
* dmx.h
*
* Copyright (C) 2000 Marcus Metzler <marcus@convergence.de>
* & Ralph Metzler <ralph@convergence.de>
* 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 <linux/types.h>
#ifndef __KERNEL__
#include <time.h>
#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
* (TEI) on a filtered pid.
* @DMX_BUFFER_PKT_COUNTER_MISMATCH:
* Indicates that the Kernel has detected a packet counter mismatch
* on a filtered pid.
* @DMX_BUFFER_FLAG_DISCONTINUITY_DETECTED:
* Indicates that the Kernel has detected one or more frame discontinuity.
* @DMX_BUFFER_FLAG_DISCONTINUITY_INDICATOR:
* Received at least one packet with a frame discontinuity indicator.
*/
enum dmx_buffer_flags {
DMX_BUFFER_FLAG_HAD_CRC32_DISCARD = 1 << 0,
DMX_BUFFER_FLAG_TEI = 1 << 1,
DMX_BUFFER_PKT_COUNTER_MISMATCH = 1 << 2,
DMX_BUFFER_FLAG_DISCONTINUITY_DETECTED = 1 << 3,
DMX_BUFFER_FLAG_DISCONTINUITY_INDICATOR = 1 << 4,
};
/**
* struct dmx_buffer - dmx buffer info
*
* @index: id number of the buffer
* @bytesused: number of bytes occupied by data in the buffer (payload);
* @offset: for buffers with memory == DMX_MEMORY_MMAP;
* offset from the start of the device memory for this plane,
* (or a "cookie" that should be passed to mmap() as offset)
* @length: size in bytes of the buffer
* @flags: bit array of buffer flags as defined by &enum dmx_buffer_flags.
* Filled only at &DMX_DQBUF.
* @count: monotonic counter for filled buffers. Helps to identify
* data stream loses. Filled only at &DMX_DQBUF.
*
* Contains data exchanged by application and driver using one of the streaming
* I/O methods.
*
* Please notice that, for &DMX_QBUF, only @index should be filled.
* On &DMX_DQBUF calls, all fields will be filled by the Kernel.
*/
struct dmx_buffer {
__u32 index;
__u32 bytesused;
__u32 offset;
__u32 length;
__u32 flags;
__u32 count;
};
/**
* struct dmx_requestbuffers - request dmx buffer information
*
* @count: number of requested buffers,
* @size: size in bytes of the requested buffer
*
* Contains data used for requesting a dmx buffer.
* All reserved fields must be set to zero.
*/
struct dmx_requestbuffers {
__u32 count;
__u32 size;
};
/**
* struct dmx_exportbuffer - export of dmx buffer as DMABUF file descriptor
*
* @index: id number of the buffer
* @flags: flags for newly created file, currently only O_CLOEXEC is
* supported, refer to manual of open syscall for more details
* @fd: file descriptor associated with DMABUF (set by driver)
*
* Contains data used for exporting a dmx buffer as DMABUF file descriptor.
* The buffer is identified by a 'cookie' returned by DMX_QUERYBUF
* (identical to the cookie used to mmap() the buffer to userspace). All
* reserved fields must be set to zero. The field reserved0 is expected to
* become a structure 'type' allowing an alternative layout of the structure
* content. Therefore this field should not be used for any other extensions.
*/
struct dmx_exportbuffer {
__u32 index;
__u32 flags;
__s32 fd;
};
#define DMX_START _IO('o', 41)
#define DMX_STOP _IO('o', 42)
#define DMX_SET_FILTER _IOW('o', 43, struct dmx_sct_filter_params)
#define DMX_SET_PES_FILTER _IOW('o', 44, struct dmx_pes_filter_params)
#define DMX_SET_BUFFER_SIZE _IO('o', 45)
#define DMX_GET_PES_PIDS _IOR('o', 47, __u16[5])
#define DMX_GET_STC _IOWR('o', 50, struct dmx_stc)
#define DMX_ADD_PID _IOW('o', 51, __u16)
#define DMX_REMOVE_PID _IOW('o', 52, __u16)
#if !defined(__KERNEL__)
/* This is needed for legacy userspace support */
typedef enum dmx_output dmx_output_t;
typedef enum dmx_input dmx_input_t;
typedef enum dmx_ts_pes dmx_pes_type_t;
typedef struct dmx_filter dmx_filter_t;
#endif
#define DMX_REQBUFS _IOWR('o', 60, struct dmx_requestbuffers)
#define DMX_QUERYBUF _IOWR('o', 61, struct dmx_buffer)
#define DMX_EXPBUF _IOWR('o', 62, struct dmx_exportbuffer)
#define DMX_QBUF _IOWR('o', 63, struct dmx_buffer)
#define DMX_DQBUF _IOWR('o', 64, struct dmx_buffer)
#endif /* _DVBDMX_H_ */

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,68 @@
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
/*
* net.h
*
* Copyright (C) 2000 Marcus Metzler <marcus@convergence.de>
* & Ralph Metzler <ralph@convergence.de>
* 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 _DVBNET_H_
#define _DVBNET_H_
#include <linux/types.h>
/**
* struct dvb_net_if - describes a DVB network interface
*
* @pid: Packet ID (PID) of the MPEG-TS that contains data
* @if_num: number of the Digital TV interface.
* @feedtype: Encapsulation type of the feed.
*
* A MPEG-TS stream may contain packet IDs with IP packages on it.
* This struct describes it, and the type of encoding.
*
* @feedtype can be:
*
* - %DVB_NET_FEEDTYPE_MPE for MPE encoding
* - %DVB_NET_FEEDTYPE_ULE for ULE encoding.
*/
struct dvb_net_if {
__u16 pid;
__u16 if_num;
__u8 feedtype;
#define DVB_NET_FEEDTYPE_MPE 0 /* multi protocol encapsulation */
#define DVB_NET_FEEDTYPE_ULE 1 /* ultra lightweight encapsulation */
};
#define NET_ADD_IF _IOWR('o', 52, struct dvb_net_if)
#define NET_REMOVE_IF _IO('o', 53)
#define NET_GET_IF _IOWR('o', 54, struct dvb_net_if)
/* binary compatibility cruft: */
struct __dvb_net_if_old {
__u16 pid;
__u16 if_num;
};
#define __NET_ADD_IF_OLD _IOWR('o', 52, struct __dvb_net_if_old)
#define __NET_GET_IF_OLD _IOWR('o', 54, struct __dvb_net_if_old)
#endif /*_DVBNET_H_*/

View File

@ -0,0 +1,181 @@
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
/*
* osd.h - DEPRECATED On Screen Display API
*
* NOTE: should not be used on future drivers
*
* Copyright (C) 2001 Ralph Metzler <ralph@convergence.de>
* & Marcus Metzler <marcus@convergence.de>
* 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 _DVBOSD_H_
#define _DVBOSD_H_
#include <linux/compiler.h>
typedef enum {
/* All functions return -2 on "not open" */
OSD_Close = 1, /* () */
/*
* Disables OSD and releases the buffers
* returns 0 on success
*/
OSD_Open, /* (x0,y0,x1,y1,BitPerPixel[2/4/8](color&0x0F),mix[0..15](color&0xF0)) */
/*
* Opens OSD with this size and bit depth
* returns 0 on success, -1 on DRAM allocation error, -2 on "already open"
*/
OSD_Show, /* () */
/*
* enables OSD mode
* returns 0 on success
*/
OSD_Hide, /* () */
/*
* disables OSD mode
* returns 0 on success
*/
OSD_Clear, /* () */
/*
* Sets all pixel to color 0
* returns 0 on success
*/
OSD_Fill, /* (color) */
/*
* Sets all pixel to color <col>
* returns 0 on success
*/
OSD_SetColor, /* (color,R{x0},G{y0},B{x1},opacity{y1}) */
/*
* set palette entry <num> to <r,g,b>, <mix> and <trans> apply
* R,G,B: 0..255
* R=Red, G=Green, B=Blue
* opacity=0: pixel opacity 0% (only video pixel shows)
* opacity=1..254: pixel opacity as specified in header
* opacity=255: pixel opacity 100% (only OSD pixel shows)
* returns 0 on success, -1 on error
*/
OSD_SetPalette, /* (firstcolor{color},lastcolor{x0},data) */
/*
* Set a number of entries in the palette
* sets the entries "firstcolor" through "lastcolor" from the array "data"
* data has 4 byte for each color:
* R,G,B, and a opacity value: 0->transparent, 1..254->mix, 255->pixel
*/
OSD_SetTrans, /* (transparency{color}) */
/*
* Sets transparency of mixed pixel (0..15)
* returns 0 on success
*/
OSD_SetPixel, /* (x0,y0,color) */
/*
* sets pixel <x>,<y> to color number <col>
* returns 0 on success, -1 on error
*/
OSD_GetPixel, /* (x0,y0) */
/* returns color number of pixel <x>,<y>, or -1 */
OSD_SetRow, /* (x0,y0,x1,data) */
/*
* fills pixels x0,y through x1,y with the content of data[]
* returns 0 on success, -1 on clipping all pixel (no pixel drawn)
*/
OSD_SetBlock, /* (x0,y0,x1,y1,increment{color},data) */
/*
* fills pixels x0,y0 through x1,y1 with the content of data[]
* inc contains the width of one line in the data block,
* inc<=0 uses blockwidth as linewidth
* returns 0 on success, -1 on clipping all pixel
*/
OSD_FillRow, /* (x0,y0,x1,color) */
/*
* fills pixels x0,y through x1,y with the color <col>
* returns 0 on success, -1 on clipping all pixel
*/
OSD_FillBlock, /* (x0,y0,x1,y1,color) */
/*
* fills pixels x0,y0 through x1,y1 with the color <col>
* returns 0 on success, -1 on clipping all pixel
*/
OSD_Line, /* (x0,y0,x1,y1,color) */
/*
* draw a line from x0,y0 to x1,y1 with the color <col>
* returns 0 on success
*/
OSD_Query, /* (x0,y0,x1,y1,xasp{color}}), yasp=11 */
/*
* fills parameters with the picture dimensions and the pixel aspect ratio
* returns 0 on success
*/
OSD_Test, /* () */
/*
* draws a test picture. for debugging purposes only
* returns 0 on success
* TODO: remove "test" in final version
*/
OSD_Text, /* (x0,y0,size,color,text) */
OSD_SetWindow, /* (x0) set window with number 0<x0<8 as current */
OSD_MoveWindow, /* move current window to (x0, y0) */
OSD_OpenRaw, /* Open other types of OSD windows */
} OSD_Command;
typedef struct osd_cmd_s {
OSD_Command cmd;
int x0;
int y0;
int x1;
int y1;
int color;
void __user *data;
} osd_cmd_t;
/* OSD_OpenRaw: set 'color' to desired window type */
typedef enum {
OSD_BITMAP1, /* 1 bit bitmap */
OSD_BITMAP2, /* 2 bit bitmap */
OSD_BITMAP4, /* 4 bit bitmap */
OSD_BITMAP8, /* 8 bit bitmap */
OSD_BITMAP1HR, /* 1 Bit bitmap half resolution */
OSD_BITMAP2HR, /* 2 bit bitmap half resolution */
OSD_BITMAP4HR, /* 4 bit bitmap half resolution */
OSD_BITMAP8HR, /* 8 bit bitmap half resolution */
OSD_YCRCB422, /* 4:2:2 YCRCB Graphic Display */
OSD_YCRCB444, /* 4:4:4 YCRCB Graphic Display */
OSD_YCRCB444HR, /* 4:4:4 YCRCB graphic half resolution */
OSD_VIDEOTSIZE, /* True Size Normal MPEG Video Display */
OSD_VIDEOHSIZE, /* MPEG Video Display Half Resolution */
OSD_VIDEOQSIZE, /* MPEG Video Display Quarter Resolution */
OSD_VIDEODSIZE, /* MPEG Video Display Double Resolution */
OSD_VIDEOTHSIZE, /* True Size MPEG Video Display Half Resolution */
OSD_VIDEOTQSIZE, /* True Size MPEG Video Display Quarter Resolution*/
OSD_VIDEOTDSIZE, /* True Size MPEG Video Display Double Resolution */
OSD_VIDEONSIZE, /* Full Size MPEG Video Display */
OSD_CURSOR /* Cursor */
} osd_raw_window_t;
typedef struct osd_cap_s {
int cmd;
#define OSD_CAP_MEMSIZE 1 /* memory size */
long val;
} osd_cap_t;
#define OSD_SEND_CMD _IOW('o', 160, osd_cmd_t)
#define OSD_GET_CAPABILITY _IOR('o', 161, osd_cap_t)
#endif

View File

@ -1,35 +0,0 @@
From 32b95471a86ae383c0f76361d954aec511f7043a Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michael@niedermayer.cc>
Date: Mon, 5 Dec 2016 11:14:51 +0100
Subject: [PATCH] avformat/rtmppkt: Check for packet size mismatches
Fixes out of array access
Found-by: Paul Cher <paulcher@icloud.com>
Reviewed-by: Paul Cher <paulcher@icloud.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit 7d57ca4d9a75562fa32e40766211de150f8b3ee7)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
libavformat/rtmppkt.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git libavformat/rtmppkt.c libavformat/rtmppkt.c
index 0d693c27f7f..cde0da78ce1 100644
--- external/FFmpeg/libavformat/rtmppkt.c.orig
+++ external/FFmpeg/libavformat/rtmppkt.c
@@ -235,6 +235,14 @@ static int rtmp_packet_read_one_chunk(URLContext *h, RTMPPacket *p,
if (hdr != RTMP_PS_TWELVEBYTES)
timestamp += prev_pkt[channel_id].timestamp;
+ if (prev_pkt[channel_id].read && size != prev_pkt[channel_id].size) {
+ av_log(NULL, AV_LOG_ERROR, "RTMP packet size mismatch %d != %d\n",
+ size,
+ prev_pkt[channel_id].size);
+ ff_rtmp_packet_destroy(&prev_pkt[channel_id]);
+ prev_pkt[channel_id].read = 0;
+ }
+
if (!prev_pkt[channel_id].read) {
if ((ret = ff_rtmp_packet_create(p, channel_id, type, timestamp,
size)) < 0)

View File

@ -1,44 +0,0 @@
--- configure.orig 2018-01-11 12:39:22 UTC
+++ configure
@@ -1003,35 +1003,35 @@ check_cc(){
log check_cc "$@"
cat > $TMPC
log_file $TMPC
- check_cmd $cc $CPPFLAGS $CFLAGS "$@" $CC_C $(cc_o $TMPO) $TMPC
+ check_cmd $cc $CPPFLAGS $CFLAGS -I${prefix}/include "$@" $CC_C $(cc_o $TMPO) $TMPC
}
check_cxx(){
log check_cxx "$@"
cat > $TMPCPP
log_file $TMPCPP
- check_cmd $cxx $CPPFLAGS $CXXFLAGS "$@" $CXX_C -o $TMPO $TMPCPP
+ check_cmd $cxx $CPPFLAGS $CXXFLAGS -I${prefix}/include "$@" $CXX_C -o $TMPO $TMPCPP
}
check_ecxx(){
log check_cxx "$@"
cat > $TMPCPP
log_file $TMPCPP
- check_cmd $cxx $CPPFLAGS $CXXFLAGS $ECXXFLAGS "$@" $CXX_C -o $TMPO $TMPCPP
+ check_cmd $cxx $CPPFLAGS $CXXFLAGS $ECXXFLAGS -I${prefix}/include "$@" $CXX_C -o $TMPO $TMPCPP
}
check_objcc(){
log check_objcc "$@"
cat > $TMPM
log_file $TMPM
- check_cmd $objcc -Werror=missing-prototypes $CPPFLAGS $CFLAGS $OBJCFLAGS "$@" $OBJCC_C $(cc_o $TMPO) $TMPM
+ check_cmd $objcc -Werror=missing-prototypes $CPPFLAGS $CFLAGS $OBJCFLAGS -I${prefix}/include "$@" $OBJCC_C $(cc_o $TMPO) $TMPM
}
check_cpp(){
log check_cpp "$@"
cat > $TMPC
log_file $TMPC
- check_cmd $cc $CPPFLAGS $CFLAGS "$@" $(cc_e $TMPO) $TMPC
+ check_cmd $cc $CPPFLAGS $CFLAGS -I${prefix}/include "$@" $(cc_e $TMPO) $TMPC
}
as_o(){

View File

@ -1,48 +0,0 @@
Fix RTP stream; FreeBSD's socket calls require the sockaddr struct length
to agree with the address family.
PR: 214852
--- external/FFmpeg/libavformat/rtsp.c.orig 2018-02-01 11:15:37 UTC
+++ external/FFmpeg/libavformat/rtsp.c
@@ -1614,7 +1614,12 @@ int ff_rtsp_make_setup_request(AVFormatContext *s, con
}
if (ttl > 0)
snprintf(optbuf, sizeof(optbuf), "?ttl=%d", ttl);
- getnameinfo((struct sockaddr*) &addr, sizeof(addr),
+ getnameinfo((struct sockaddr*) &addr,
+#if HAVE_STRUCT_SOCKADDR_SA_LEN
+ ((struct sockaddr*) &addr)->sa_len,
+#else
+ sizeof(addr),
+#endif
namebuf, sizeof(namebuf), NULL, 0, NI_NUMERICHOST);
ff_url_join(url, sizeof(url), "rtp", NULL, namebuf,
port, "%s", optbuf);
@@ -1830,8 +1835,13 @@ redirect:
goto fail;
}
if (!getpeername(tcp_fd, (struct sockaddr*) &peer, &peer_len)) {
- getnameinfo((struct sockaddr*) &peer, peer_len, host, sizeof(host),
- NULL, 0, NI_NUMERICHOST);
+ getnameinfo((struct sockaddr*) &peer,
+#if HAVE_STRUCT_SOCKADDR_SA_LEN
+ ((struct sockaddr*) &peer)->sa_len,
+#else
+ peer_len,
+#endif
+ host, sizeof(host), NULL, 0, NI_NUMERICHOST);
}
/* request options supported by the server; this also detects server
@@ -2310,7 +2320,11 @@ static int sdp_read_header(AVFormatContext *s)
AVDictionary *opts = map_to_opts(rt);
err = getnameinfo((struct sockaddr*) &rtsp_st->sdp_ip,
+#if HAVE_STRUCT_SOCKADDR_SA_LEN
+ ((struct sockaddr*) &rtsp_st->sdp_ip)->sa_len,
+#else
sizeof(rtsp_st->sdp_ip),
+#endif
namebuf, sizeof(namebuf), NULL, 0, NI_NUMERICHOST);
if (err) {
av_log(s, AV_LOG_ERROR, "getnameinfo: %s\n", gai_strerror(err));

View File

@ -1,16 +0,0 @@
--- external/libmythdvdnav/dvdnav/dvdnav/dvdnav.h.orig 2018-01-11 12:39:22 UTC
+++ external/libmythdvdnav/dvdnav/dvdnav/dvdnav.h
@@ -33,11 +33,11 @@
extern "C" {
#endif
-#include <dvdnav/dvd_types.h>
+#include "dvd_types.h"
#include <dvdread/dvd_reader.h>
#include <dvdread/nav_types.h>
#include <dvdread/ifo_types.h> /* For vm_cmd_t */
-#include <dvdnav/dvdnav_events.h>
+#include "dvdnav_events.h"
#include "compat.h"

View File

@ -1,18 +0,0 @@
--- libs/libmythmetadata/imagemetadata.cpp.orig 2019-07-07 08:48:08 UTC
+++ libs/libmythmetadata/imagemetadata.cpp
@@ -7,14 +7,7 @@
#include "exitcodes.h" // for ffprobe
// libexiv2 for Exif metadata
-//#include <exiv2/exiv2.hpp>
-// Note: Older versions of Exiv2 don't have the exiv2.hpp include
-// file. Using image.hpp instead seems to work.
-#ifdef _MSC_VER
-#include <exiv2/src/image.hpp>
-#else
-#include <exiv2/image.hpp>
-#endif
+#include <exiv2/exiv2.hpp>
// To read FFMPEG Metadata
extern "C" {

View File

@ -1,11 +0,0 @@
--- libs/libmythtv/DVD/dvdringbuffer.h.orig 2018-01-11 12:39:22 UTC
+++ libs/libmythtv/DVD/dvdringbuffer.h
@@ -21,7 +21,7 @@ extern "C" {
#include "libavcodec/avcodec.h"
}
-#include "dvdnav/dvdnav.h"
+#include "../../../external/libmythdvdnav/dvdnav/dvdnav/dvdnav.h"
/** \class MythDVDContext
* \brief Encapsulates playback context at any given moment.

View File

@ -1,32 +0,0 @@
--- libs/libmythtv/videodev2.h.orig 2019-01-14 11:53:51 UTC
+++ libs/libmythtv/videodev2.h
@@ -53,25 +53,14 @@
* Hans Verkuil <hverkuil@xs4all.nl>
* et al.
*/
-#ifndef __LINUX_VIDEODEV2_H
+
+#ifdef __FreeBSD__
+#include <linux/videodev2.h>
+#elif !defined(__LINUX_VIDEODEV2_H)
#define __LINUX_VIDEODEV2_H
#include <sys/time.h>
-#ifdef __FreeBSD__
-#include <linux/input.h> // For __[us][0-9]+ types
-#define __le64 __u64
-#define __le32 __u32
-#define __le16 __u16
-#define __le8 __u8
-#define __be64 __u64
-#define __be32 __u32
-#define __be16 __u16
-#define __be8 __u8
-#else
-#include <linux/ioctl.h>
-#include <linux/types.h>
-#endif
#include <linux/v4l2-common.h>
#include <linux/v4l2-controls.h>

View File

@ -0,0 +1,30 @@
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
/*
* version.h
*
* Copyright (C) 2000 Holger Waechtler <holger@convergence.de>
* 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 _DVBVERSION_H_
#define _DVBVERSION_H_
#define DVB_API_VERSION 5
#define DVB_API_VERSION_MINOR 11
#endif /*_DVBVERSION_H_*/

View File

@ -0,0 +1,220 @@
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
/*
* video.h - DEPRECATED MPEG-TS video decoder API
*
* NOTE: should not be used on future drivers
*
* Copyright (C) 2000 Marcus Metzler <marcus@convergence.de>
* & Ralph Metzler <ralph@convergence.de>
* 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_DVBVIDEO_H_
#define _UAPI_DVBVIDEO_H_
#include <linux/types.h>
#ifndef __KERNEL__
#include <time.h>
#endif
typedef enum {
VIDEO_FORMAT_4_3, /* Select 4:3 format */
VIDEO_FORMAT_16_9, /* Select 16:9 format. */
VIDEO_FORMAT_221_1 /* 2.21:1 */
} video_format_t;
typedef enum {
VIDEO_PAN_SCAN, /* use pan and scan format */
VIDEO_LETTER_BOX, /* use letterbox format */
VIDEO_CENTER_CUT_OUT /* use center cut out format */
} video_displayformat_t;
typedef struct {
int w;
int h;
video_format_t aspect_ratio;
} video_size_t;
typedef enum {
VIDEO_SOURCE_DEMUX, /* Select the demux as the main source */
VIDEO_SOURCE_MEMORY /* If this source is selected, the stream
comes from the user through the write
system call */
} video_stream_source_t;
typedef enum {
VIDEO_STOPPED, /* Video is stopped */
VIDEO_PLAYING, /* Video is currently playing */
VIDEO_FREEZED /* Video is freezed */
} video_play_state_t;
/* Decoder commands */
#define VIDEO_CMD_PLAY (0)
#define VIDEO_CMD_STOP (1)
#define VIDEO_CMD_FREEZE (2)
#define VIDEO_CMD_CONTINUE (3)
/* Flags for VIDEO_CMD_FREEZE */
#define VIDEO_CMD_FREEZE_TO_BLACK (1 << 0)
/* Flags for VIDEO_CMD_STOP */
#define VIDEO_CMD_STOP_TO_BLACK (1 << 0)
#define VIDEO_CMD_STOP_IMMEDIATELY (1 << 1)
/* Play input formats: */
/* The decoder has no special format requirements */
#define VIDEO_PLAY_FMT_NONE (0)
/* The decoder requires full GOPs */
#define VIDEO_PLAY_FMT_GOP (1)
/* The structure must be zeroed before use by the application
This ensures it can be extended safely in the future. */
struct video_command {
__u32 cmd;
__u32 flags;
union {
struct {
__u64 pts;
} stop;
struct {
/* 0 or 1000 specifies normal speed,
1 specifies forward single stepping,
-1 specifies backward single stepping,
>1: playback at speed/1000 of the normal speed,
<-1: reverse playback at (-speed/1000) of the normal speed. */
__s32 speed;
__u32 format;
} play;
struct {
__u32 data[16];
} raw;
};
};
/* FIELD_UNKNOWN can be used if the hardware does not know whether
the Vsync is for an odd, even or progressive (i.e. non-interlaced)
field. */
#define VIDEO_VSYNC_FIELD_UNKNOWN (0)
#define VIDEO_VSYNC_FIELD_ODD (1)
#define VIDEO_VSYNC_FIELD_EVEN (2)
#define VIDEO_VSYNC_FIELD_PROGRESSIVE (3)
struct video_event {
__s32 type;
#define VIDEO_EVENT_SIZE_CHANGED 1
#define VIDEO_EVENT_FRAME_RATE_CHANGED 2
#define VIDEO_EVENT_DECODER_STOPPED 3
#define VIDEO_EVENT_VSYNC 4
/* unused, make sure to use atomic time for y2038 if it ever gets used */
long timestamp;
union {
video_size_t size;
unsigned int frame_rate; /* in frames per 1000sec */
unsigned char vsync_field; /* unknown/odd/even/progressive */
} u;
};
struct video_status {
int video_blank; /* blank video on freeze? */
video_play_state_t play_state; /* current state of playback */
video_stream_source_t stream_source; /* current source (demux/memory) */
video_format_t video_format; /* current aspect ratio of stream*/
video_displayformat_t display_format;/* selected cropping mode */
};
struct video_still_picture {
char __user *iFrame; /* pointer to a single iframe in memory */
__s32 size;
};
typedef __u16 video_attributes_t;
/* bits: descr. */
/* 15-14 Video compression mode (0=MPEG-1, 1=MPEG-2) */
/* 13-12 TV system (0=525/60, 1=625/50) */
/* 11-10 Aspect ratio (0=4:3, 3=16:9) */
/* 9- 8 permitted display mode on 4:3 monitor (0=both, 1=only pan-sca */
/* 7 line 21-1 data present in GOP (1=yes, 0=no) */
/* 6 line 21-2 data present in GOP (1=yes, 0=no) */
/* 5- 3 source resolution (0=720x480/576, 1=704x480/576, 2=352x480/57 */
/* 2 source letterboxed (1=yes, 0=no) */
/* 0 film/camera mode (0=
*camera, 1=film (625/50 only)) */
/* bit definitions for capabilities: */
/* can the hardware decode MPEG1 and/or MPEG2? */
#define VIDEO_CAP_MPEG1 1
#define VIDEO_CAP_MPEG2 2
/* can you send a system and/or program stream to video device?
(you still have to open the video and the audio device but only
send the stream to the video device) */
#define VIDEO_CAP_SYS 4
#define VIDEO_CAP_PROG 8
/* can the driver also handle SPU, NAVI and CSS encoded data?
(CSS API is not present yet) */
#define VIDEO_CAP_SPU 16
#define VIDEO_CAP_NAVI 32
#define VIDEO_CAP_CSS 64
#define VIDEO_STOP _IO('o', 21)
#define VIDEO_PLAY _IO('o', 22)
#define VIDEO_FREEZE _IO('o', 23)
#define VIDEO_CONTINUE _IO('o', 24)
#define VIDEO_SELECT_SOURCE _IO('o', 25)
#define VIDEO_SET_BLANK _IO('o', 26)
#define VIDEO_GET_STATUS _IOR('o', 27, struct video_status)
#define VIDEO_GET_EVENT _IOR('o', 28, struct video_event)
#define VIDEO_SET_DISPLAY_FORMAT _IO('o', 29)
#define VIDEO_STILLPICTURE _IOW('o', 30, struct video_still_picture)
#define VIDEO_FAST_FORWARD _IO('o', 31)
#define VIDEO_SLOWMOTION _IO('o', 32)
#define VIDEO_GET_CAPABILITIES _IOR('o', 33, unsigned int)
#define VIDEO_CLEAR_BUFFER _IO('o', 34)
#define VIDEO_SET_STREAMTYPE _IO('o', 36)
#define VIDEO_SET_FORMAT _IO('o', 37)
#define VIDEO_GET_SIZE _IOR('o', 55, video_size_t)
/**
* VIDEO_GET_PTS
*
* Read the 33 bit presentation time stamp as defined
* in ITU T-REC-H.222.0 / ISO/IEC 13818-1.
*
* The PTS should belong to the currently played
* frame if possible, but may also be a value close to it
* like the PTS of the last decoded frame or the last PTS
* extracted by the PES parser.
*/
#define VIDEO_GET_PTS _IOR('o', 57, __u64)
/* Read the number of displayed frames since the decoder was started */
#define VIDEO_GET_FRAME_COUNT _IOR('o', 58, __u64)
#define VIDEO_COMMAND _IOWR('o', 59, struct video_command)
#define VIDEO_TRY_COMMAND _IOWR('o', 60, struct video_command)
#endif /* _UAPI_DVBVIDEO_H_ */

View File

@ -33,7 +33,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
@ -122,6 +121,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
@ -168,6 +168,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
@ -175,17 +176,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
@ -339,7 +336,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
@ -438,7 +434,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
@ -468,8 +463,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
@ -527,188 +520,172 @@ 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
%%BINDINGS%%%%SITE_PERL%%/IO/Socket/INET/MythTV.pm
%%BINDINGS%%%%SITE_PERL%%/MythTV.pm
%%BINDINGS%%%%SITE_PERL%%/MythTV/Channel.pm
%%BINDINGS%%%%SITE_PERL%%/MythTV/Program.pm
%%BINDINGS%%%%SITE_PERL%%/MythTV/Recording.pm
%%BINDINGS%%%%SITE_PERL%%/MythTV/StorageGroup.pm
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV-30.0._1-py%%PYTHON_VER%%.egg-info
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV-31.0._1-py%%PYTHON_VER%%.egg-info
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__init__.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__init__.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/__init__.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/_conn_mysqldb.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/_conn_oursql.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/altdict.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/connections.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/database.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/dataheap.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/exceptions.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/logging.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/methodheap.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/msearch.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/mythproto.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/static.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/__pycache__/system.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/_conn_mysqldb.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/_conn_mysqldb.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/_conn_oursql.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/_conn_oursql.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/altdict.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/altdict.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/connections.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/connections.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/database.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/database.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/dataheap.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/dataheap.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/exceptions.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/exceptions.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/logging.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/logging.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/methodheap.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/methodheap.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/msearch.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/msearch.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/mythproto.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/mythproto.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/__init__.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/__init__.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/__pycache__/__init__.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/__pycache__/_version.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/__pycache__/send.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/__pycache__/utilities.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/_version.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/_version.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/send.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/send.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/utilities.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/services_api/utilities.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/static.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/static.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/system.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/system.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__init__.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__init__.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/__init__.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/cache.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/cache_engine.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/cache_file.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/cache_null.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/locales.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/pager.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/request.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/tmdb_api.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/tmdb_auth.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/tmdb_exceptions.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/__pycache__/util.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/cache.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/cache.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/cache_engine.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/cache_engine.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/cache_file.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/cache_file.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/cache_null.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/cache_null.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/locales.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/locales.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/pager.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/pager.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/request.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/request.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/tmdb_api.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/tmdb_api.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/tmdb_auth.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/tmdb_auth.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/tmdb_exceptions.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/tmdb_exceptions.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/util.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/tmdb3/util.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/XSLT/tvdbCollection.xsl
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/XSLT/tvdbQuery.xsl
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/XSLT/tvdbVideo.xsl
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/__init__.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/__init__.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/__pycache__/__init__.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/__pycache__/requests_cache_compatability.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/__pycache__/tvdbXslt.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/__pycache__/tvdb_api.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/__pycache__/tvdb_create_key.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/__pycache__/tvdb_exceptions.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/__pycache__/tvdb_ui.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/requests_cache_compatability.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/requests_cache_compatability.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdbXslt.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdbXslt.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdb_api.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdb_api.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdb_create_key.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdb_create_key.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdb_exceptions.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdb_exceptions.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdb_ui.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/ttvdb/tvdb_ui.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__init__.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__init__.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__pycache__/__init__.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__pycache__/altdict.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__pycache__/dequebuffer.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__pycache__/dicttoxml.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__pycache__/dt.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__pycache__/enum.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__pycache__/mixin.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__pycache__/other.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/__pycache__/singleton.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/altdict.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/altdict.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/dequebuffer.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/dequebuffer.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/dicttoxml.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/dicttoxml.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/dt.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/dt.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/enum.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/enum.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/mixin.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/mixin.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/other.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/other.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/singleton.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/utility/singleton.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/wikiscripts/__init__.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/wikiscripts/__init__.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/wikiscripts/__pycache__/__init__.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/wikiscripts/__pycache__/wikiscripts.cpython-37.pyc
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/wikiscripts/wikiscripts.py
%%BINDINGS%%%%PYTHON_SITELIBDIR%%/MythTV/wikiscripts/wikiscripts.pyc
%%DATADIR%%/CDS_scpd.xml
%%DATADIR%%/CMGR_scpd.xml
%%DATADIR%%/MFEXML_scpd.xml
@ -727,6 +704,13 @@ lib/mythtv/filters/libyadif.so
%%DATADIR%%/database/mc.sql
%%DATADIR%%/devicemaster.xml
%%DATADIR%%/deviceslave.xml
%%DATADIR%%/externrecorder/ffmpeg-channels.conf
%%DATADIR%%/externrecorder/ffmpeg.conf
%%DATADIR%%/externrecorder/gstreamer-sdi.conf
%%DATADIR%%/externrecorder/twitch-channels.conf
%%DATADIR%%/externrecorder/twitch.conf
%%DATADIR%%/externrecorder/vlc-channels.conf
%%DATADIR%%/externrecorder/vlc.conf
%%DATADIR%%/fonts/DroidSans-Bold.ttf
%%DATADIR%%/fonts/DroidSans.ttf
%%DATADIR%%/fonts/DroidSansMono.ttf