From 8d80881ed37307cb3f339e7e2d6642b16659094a Mon Sep 17 00:00:00 2001 From: Akce Date: Fri, 1 Feb 2019 07:35:12 +1100 Subject: [PATCH] omxplayer: update to 20190102. Among other things, the sync to latest version fixes: - keyboard input - ffmpeg 4.0/omxplayer hang at end of some media. Adds alsa-lib dependency. --- srcpkgs/omxplayer/patches/build.patch | 88 +++++------------- srcpkgs/omxplayer/patches/ffmpeg-4.0.1.patch | 93 -------------------- srcpkgs/omxplayer/template | 10 +-- 3 files changed, 29 insertions(+), 162 deletions(-) delete mode 100644 srcpkgs/omxplayer/patches/ffmpeg-4.0.1.patch diff --git a/srcpkgs/omxplayer/patches/build.patch b/srcpkgs/omxplayer/patches/build.patch index 8b88eba9683..85c9450422c 100644 --- a/srcpkgs/omxplayer/patches/build.patch +++ b/srcpkgs/omxplayer/patches/build.patch @@ -1,18 +1,23 @@ ---- Makefile.orig 2016-07-23 19:51:59.295696266 +0200 -+++ Makefile 2016-07-23 19:56:48.272223230 +0200 -@@ -2,9 +2,9 @@ include Makefile.include - +diff --git Makefile Makefile +index 5f4e414..c5b33f5 100644 +--- Makefile ++++ Makefile +@@ -1,10 +1,10 @@ +-CFLAGS=-pipe -mfloat-abi=hard -mcpu=arm1176jzf-s -fomit-frame-pointer -mabi=aapcs-linux -mtune=arm1176jzf-s -mfpu=vfp -Wno-psabi -mno-apcs-stack-check -g -mstructure-size-boundary=32 -mno-sched-prolog ++CFLAGS=-fomit-frame-pointer -mtune=arm1176jzf-s CFLAGS+=-std=c++0x -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -DTARGET_POSIX -DTARGET_LINUX -fPIC -DPIC -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CMAKE_CONFIG -D__VIDEOCORE4__ -U_FORTIFY_SOURCE -Wall -DHAVE_OMXLIB -DUSE_EXTERNAL_FFMPEG -DHAVE_LIBAVCODEC_AVCODEC_H -DHAVE_LIBAVUTIL_OPT_H -DHAVE_LIBAVUTIL_MEM_H -DHAVE_LIBAVUTIL_AVUTIL_H -DHAVE_LIBAVFORMAT_AVFORMAT_H -DHAVE_LIBAVFILTER_AVFILTER_H -DHAVE_LIBSWRESAMPLE_SWRESAMPLE_H -DOMX -DOMX_SKIP64BIT -ftree-vectorize -DUSE_EXTERNAL_OMX -DTARGET_RASPBERRY_PI -DUSE_EXTERNAL_LIBBCM_HOST --LDFLAGS+=-L./ -Lffmpeg_compiled/usr/local/lib/ -lc -lWFC -lGLESv2 -lEGL -lbcm_host -lopenmaxil -lfreetype -lz -+LDFLAGS+= -lc -lWFC -lGLESv2 -lEGL -lbcm_host -lopenmaxil -lfreetype -lz +-LDFLAGS=-L$(SDKSTAGE)/opt/vc/lib/ +-LDFLAGS+=-L./ -Lffmpeg_compiled/usr/local/lib/ -lc -lbrcmGLESv2 -lbrcmEGL -lbcm_host -lopenmaxil -lfreetype -lz -lasound ++LDFLAGS=-L$(XBPS_CROSS_BASE)/opt/vc/lib/ -Wl,-R/opt/vc/lib ++LDFLAGS+=-lc -lbrcmGLESv2 -lbrcmEGL -lbcm_host -lopenmaxil -lfreetype -lz -lasound --INCLUDES+=-I./ -Ilinux -Iffmpeg_compiled/usr/local/include/ -I /usr/include/dbus-1.0 -I /usr/lib/arm-linux-gnueabihf/dbus-1.0/include -+INCLUDES+= -I./ -Ilinux +-INCLUDES+=-I./ -Ilinux -Iffmpeg_compiled/usr/local/include/ -I /usr/include/dbus-1.0 -I /usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/freetype2 -isystem$(SDKSTAGE)/opt/vc/include -isystem$(SDKSTAGE)/opt/vc/include/interface/vcos/pthreads ++INCLUDES+=-I./ -Ilinux -I$(XBPS_CROSS_BASE)/usr/include/dbus-1.0 -I $(XBPS_CROSS_BASE)/usr/lib/dbus-1.0/include -I$(XBPS_CROSS_BASE)/usr/include/freetype2 -I$(XBPS_CROSS_BASE)/opt/vc/include -I$(XBPS_CROSS_BASE)/opt/vc/include/interface/vcos/pthreads DIST ?= omxplayer-dist - -@@ -39,7 +39,7 @@ SRC=linux/XMemUtils.cpp \ + STRIP ?= strip +@@ -41,7 +41,7 @@ SRC= linux/XMemUtils.cpp \ OBJS+=$(filter %.o,$(SRC:.cpp=.o)) @@ -21,7 +26,7 @@ %.o: %.cpp @rm -f $@ -@@ -51,7 +51,7 @@ version: +@@ -53,7 +53,7 @@ version: bash gen_version.sh > version.h omxplayer.bin: version $(OBJS) @@ -30,12 +35,11 @@ $(STRIP) omxplayer.bin help.h: README.md Makefile -@@ -90,3 +90,14 @@ dist: omxplayer.bin omxplayer.1 - cp omxplayer.1 $(DIST)/usr/share/man/man1 - cp -P ffmpeg_compiled/usr/local/lib/*.so* $(DIST)/usr/lib/omxplayer/ +@@ -94,7 +94,14 @@ dist: omxplayer.bin omxplayer.1 cd $(DIST); tar -czf ../$(DIST).tgz * -+ -+install: + + install: +- cp -r $(DIST)/* / + install -d $(DESTDIR)/usr/bin + install -d $(DESTDIR)/usr/share/doc/omxplayer + install -d $(DESTDIR)/usr/share/man/man1 @@ -43,51 +47,7 @@ + install -m755 omxplayer.bin $(DESTDIR)/usr/bin/omxplayer + install -m644 omxplayer.1 $(DESTDIR)/usr/share/man/man1/ + install -m644 README.md $(DESTDIR)/usr/share/doc/omxplayer/ -+ -+ ---- Makefile.include.orig 2016-07-23 19:57:16.888573220 +0200 -+++ Makefile.include 2016-07-23 19:58:16.656304226 +0200 -@@ -1,40 +1,3 @@ --USE_BUILDROOT=0 --FLOAT=hard -- --ifeq ($(USE_BUILDROOT), 1) --BUILDROOT :=/opt/xbmc-bcm/buildroot --SDKSTAGE :=$(BUILDROOT)/output/staging --TARGETFS :=$(BUILDROOT)/output/target --TOOLCHAIN :=$(BUILDROOT)/output/host/usr/ --HOST :=arm-unknown-linux-gnueabi --SYSROOT :=$(BUILDROOT)/output/host/usr/arm-unknown-linux-gnueabi/sysroot --else --BUILDROOT :=/opt/bcm-rootfs --SDKSTAGE :=/opt/bcm-rootfs --TARGETFS :=/opt/bcm-rootfs --TOOLCHAIN :=/home/dc4/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/ --HOST :=arm-linux-gnueabihf --#SYSROOT :=$(TOOLCHAIN)/arm-bcm2708hardfp-linux-gnueabi/sysroot --SYSROOT :=/opt/bcm-rootfs --endif -- --JOBS=7 -- --CFLAGS := -isystem$(PREFIX)/include --CXXFLAGS := $(CFLAGS) --CPPFLAGS := $(CFLAGS) --LDFLAGS := -L$(BUILDROOT)/lib --LD := $(TOOLCHAIN)/bin/$(HOST)-ld --sysroot=$(SYSROOT) --CC := $(TOOLCHAIN)/bin/$(HOST)-gcc --sysroot=$(SYSROOT) --CXX := $(TOOLCHAIN)/bin/$(HOST)-g++ --sysroot=$(SYSROOT) --OBJDUMP := $(TOOLCHAIN)/bin/$(HOST)-objdump --RANLIB := $(TOOLCHAIN)/bin/$(HOST)-ranlib --STRIP := $(TOOLCHAIN)/bin/$(HOST)-strip --AR := $(TOOLCHAIN)/bin/$(HOST)-ar --CXXCP := $(CXX) -E --PATH := $(PREFIX)/bin:$(BUILDROOT)/output/host/usr/bin:$(PATH) -- --CFLAGS += -pipe -mfloat-abi=$(FLOAT) -mcpu=arm1176jzf-s -fomit-frame-pointer -mabi=aapcs-linux -mtune=arm1176jzf-s -mfpu=vfp -Wno-psabi -mno-apcs-stack-check -g -mstructure-size-boundary=32 -mno-sched-prolog --LDFLAGS += -L$(SDKSTAGE)/lib -L$(SDKSTAGE)/usr/lib -L$(SDKSTAGE)/opt/vc/lib/ -Lpcre/build --#INCLUDES += -isystem$(SDKSTAGE)/usr/include -isystem$(SDKSTAGE)/opt/vc/include -isystem$(SYSROOT)/usr/include -isystem$(SDKSTAGE)/opt/vc/include/interface/vcos/pthreads -isystem$(SDKSTAGE)/usr/include/freetype2 --INCLUDES += -isystem$(SDKSTAGE)/opt/vc/include -isystem$(SYSROOT)/usr/include -isystem$(SDKSTAGE)/opt/vc/include/interface/vcos/pthreads -Ipcre/build -Iboost-trunk -Ifreetype2/include -+CFLAGS += -fomit-frame-pointer -mtune=arm1176jzf-s -+LDFLAGS += -L$(XBPS_CROSS_BASE)/opt/vc/lib/ -Wl,-R/opt/vc/lib -+INCLUDES += -I$(XBPS_CROSS_BASE)/opt/vc/include -I$(XBPS_CROSS_BASE)/opt/vc/include/interface/vmcs_host/linux -I$(XBPS_CROSS_BASE)/opt/vc/include/interface/vcos/pthreads -I$(XBPS_CROSS_BASE)/usr/include/freetype2 -I$(XBPS_CROSS_BASE)/usr/include/dbus-1.0 -I$(XBPS_CROSS_BASE)/usr/lib/dbus-1.0/include ++ install -m644 COPYING $(DESTDIR)/usr/share/doc/omxplayer/ + + uninstall: + rm -rf /usr/bin/omxplayer diff --git a/srcpkgs/omxplayer/patches/ffmpeg-4.0.1.patch b/srcpkgs/omxplayer/patches/ffmpeg-4.0.1.patch deleted file mode 100644 index 4d5ee5572e0..00000000000 --- a/srcpkgs/omxplayer/patches/ffmpeg-4.0.1.patch +++ /dev/null @@ -1,93 +0,0 @@ ---- DllAvFormat.h 2016-06-26 14:51:49.000000000 +0200 -+++ DllAvFormat.h 2018-07-02 18:39:32.237366072 +0200 -@@ -114,7 +114,7 @@ - } - virtual void av_register_all_dont_call() { *(volatile int* )0x0 = 0; } - virtual AVInputFormat *av_find_input_format(const char *short_name) { return ::av_find_input_format(short_name); } -- virtual int url_feof(AVIOContext *s) { return ::url_feof(s); } -+ virtual int url_feof(AVIOContext *s) { return ::avio_feof(s); } - virtual void avformat_close_input(AVFormatContext **s) { ::avformat_close_input(s); } - virtual int av_read_frame(AVFormatContext *s, AVPacket *pkt) { return ::av_read_frame(s, pkt); } - virtual int av_read_play(AVFormatContext *s) { return ::av_read_play(s); } ---- OMXReader.cpp 2016-06-26 14:51:49.000000000 +0200 -+++ OMXReader.cpp 2018-07-02 18:44:32.882381582 +0200 -@@ -1022,7 +1022,7 @@ - { - memset(pkt, 0, sizeof(OMXPacket)); - -- pkt->data = (uint8_t*) malloc(size + FF_INPUT_BUFFER_PADDING_SIZE); -+ pkt->data = (uint8_t*) malloc(size + AV_INPUT_BUFFER_PADDING_SIZE); - if(!pkt->data) - { - free(pkt); -@@ -1030,7 +1030,7 @@ - } - else - { -- memset(pkt->data + size, 0, FF_INPUT_BUFFER_PADDING_SIZE); -+ memset(pkt->data + size, 0, AV_INPUT_BUFFER_PADDING_SIZE); - pkt->size = size; - pkt->dts = DVD_NOPTS_VALUE; - pkt->pts = DVD_NOPTS_VALUE; -@@ -1239,13 +1239,13 @@ - } - } - --#ifdef FF_PROFILE_DTS_HD_MA -+#ifdef AV_PROFILE_DTS_HD_MA - /* use profile to determine the DTS type */ - if (stream->codec->codec_id == AV_CODEC_ID_DTS) - { -- if (stream->codec->profile == FF_PROFILE_DTS_HD_MA) -+ if (stream->codec->profile == AV_PROFILE_DTS_HD_MA) - strStreamName = "dtshd_ma"; -- else if (stream->codec->profile == FF_PROFILE_DTS_HD_HRA) -+ else if (stream->codec->profile == AV_PROFILE_DTS_HD_HRA) - strStreamName = "dtshd_hra"; - else - strStreamName = "dca"; -@@ -1348,10 +1348,10 @@ - if (m_streams[i].hints.codec == AV_CODEC_ID_AC3) strcpy(sInfo, "AC3 "); - else if (m_streams[i].hints.codec == AV_CODEC_ID_DTS) - { --#ifdef FF_PROFILE_DTS_HD_MA -- if (m_streams[i].hints.profile == FF_PROFILE_DTS_HD_MA) -+#ifdef AV_PROFILE_DTS_HD_MA -+ if (m_streams[i].hints.profile == AV_PROFILE_DTS_HD_MA) - strcpy(sInfo, "DTS-HD MA "); -- else if (m_streams[i].hints.profile == FF_PROFILE_DTS_HD_HRA) -+ else if (m_streams[i].hints.profile == AV_PROFILE_DTS_HD_HRA) - strcpy(sInfo, "DTS-HD HRA "); - else - #endif ---- OMXAudioCodecOMX.cpp 2016-06-26 14:51:49.000000000 +0200 -+++ OMXAudioCodecOMX.cpp 2018-07-02 18:46:01.167386137 +0200 -@@ -82,8 +82,8 @@ - m_pCodecContext->debug = 0; - m_pCodecContext->workaround_bugs = 1; - -- if (pCodec->capabilities & CODEC_CAP_TRUNCATED) -- m_pCodecContext->flags |= CODEC_FLAG_TRUNCATED; -+ if (pCodec->capabilities & AV_CODEC_CAP_TRUNCATED) -+ m_pCodecContext->flags |= AV_CODEC_FLAG_TRUNCATED; - - m_channels = 0; - m_pCodecContext->channels = hints.channels; -@@ -115,7 +115,7 @@ - if( hints.extradata && hints.extrasize > 0 ) - { - m_pCodecContext->extradata_size = hints.extrasize; -- m_pCodecContext->extradata = (uint8_t*)m_dllAvUtil.av_mallocz(hints.extrasize + FF_INPUT_BUFFER_PADDING_SIZE); -+ m_pCodecContext->extradata = (uint8_t*)m_dllAvUtil.av_mallocz(hints.extrasize + AV_INPUT_BUFFER_PADDING_SIZE); - memcpy(m_pCodecContext->extradata, hints.extradata, hints.extrasize); - } - -@@ -235,7 +235,7 @@ - - if (m_iBufferOutputAlloced < m_iBufferOutputUsed + outputSize) - { -- m_pBufferOutput = (BYTE*)m_dllAvUtil.av_realloc(m_pBufferOutput, m_iBufferOutputUsed + outputSize + FF_INPUT_BUFFER_PADDING_SIZE); -+ m_pBufferOutput = (BYTE*)m_dllAvUtil.av_realloc(m_pBufferOutput, m_iBufferOutputUsed + outputSize + AV_INPUT_BUFFER_PADDING_SIZE); - m_iBufferOutputAlloced = m_iBufferOutputUsed + outputSize; - } - diff --git a/srcpkgs/omxplayer/template b/srcpkgs/omxplayer/template index 87274442301..a9949cc34fd 100644 --- a/srcpkgs/omxplayer/template +++ b/srcpkgs/omxplayer/template @@ -1,22 +1,22 @@ # Template file for 'omxplayer' pkgname=omxplayer -version=20160723 -revision=4 +version=20190102 +revision=1 short_desc="Commandline OMX player for the Raspberry Pi" maintainer="Juan RP " license="GPL-2" homepage="https://github.com/popcornmix/omxplayer" -_commit="66f90768fd3770e042ca361d76aba751e6427abe" +_commit="f06235cc9690a6d58187514452df8cf8fcdaacec" wrksrc="omxplayer-$_commit" distfiles="$homepage/archive/$_commit.tar.gz" -checksum=742cf4e6b51974b335bc8e546dd31679eb4f99373c9a8becd155cd339ae2a10d +checksum=af2d9450f8947842ea8c401fe9f71eec444013ebbdee29f2ac828c9c493c1329 # XXX only rpi only_for_archs="armv6l armv6l-musl armv7l armv7l-musl" build_style=gnu-makefile hostmakedepends="curl pkg-config" -makedepends="rpi-userland-devel pcre-devel boost-devel freetype-devel ffmpeg-devel dbus-devel" +makedepends="alsa-lib-devel rpi-userland-devel pcre-devel boost-devel freetype-devel ffmpeg-devel dbus-devel" depends="freefont-ttf" do_build() {