Update to MPlayer 20140106 snapshot.

ok edd@
This commit is contained in:
brad 2014-01-10 21:52:29 +00:00
parent a0d6db2caf
commit d9dc8254d4
11 changed files with 98 additions and 432 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.230 2014/01/02 12:21:49 sthen Exp $
# $OpenBSD: Makefile,v 1.231 2014/01/10 21:52:29 brad Exp $
SHARED_ONLY= Yes
@ -7,9 +7,8 @@ ONLY_FOR_ARCHS = ${GCC4_ARCHS}
COMMENT = movie player supporting many formats
V = 20130819
V = 20140106
FFMPEG_V = 20131216
REVISION = 2
SUBST_VARS += PREFIX CONFDIR
@ -26,7 +25,7 @@ HOMEPAGE = http://www.mplayerhq.hu/
PERMIT_PACKAGE_CDROM = patents
PERMIT_PACKAGE_FTP = Yes
WANTLIB = GL X11 Xext Xinerama Xss Xv Xxf86dga Xxf86vm ass avcodec \
WANTLIB = EGL GL X11 Xext Xinerama Xss Xv Xxf86dga Xxf86vm ass avcodec \
avformat avutil bluray bz2 c cdda_interface cdda_paranoia \
crypto dv dvdnavmini dvdread enca fontconfig freetype \
fribidi jpeg m mng mp3lame ncurses ogg>=5 opus png postproc \
@ -76,14 +75,17 @@ CONFDIR = ${SYSCONFDIR}/mplayer
.if ${MACHINE_ARCH:Marm}
# uses ARM EABI
MPLAYER_ARCH= generic
MPLAYER_ARCH = generic
.else
MPLAYER_ARCH= ${MACHINE_ARCH}
MPLAYER_ARCH = ${MACHINE_ARCH}
.endif
# Add back fast math flag since we override CFLAGS
CFLAGS += -ffast-math
# PIE doesn't leave sufficient registers
.if ${MACHINE_ARCH:Mi386}
CFLAGS += -fomit-frame-pointer
CFLAGS += -fomit-frame-pointer
.endif
USE_GMAKE = Yes
@ -96,7 +98,7 @@ CONFIGURE_ARGS += --target="${MPLAYER_ARCH}-openbsd" \
--confdir=${CONFDIR} \
--mandir=${LOCALBASE}/man \
--extra-cflags="-I${LOCALBASE}/include" \
--extra-ldflags="-L${LOCALBASE}/lib" \
--extra-ldflags="-L${LOCALBASE}/lib -ffast-math" \
--extra-libs-mplayer="-lrtunes -lcrypto"
# CONFIGURE_ARGS that disable internal stuff
@ -146,7 +148,8 @@ CONFIGURE_ARGS += --disable-smb \
--disable-faac-lavc \
--disable-faad \
--disable-theora \
--disable-pulse
--disable-pulse \
--disable-relocatable
# internal tremor, external tremor, external libvorbis all conflict
# we choose libvorbis to enable encoding to vorbis
@ -212,7 +215,7 @@ EXAMPLEDIR = ${PREFIX}/share/examples/mplayer
# copy in rtunes and sndio backends
post-extract:
@cp ${FILESDIR}/ao_rtunes.c ${FILESDIR}/ao_sndio.c ${WRKSRC}/libao2
@cp ${FILESDIR}/ao_rtunes.c ${WRKSRC}/libao2
@cp ${FILESDIR}/ai_sndio.c ${WRKSRC}/stream
# link FFmpeg sources to where build expects

View File

@ -1,2 +1,2 @@
SHA256 (mplayer-20130819.tar.xz) = +sUhhiXfXp+jUAILtZqMlcHuUaQ5u7ARJd8CXwNLfCc=
SIZE (mplayer-20130819.tar.xz) = 5270956
SHA256 (mplayer-20140106.tar.xz) = cll7+pWtmcggOIGbFRhDZ46j4lyOt6cVpXFE7KNHGys=
SIZE (mplayer-20140106.tar.xz) = 5277680

View File

@ -1,293 +0,0 @@
/*
* Copyright (c) 2008 Alexandre Ratchov <alex@caoua.org>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#include <sys/types.h>
#include <poll.h>
#include <errno.h>
#include <sndio.h>
#include "config.h"
#include "mp_msg.h"
#include "mixer.h"
#include "help_mp.h"
#include "libaf/af_format.h"
#include "audio_out.h"
#include "audio_out_internal.h"
static ao_info_t info = {
"sndio audio output",
"sndio",
"Alexandre Ratchov <alex@caoua.org>",
""
};
LIBAO_EXTERN(sndio)
static struct sio_hdl *hdl = NULL;
struct pollfd *pfds;
static struct sio_par par;
static int delay, vol, havevol;
#define SILENCE_NMAX 0x1000
static char silence[SILENCE_NMAX];
/*
* misc parameters (volume, etc...)
*/
static int control(int cmd, void *arg)
{
ao_control_vol_t *ctl = arg;
switch (cmd) {
case AOCONTROL_GET_VOLUME:
if (!havevol)
return CONTROL_FALSE;
ctl->left = ctl->right = vol * 100 / SIO_MAXVOL;
break;
case AOCONTROL_SET_VOLUME:
if (!havevol)
return CONTROL_FALSE;
sio_setvol(hdl, ctl->left * SIO_MAXVOL / 100);
break;
default:
return CONTROL_UNKNOWN;
}
return CONTROL_OK;
}
/*
* call-back invoked to notify of the hardware position
*/
static void movecb(void *addr, int delta)
{
delay -= delta * (int)(par.bps * par.pchan);
}
/*
* call-back invoked to notify about volume changes
*/
static void volcb(void *addr, unsigned newvol)
{
vol = newvol;
}
/*
* open device and setup parameters
* return: 1 = success, 0 = failure
*/
static int init(int rate, int channels, int format, int flags)
{
struct af_to_par {
int format, bits, sig, le;
} af_to_par[] = {
{AF_FORMAT_U8, 8, 0, 0},
{AF_FORMAT_S8, 8, 1, 0},
{AF_FORMAT_U16_LE, 16, 0, 1},
{AF_FORMAT_U16_BE, 16, 0, 0},
{AF_FORMAT_S16_LE, 16, 1, 1},
{AF_FORMAT_S16_BE, 16, 1, 0},
{AF_FORMAT_U24_LE, 16, 0, 1},
{AF_FORMAT_U24_BE, 24, 0, 0},
{AF_FORMAT_S24_LE, 24, 1, 1},
{AF_FORMAT_S24_BE, 24, 1, 0},
{AF_FORMAT_U32_LE, 32, 0, 1},
{AF_FORMAT_U32_BE, 32, 0, 0},
{AF_FORMAT_S32_LE, 32, 1, 1},
{AF_FORMAT_S32_BE, 32, 1, 0}
}, *p;
int i, bpf, ac3 = 0;
hdl = sio_open(NULL, SIO_PLAY, 0);
if (hdl == NULL) {
mp_msg(MSGT_AO, MSGL_ERR, "ao2: can't open sndio\n");
return 0;
}
sio_initpar(&par);
for (i = 0, p = af_to_par;; i++, p++) {
if (i == sizeof(af_to_par) / sizeof(struct af_to_par)) {
if (format == AF_FORMAT_AC3_BE ||
format == AF_FORMAT_AC3_LE)
ac3 = 1;
mp_msg(MSGT_AO, MSGL_V, "ao2: unsupported format\n");
par.bits = 16;
par.sig = 1;
par.le = SIO_LE_NATIVE;
break;
}
if (p->format == format) {
par.bits = p->bits;
par.sig = p->sig;
if (p->bits > 8)
par.le = p->le;
if (p->bits != SIO_BPS(p->bits))
par.bps = p->bits / 8;
break;
}
}
par.rate = rate;
par.pchan = channels;
par.appbufsz = par.rate * 250 / 1000; /* 250ms buffer */
par.round = par.rate * 10 / 1000; /* 10ms block size */
if (!sio_setpar(hdl, &par)) {
mp_msg(MSGT_AO, MSGL_ERR, "ao2: couldn't set params\n");
goto bad_close;
}
if (!sio_getpar(hdl, &par)) {
mp_msg(MSGT_AO, MSGL_ERR, "ao2: couldn't get params\n");
goto bad_close;
}
if (par.bits == 8 && par.bps == 1) {
format = par.sig ? AF_FORMAT_S8 : AF_FORMAT_U8;
} else if (par.bits == 16 && par.bps == 2) {
format = par.sig ?
(par.le ? AF_FORMAT_S16_LE : AF_FORMAT_S16_BE) :
(par.le ? AF_FORMAT_U16_LE : AF_FORMAT_U16_BE);
} else if ((par.bits == 24 || par.msb) && par.bps == 3) {
format = par.sig ?
(par.le ? AF_FORMAT_S24_LE : AF_FORMAT_S24_BE) :
(par.le ? AF_FORMAT_U24_LE : AF_FORMAT_U24_BE);
} else if ((par.bits == 32 || par.msb) && par.bps == 4) {
format = par.sig ?
(par.le ? AF_FORMAT_S32_LE : AF_FORMAT_S32_BE) :
(par.le ? AF_FORMAT_U32_LE : AF_FORMAT_U32_BE);
} else {
mp_msg(MSGT_AO, MSGL_ERR, "ao2: couldn't set format\n");
goto bad_close;
}
pfds = malloc(sizeof(struct pollfd) * sio_nfds(hdl));
if (pfds == NULL) {
mp_msg(MSGT_AO, MSGL_ERR, "ao2: couldn't allocate poll fds\n");
goto bad_close;
}
bpf = par.bps * par.pchan;
ao_data.channels = par.pchan;
ao_data.format = ac3 ? AF_FORMAT_AC3_NE : format;
ao_data.bps = bpf * par.rate;
ao_data.buffersize = par.bufsz * bpf;
ao_data.outburst = par.round * bpf;
ao_data.samplerate = rate;
havevol = sio_onvol(hdl, volcb, NULL);
sio_onmove(hdl, movecb, NULL);
delay = 0;
if (!sio_start(hdl)) {
mp_msg(MSGT_AO, MSGL_ERR, "ao2: init: couldn't start\n");
goto bad_free;
}
return 1;
bad_free:
free(pfds);
bad_close:
sio_close(hdl);
hdl = 0;
return 0;
}
/*
* close device
*/
static void uninit(int immed)
{
if (hdl)
sio_close(hdl);
}
/*
* stop playing and empty buffers (for seeking/pause)
*/
static void reset(void)
{
if (!sio_stop(hdl)) {
mp_msg(MSGT_AO, MSGL_ERR, "ao2: reset: couldn't stop\n");
}
delay = 0;
if (!sio_start(hdl)) {
mp_msg(MSGT_AO, MSGL_ERR, "ao2: reset: couldn't start\n");
}
}
/*
* how many bytes can be played without blocking
*/
static int get_space(void)
{
int bufused, revents, n;
/*
* call poll() and sio_revents(), so the
* delay counter is updated
*/
n = sio_pollfd(hdl, pfds, POLLOUT);
while (poll(pfds, n, 0) < 0 && errno == EINTR)
; /* nothing */
revents = sio_revents(hdl, pfds);
return par.bufsz * par.pchan * par.bps - delay;
}
/*
* play given number of bytes until sio_write() blocks
*/
static int play(void *data, int len, int flags)
{
int n;
n = sio_write(hdl, data, len);
delay += n;
if (flags & AOPLAY_FINAL_CHUNK)
reset();
return n;
}
/*
* return: delay in seconds between first and last sample in buffer
*/
static float get_delay(void)
{
return (float)delay / (par.bps * par.pchan * par.rate);
}
/*
* stop playing, keep buffers (for pause)
*/
static void audio_pause(void)
{
reset();
}
/*
* resume playing, after audio_pause()
*/
static void audio_resume(void)
{
int n, count, todo;
/*
* we want to start with buffers full, because mplayer uses
* get_space() pointer as clock, which would cause video to
* accelerate while buffers are filled.
*/
todo = par.bufsz * par.pchan * par.bps;
while (todo > 0) {
count = todo;
if (count > SILENCE_NMAX)
count = SILENCE_NMAX;
n = sio_write(hdl, silence, count);
if (n == 0)
break;
todo -= n;
delay += n;
}
}

View File

@ -1,7 +1,7 @@
$OpenBSD: patch-DOCS_man_en_mplayer_1,v 1.8 2013/09/06 23:14:40 brad Exp $
--- DOCS/man/en/mplayer.1.orig Mon Aug 19 10:49:18 2013
+++ DOCS/man/en/mplayer.1 Tue Aug 20 02:39:05 2013
@@ -1541,7 +1541,7 @@ May be negative.
$OpenBSD: patch-DOCS_man_en_mplayer_1,v 1.9 2014/01/10 21:52:29 brad Exp $
--- DOCS/man/en/mplayer.1.orig Mon Jan 6 17:03:10 2014
+++ DOCS/man/en/mplayer.1 Mon Jan 6 17:22:43 2014
@@ -1542,7 +1542,7 @@ May be negative.
.
.TP
.B \-cdrom\-device <path to device>
@ -10,7 +10,7 @@ $OpenBSD: patch-DOCS_man_en_mplayer_1,v 1.8 2013/09/06 23:14:40 brad Exp $
.
.TP
.B \-channels <number> (also see \-af channels)
@@ -12298,11 +12298,11 @@ mplayer \-vo zr2 \-vf scale=352:288,zrmjpeg file.avi
@@ -12299,11 +12299,11 @@ mplayer \-vo zr2 \-vf scale=352:288,zrmjpeg file.avi
.PP
.B Play DTS-CD with passthrough:
.nf

View File

@ -1,6 +1,6 @@
$OpenBSD: patch-Makefile,v 1.27 2013/09/06 23:14:40 brad Exp $
--- Makefile.orig Mon Aug 19 10:49:12 2013
+++ Makefile Tue Aug 20 02:49:57 2013
$OpenBSD: patch-Makefile,v 1.28 2014/01/10 21:52:29 brad Exp $
--- Makefile.orig Mon Jan 6 17:02:58 2014
+++ Makefile Mon Jan 6 17:22:43 2014
@@ -35,6 +35,7 @@ OS_FEATURE-$(VSSCANF) += osdep/vsscanf.
# conditional source declarations
SRCS_AUDIO_INPUT-$(ALSA) += stream/ai_alsa.c
@ -9,15 +9,7 @@ $OpenBSD: patch-Makefile,v 1.27 2013/09/06 23:14:40 brad Exp $
SRCS_COMMON-$(AUDIO_INPUT) += $(SRCS_AUDIO_INPUT-yes)
SRCS_COMMON-$(BITMAP_FONT) += sub/font_load.c
SRCS_COMMON-$(CDDA) += stream/stream_cdda.c \
@@ -573,6 +574,7 @@ SRCS_MPLAYER-$(SDL) += libao2/ao_sdl.c
libvo/sdl_common.c
SRCS_MPLAYER-$(SGIAUDIO) += libao2/ao_sgi.c
SRCS_MPLAYER-$(SUNAUDIO) += libao2/ao_sun.c
+SRCS_MPLAYER-$(SNDIO) += libao2/ao_sndio.c
SRCS_MPLAYER-$(SVGA) += libvo/vo_svga.c
SRCS_MPLAYER-$(TDFXFB) += libvo/vo_tdfxfb.c
SRCS_MPLAYER-$(TDFXVID) += libvo/vo_tdfx_vid.c
@@ -638,7 +640,8 @@ SRCS_MPLAYER = command.c \
@@ -639,7 +640,8 @@ SRCS_MPLAYER = command.c \
libvo/vo_mpegpes.c \
libvo/vo_null.c \
sub/spuenc.c \

View File

@ -1,32 +1,7 @@
$OpenBSD: patch-configure,v 1.72 2013/12/12 21:41:54 brad Exp $
--- configure.orig Mon Aug 19 10:49:15 2013
+++ configure Wed Dec 11 22:26:11 2013
@@ -523,6 +523,7 @@ Audio output:
--disable-nas disable NAS audio output [autodetect]
--disable-sgiaudio disable SGI audio output [autodetect]
--disable-sunaudio disable Sun audio output [autodetect]
+ --disable-sndio disable OpenBSD sndio audio output [autodetect]
--disable-kai disable KAI audio output [autodetect]
--disable-dart disable DART audio output [autodetect]
--disable-win32waveout disable Windows waveout audio output [autodetect]
@@ -756,6 +757,7 @@ _xf86keysym=auto
_mlib=no #broken, thus disabled
_sgiaudio=auto
_sunaudio=auto
+_sndio=auto
_alsa=auto
_fastmemcpy=yes
hardcoded_tables=no
@@ -1193,6 +1195,8 @@ for ac_option do
--disable-mlib) _mlib=no ;;
--enable-sunaudio) _sunaudio=yes ;;
--disable-sunaudio) _sunaudio=no ;;
+ --enable-sndio) _sndio=yes ;;
+ --disable-sndio) _sndio=no ;;
--enable-sgiaudio) _sgiaudio=yes ;;
--disable-sgiaudio) _sgiaudio=no ;;
--enable-alsa) _alsa=yes ;;
@@ -1491,36 +1495,36 @@ echo configuration: $configuration > "$TMPLOG"
$OpenBSD: patch-configure,v 1.73 2014/01/10 21:52:29 brad Exp $
--- configure.orig Mon Jan 6 17:03:04 2014
+++ configure Mon Jan 6 17:22:43 2014
@@ -1497,36 +1497,36 @@ echo configuration: $configuration > "$TMPLOG"
echo >> "$TMPLOG"
@ -92,7 +67,7 @@ $OpenBSD: patch-configure,v 1.72 2013/12/12 21:41:54 brad Exp $
list_subparts() {
pattern="s/^[^#]*${1}.*([^ ,]*, *\([^ ,)]*\).*/\1_${2}/p"
sed -n "$pattern" ffmpeg/libav${3} | toupper
@@ -2349,7 +2353,7 @@ case "$host_arch" in
@@ -2364,7 +2364,7 @@ case "$host_arch" in
arch='sparc'
iproc='sparc'
if test "$host_arch" = "sparc64" ; then
@ -101,7 +76,7 @@ $OpenBSD: patch-configure,v 1.72 2013/12/12 21:41:54 brad Exp $
proc='ultrasparc'
def_fast_64bit='#define HAVE_FAST_64BIT 1'
elif sunos ; then
@@ -2672,7 +2676,7 @@ cat > $TMPC << EOF
@@ -2692,7 +2692,7 @@ cat > $TMPC << EOF
int ff_extern;
EOF
cc_check -c || die "Symbol mangling check failed."
@ -110,30 +85,7 @@ $OpenBSD: patch-configure,v 1.72 2013/12/12 21:41:54 brad Exp $
extern_prefix=${sym%%ff_extern*}
def_extern_asm="#define EXTERN_ASM $extern_prefix"
def_extern_prefix="#define EXTERN_PREFIX \"$extern_prefix\""
@@ -5776,6 +5780,22 @@ fi
echores "$_sunaudio"
+echocheck "sndio audio"
+if test "$_sndio" = auto ; then
+ _sndio=no
+ statement_check sndio.h 'sio_initpar(NULL)' -lsndio && _sndio=yes
+fi
+if test "$_sndio" = yes ; then
+ def_sndio='#define CONFIG_SNDIO_AUDIO 1'
+ _aomodules="sndio $_aomodules"
+ extra_ldflags="$extra_ldflags -lsndio"
+else
+ def_sndio='#undef CONFIG_SNDIO_AUDIO'
+ _noaomodules="sndio $_noaomodules"
+fi
+echores "$_sndio"
+
+
def_mlib='#define CONFIG_MLIB 0'
if sunos; then
echocheck "Sun mediaLib"
@@ -6087,7 +6107,7 @@ echocheck "cdparanoia"
@@ -6153,7 +6153,7 @@ echocheck "cdparanoia"
if test "$_cdparanoia" = auto ; then
_cdparanoia=no
for inc_tmp in "" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
@ -142,7 +94,7 @@ $OpenBSD: patch-configure,v 1.72 2013/12/12 21:41:54 brad Exp $
_cdparanoia=yes && extra_cflags="$extra_cflags $inc_tmp" && break
done
fi
@@ -8033,6 +8053,7 @@ extra_ldflags="$extra_ldflags -lm"
@@ -8099,6 +8099,7 @@ extra_ldflags="$extra_ldflags $libm"
# XML documentation tests
echocheck "XML catalogs"
for try_catalog in \
@ -150,7 +102,7 @@ $OpenBSD: patch-configure,v 1.72 2013/12/12 21:41:54 brad Exp $
/etc/sgml/catalog \
/usr/share/xml/docbook/*/catalog.xml \
/opt/local/share/xml/docbook-xml/*/catalog.xml \
@@ -8060,6 +8081,7 @@ fi
@@ -8126,6 +8127,7 @@ fi
echocheck "XML chunked stylesheet"
for try_chunk_xsl in \
@ -158,7 +110,7 @@ $OpenBSD: patch-configure,v 1.72 2013/12/12 21:41:54 brad Exp $
/usr/share/xml/docbook/*/html/chunk.xsl \
/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/html/chunk.xsl \
/usr/share/sgml/docbook/yelp/docbook/html/chunk.xsl \
@@ -8085,6 +8107,7 @@ fi
@@ -8151,6 +8153,7 @@ fi
echocheck "XML monolithic stylesheet"
for try_docbook_xsl in \
@ -166,7 +118,7 @@ $OpenBSD: patch-configure,v 1.72 2013/12/12 21:41:54 brad Exp $
/usr/share/xml/docbook/*/html/docbook.xsl \
/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/html/docbook.xsl \
/usr/share/sgml/docbook/yelp/docbook/html/docbook.xsl \
@@ -8138,6 +8161,7 @@ EOF
@@ -8204,6 +8207,7 @@ EOF
echocheck "XML DTD"
#FIXME: This should prefer higher version numbers, not the other way around ..
for try_dtd in \
@ -174,19 +126,3 @@ $OpenBSD: patch-configure,v 1.72 2013/12/12 21:41:54 brad Exp $
/usr/share/xml/docbook/*/dtd/4*/docbookx.dtd \
/usr/share/xml/docbook/*/docbookx.dtd \
/usr/share/sgml/docbook/*/docbookx.dtd \
@@ -8413,6 +8437,7 @@ SPEEX = $_speex
STREAM_CACHE = $_stream_cache
SGIAUDIO = $_sgiaudio
SUNAUDIO = $_sunaudio
+SNDIO = $_sndio
SVGA = $_svga
TDFXFB = $_tdfxfb
TDFXVID = $_tdfxvid
@@ -8846,6 +8871,7 @@ $def_ossaudio_devmixer
$def_pulse
$def_sgiaudio
$def_sunaudio
+$def_sndio
$def_win32waveout
$def_ladspa

View File

@ -1,15 +1,7 @@
$OpenBSD: patch-libao2_audio_out_c,v 1.5 2013/01/21 16:23:05 brad Exp $
--- libao2/audio_out.c.orig Sat May 5 01:09:58 2012
+++ libao2/audio_out.c Sat May 5 01:30:00 2012
@@ -42,6 +42,7 @@ extern const ao_functions_t audio_out_null;
extern const ao_functions_t audio_out_alsa;
extern const ao_functions_t audio_out_nas;
extern const ao_functions_t audio_out_sdl;
+extern const ao_functions_t audio_out_sndio;
extern const ao_functions_t audio_out_sun;
extern const ao_functions_t audio_out_sgi;
extern const ao_functions_t audio_out_win32;
@@ -54,6 +55,7 @@ extern const ao_functions_t audio_out_v4l2;
$OpenBSD: patch-libao2_audio_out_c,v 1.6 2014/01/10 21:52:29 brad Exp $
--- libao2/audio_out.c.orig Mon Jan 6 17:02:58 2014
+++ libao2/audio_out.c Mon Jan 6 17:27:38 2014
@@ -55,6 +55,7 @@ extern const ao_functions_t audio_out_v4l2;
extern const ao_functions_t audio_out_mpegpes;
extern const ao_functions_t audio_out_pcm;
extern const ao_functions_t audio_out_pss;
@ -17,21 +9,11 @@ $OpenBSD: patch-libao2_audio_out_c,v 1.5 2013/01/21 16:23:05 brad Exp $
const ao_functions_t* const audio_out_drivers[] =
{
@@ -82,6 +84,9 @@ const ao_functions_t* const audio_out_drivers[] =
#ifdef CONFIG_SGI_AUDIO
&audio_out_sgi,
#endif
+#ifdef CONFIG_SNDIO_AUDIO
+ &audio_out_sndio,
+#endif
#ifdef CONFIG_SUN_AUDIO
&audio_out_sun,
#endif
@@ -120,6 +125,7 @@ const ao_functions_t* const audio_out_drivers[] =
@@ -124,6 +125,7 @@ const ao_functions_t* const audio_out_drivers[] =
&audio_out_null,
// should not be auto-selected:
&audio_out_pcm,
+ &audio_out_rtunes,
+ &audio_out_rtunes,
NULL
};

View File

@ -0,0 +1,28 @@
$OpenBSD: patch-libmpcodecs_vd_ffmpeg_c,v 1.3 2014/01/10 21:52:29 brad Exp $
Deal with older FFmpeg.
--- libmpcodecs/vd_ffmpeg.c.orig Mon Jan 6 17:31:30 2014
+++ libmpcodecs/vd_ffmpeg.c Mon Jan 6 17:51:42 2014
@@ -254,8 +254,12 @@ static void set_dr_slice_settings(struct AVCodecContex
ctx->do_dr1 = (lavc_codec->capabilities & CODEC_CAP_DR1) &&
lavc_codec->id != AV_CODEC_ID_INTERPLAY_VIDEO &&
+#if 0
lavc_codec->id != AV_CODEC_ID_H264 &&
lavc_codec->id != AV_CODEC_ID_HEVC;
+#else
+ lavc_codec->id != AV_CODEC_ID_H264;
+#endif
ctx->nonref_dr = 0;
// TODO: fix and enable again. This currently causes issues when using filters
// and seeking, usually failing with the "Ran out of numbered images" message,
@@ -940,7 +944,7 @@ static mp_image_t *decode(sh_video_t *sh, void *data,
ret = avcodec_decode_video2(avctx, pic, &got_picture, &pkt);
pkt.data = NULL;
pkt.size = 0;
- av_packet_free_side_data(&pkt);
+ av_destruct_packet(&pkt);
// even when we do dr we might actually get a buffer we had
// FFmpeg allocate - this mostly happens with nonref_dr.

View File

@ -1,10 +1,10 @@
$OpenBSD: patch-libmpdemux_demux_lavf_c,v 1.3 2013/09/06 23:14:40 brad Exp $
$OpenBSD: patch-libmpdemux_demux_lavf_c,v 1.4 2014/01/10 21:52:29 brad Exp $
Deal with older FFmpeg.
--- libmpdemux/demux_lavf.c.orig Tue Aug 20 03:13:59 2013
+++ libmpdemux/demux_lavf.c Tue Aug 20 03:14:31 2013
@@ -441,7 +441,7 @@ static void handle_stream(demuxer_t *demuxer, AVFormat
--- libmpdemux/demux_lavf.c.orig Mon Jan 6 17:03:23 2014
+++ libmpdemux/demux_lavf.c Mon Jan 6 17:22:43 2014
@@ -442,7 +442,7 @@ static void handle_stream(demuxer_t *demuxer, AVFormat
else if (codec->codec_id == AV_CODEC_ID_MOV_TEXT)
type = 'm';
else if (codec->codec_id == AV_CODEC_ID_SSA

View File

@ -1,9 +1,9 @@
$OpenBSD: patch-libmpdemux_mp_taglists_c,v 1.5 2013/09/06 23:14:40 brad Exp $
$OpenBSD: patch-libmpdemux_mp_taglists_c,v 1.6 2014/01/10 21:52:29 brad Exp $
Deal with older FFmpeg.
--- libmpdemux/mp_taglists.c.orig Tue Aug 20 03:11:43 2013
+++ libmpdemux/mp_taglists.c Tue Aug 20 03:12:27 2013
--- libmpdemux/mp_taglists.c.orig Mon Jan 6 17:03:23 2014
+++ libmpdemux/mp_taglists.c Mon Jan 6 17:31:04 2014
@@ -29,8 +29,8 @@
static const struct AVCodecTag mp_wav_tags[] = {
{ AV_CODEC_ID_ADPCM_4XM, MKTAG('4', 'X', 'M', 'A') },
@ -14,3 +14,21 @@ Deal with older FFmpeg.
{ AV_CODEC_ID_ADPCM_DTK, MKTAG('D', 'T', 'K', ' ') },
#endif
{ AV_CODEC_ID_ADPCM_IMA_APC, MKTAG('A', 'P', 'C', 'A') },
@@ -109,7 +109,7 @@ static const struct AVCodecTag mp_codecid_override_tag
{ AV_CODEC_ID_ESCAPE130, MKTAG('E', '1', '3', '0') },
#endif
{ AV_CODEC_ID_FLV1, MKTAG('F', 'L', 'V', '1') },
-#if LIBAVUTIL_VERSION_MICRO >= 100
+#if 0
{ AV_CODEC_ID_ADPCM_G726LE, MKTAG('6', '2', '7', 'G') },
#endif
{ AV_CODEC_ID_G729, MKTAG('G', '7', '2', '9') },
@@ -158,7 +158,7 @@ static const struct AVCodecTag mp_bmp_tags[] = {
{ AV_CODEC_ID_DSICINVIDEO, MKTAG('D', 'C', 'I', 'V') },
{ AV_CODEC_ID_DXA, MKTAG('D', 'X', 'A', '1') },
{ AV_CODEC_ID_FLIC, MKTAG('f', 'l', 'i', 'c') },
-#if LIBAVUTIL_VERSION_MICRO >= 100
+#if 0
{ AV_CODEC_ID_HEVC, MKTAG('H', 'E', 'V', 'C') },
#endif
{ AV_CODEC_ID_IDCIN, MKTAG('I', 'D', 'C', 'I') },

View File

@ -1,7 +1,7 @@
$OpenBSD: patch-stream_stream_cdda_c,v 1.1 2013/01/21 16:23:05 brad Exp $
--- stream/stream_cdda.c.orig Sat May 5 02:18:19 2012
+++ stream/stream_cdda.c Sat May 5 02:18:45 2012
@@ -439,9 +439,11 @@ static int open_cdda(stream_t *st,int m, void* opts, i
$OpenBSD: patch-stream_stream_cdda_c,v 1.2 2014/01/10 21:52:29 brad Exp $
--- stream/stream_cdda.c.orig Mon Jan 6 17:02:57 2014
+++ stream/stream_cdda.c Mon Jan 6 17:22:43 2014
@@ -446,9 +446,11 @@ static int open_cdda(stream_t *st,int m, void* opts, i
else if(p->search_overlap == 0)
mode &= ~PARANOIA_MODE_OVERLAP;
#ifndef CONFIG_LIBCDIO