vice-3.2: re-add vice 3.2

vice 3.3 performs ugly

Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
This commit is contained in:
Andreas Müller
2019-09-28 00:41:25 +02:00
parent ceebd516b5
commit 7465aa6ce6
4 changed files with 207 additions and 0 deletions

View File

@@ -0,0 +1,101 @@
From 6f69c122f0ea97b89bb0bb72cb75e97dc24d5506 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Fri, 8 Jun 2018 11:10:25 +0200
Subject: [PATCH] Hack build with latest FFMPEG
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Taking videos in raw format won't work with ne FFMPEG.
| ../../../vice-3.2/src/gfxoutputdrv/ffmpegdrv.c:363:34: error: 'CODEC_CAP_VARIABLE_FRAME_SIZE' undeclared (first use in this function); did you mean 'AV_CODEC_CAP_VARIABLE_FRAME_SIZE'?
| if (c->codec->capabilities & CODEC_CAP_VARIABLE_FRAME_SIZE) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| AV_CODEC_CAP_VARIABLE_FRAME_SIZE
| ../../../vice-3.2/src/gfxoutputdrv/ffmpegdrv.c:461:21: error: 'CODEC_FLAG_GLOBAL_HEADER' undeclared (first use in this function); did you mean 'AV_CODEC_FLAG_GLOBAL_HEADER'?
| c->flags |= CODEC_FLAG_GLOBAL_HEADER;
| ^~~~~~~~~~~~~~~~~~~~~~~~
| AV_CODEC_FLAG_GLOBAL_HEADER
| ../../../../../../../../../oe-core/workspace/sources/vice/src/gfxoutputdrv/ffmpegdrv.c:982:40: error: 'AVFMT_RAWPICTURE' undeclared (first use in this function); did you mean 'FF_API_AVPICTURE'?
| if (ffmpegdrv_oc->oformat->flags & AVFMT_RAWPICTURE) {
| ^~~~~~~~~~~~~~~~
| FF_API_AVPICTURE
Upstream-Status: Pending
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
src/gfxoutputdrv/ffmpegdrv.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/src/gfxoutputdrv/ffmpegdrv.c b/src/gfxoutputdrv/ffmpegdrv.c
index 4748348..b52e39b 100644
--- a/src/gfxoutputdrv/ffmpegdrv.c
+++ b/src/gfxoutputdrv/ffmpegdrv.c
@@ -360,7 +360,11 @@ static int ffmpegdrv_open_audio(AVFormatContext *oc, AVStream *st)
}
audio_is_open = 1;
+#ifdef AV_CODEC_CAP_VARIABLE_FRAME_SIZE
+ if (c->codec->capabilities & AV_CODEC_CAP_VARIABLE_FRAME_SIZE) {
+#else
if (c->codec->capabilities & CODEC_CAP_VARIABLE_FRAME_SIZE) {
+#endif
audio_inbuf_samples = 10000;
} else {
audio_inbuf_samples = c->frame_size;
@@ -454,7 +458,11 @@ static int ffmpegmovie_init_audio(int speed, int channels, soundmovie_buffer_t *
/* Some formats want stream headers to be separate. */
if (ffmpegdrv_oc->oformat->flags & AVFMT_GLOBALHEADER)
+#ifdef AV_CODEC_FLAG_GLOBAL_HEADER
+ c->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
+#else
c->flags |= CODEC_FLAG_GLOBAL_HEADER;
+#endif
/* create resampler context */
#ifndef HAVE_FFMPEG_AVRESAMPLE
@@ -787,7 +795,11 @@ static void ffmpegdrv_init_video(screenshot_t *screenshot)
/* Some formats want stream headers to be separate. */
if (ffmpegdrv_oc->oformat->flags & AVFMT_GLOBALHEADER) {
+#ifdef AV_CODEC_FLAG_GLOBAL_HEADER
+ c->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
+#else
c->flags |= CODEC_FLAG_GLOBAL_HEADER;
+#endif
}
if (audio_init_done) {
@@ -967,6 +979,7 @@ static int ffmpegdrv_record(screenshot_t *screenshot)
video_st.frame->pts = video_st.next_pts++;
+#ifdef AVFMT_RAWPICTURE
if (ffmpegdrv_oc->oformat->flags & AVFMT_RAWPICTURE) {
AVPacket pkt;
VICE_P_AV_INIT_PACKET(&pkt);
@@ -978,6 +991,7 @@ static int ffmpegdrv_record(screenshot_t *screenshot)
ret = VICE_P_AV_INTERLEAVED_WRITE_FRAME(ffmpegdrv_oc, &pkt);
} else {
+#endif
AVPacket pkt = { 0 };
int got_packet;
@@ -998,7 +1012,9 @@ static int ffmpegdrv_record(screenshot_t *screenshot)
} else {
ret = 0;
}
+#ifdef AVFMT_RAWPICTURE
}
+#endif
if (ret < 0) {
log_debug("Error while writing video frame");
return -1;
--
2.14.3

View File

@@ -0,0 +1,30 @@
From f4fa367ab6e79cbfd77254237335f383311006ec Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sat, 9 Feb 2019 22:16:52 +0100
Subject: [PATCH] Set fixed VICEDIR
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
configure.ac | 1 +
1 file changed, 1 insertion(+)
diff --git a/configure.ac b/configure.ac
index c5139fd..402e893 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5010,6 +5010,7 @@ case "$host_os" in
AM_CONDITIONAL(ALTERNATE_DOCDIR, false)
;;
esac
+VICEDIR="$libdir/vice"
AC_SUBST(VICEDIR)
AC_DEFINE_UNQUOTED(VICEDIR, "$VICEDIR",
[Where should we lookup for data files?])
--
2.20.1

View File

@@ -0,0 +1,73 @@
SUMMARY = "Versatile Commodore Emulator"
HOMEPAGE = "http://vice-emu.sourceforge.net"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b"
# Sources for c64 software:
# [1] ftp://arnold.c64.org/pub/games/
BPN = "vice"
SRC_URI = " \
${SOURCEFORGE_MIRROR}/vice-emu/${BPN}-${PV}.tar.gz \
file://0001-fix-autoreconfig.patch \
file://0002-Hack-build-with-latest-FFMPEG.patch \
file://0003-Set-fixed-VICEDIR.patch \
file://c64_16.png \
file://c64_32.png \
file://c64_48.png \
file://vice_64.desktop \
"
SRC_URI[md5sum] = "58ba6b6653097898e059e0194615705a"
SRC_URI[sha256sum] = "28d99f5e110720c97ef16d8dd4219cf9a67661d58819835d19378143697ba523"
inherit autotools pkgconfig gtk-icon-cache
DEPENDS = " \
bdftopcf-native \
mkfontdir-native \
mkfontscale-native \
xa-native \
bison-native \
gtk+ \
libav \
libsdl \
libpng \
jpeg \
giflib \
libxxf86vm \
portaudio-v19 \
mpg123 \
virtual/libgl \
vte9 \
${@bb.utils.contains("DISTRO_FEATURES", "x11 opengl", "gtkglext", "", d)} \
"
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)}"
PACKAGECONFIG[pulseaudio] = "--with-pulse,--without-pulse,pulseaudio,pulseaudio-server"
EXTRA_OECONF = " \
--disable-option-checking \
--enable-external-ffmpeg \
--enable-parsid \
--enable-fullscreen \
--enable-gnomeui \
--with-uithreads \
--without-oss \
--libdir=${libdir} \
"
do_install_append() {
install -d ${D}/${datadir}/applications
install -m 0644 ${WORKDIR}/vice_64.desktop ${D}/${datadir}/applications
for size in 16 32 48; do
install -d ${D}/${datadir}/icons/hicolor/${size}x${size}/apps
install -m 0644 ${WORKDIR}/c64_${size}.png ${D}/${datadir}/icons/hicolor/${size}x${size}/apps/c64.png
done
}
FILES_${PN} += "${datadir}/icons"
RREPLACES_${PN} += "vice"
RCONFLICTS_${PN} += "vice"

View File

@@ -66,3 +66,6 @@ do_install_append() {
}
RDEPENDS_${PN} += "hicolor-icon-theme"
RREPLACES_${PN} += "vice-3.2"
RCONFLICTS_${PN} += "vice-3.2"