Hier das ganze Log vom Bau:
Wie baust du, damit dieser Output entsteht ? Ich habe einfach einen "make all" gemacht.
Hier das ganze Log vom Bau:
Wie baust du, damit dieser Output entsteht ? Ich habe einfach einen "make all" gemacht.
Mit einem PKGBUILD:
# This PKGBUILD is part of the VDR4Arch project [https://github.com/vdr4arch]
# Maintainer: Alexander Grothe <seahawk1986[at]hotmail[dot]com>
pkgname=vdr-markad
pkgver=4.1.0
epoch=1
_gitver=25fd3202b1788e15cde8b0ad8b8afd503b0278d3
_vdrapi=2.6.9
pkgrel=1
pkgdesc="Plugin to mark advertisemets in recordings and optionally auto-cut"
url="https://github.com/kfb77/vdr-plugin-markad"
arch=('x86_64' 'i686' 'arm' 'armv6h' 'armv7h')
license=('GPL2')
depends=('ffmpeg' "vdr-api=${_vdrapi}")
makedepends=('git')
_plugname=${pkgname//vdr-/}
source=("git+https://github.com/kfb77/vdr-plugin-markad.git#commit=$_gitver"
"50-$_plugname.conf")
backup=("etc/vdr/conf.avail/50-$_plugname.conf")
md5sums=('SKIP'
'3d3b59464da0f38820d94a55ad1db73b')
pkgver() {
cd "${srcdir}/vdr-plugin-${_plugname}"
git describe --tags | sed 's/-/_/g;s/v//;s/V//'
#git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^v//'
}
prepare() {
cd "${srcdir}/vdr-plugin-${_plugname}"
}
build() {
cd "${srcdir}/vdr-plugin-${_plugname}"
make
}
package() {
cd "${srcdir}/vdr-plugin-${_plugname}"
make DESTDIR="$pkgdir" install
# Move the logofiles to the right place and add a symlink to prevent patching.
mkdir -p "$pkgdir/usr/share"
mv "$pkgdir/var/lib/markad" "$pkgdir/usr/share/markad"
ln -s /usr/share/markad "$pkgdir/var/lib/markad"
install -Dm644 "$srcdir/50-$_plugname.conf" "$pkgdir/etc/vdr/conf.avail/50-$_plugname.conf"
}
Display More
Ich glaube dein Copy/Paste wurde abgeschnitten, da fehlt der Hauptteil. Hänge es mal als Datei an.
Ich habe die Datei gerade mal mit vdr4arch verglichen, scheint doch vollständig zu sein, aber beim Ausführen passiert bei mit nichts. Was muss ich damit machen ?
Ich habe die Datei gerade mal mit vdr4arch verglichen
Ich hab ein etwas anderes PKGBUILD weil ich nach Commit's bauen will und nicht nach Tags
Im Plugin-Verzeichnis ein:
Ich habe ein blankes Arch, da gibt es kein Plugin Verzeichnis.
Ich passe, das geht mir zu tief in Arch rein. Vielleicht kann M-Reimer was dazu sagen.
Man erstellt einen Ordner, Name ist erstmal egal. Legt das PKGBUILD und die plugin.conf ab und setzt ggfs. die Rechte und führt dann den Biild-Befehl aus. Ist eigentlich total einfach.
Und vorher noch vdr sudo erlauben
[root@VDR-arch markad]# sudo -u vdr makepkg -Cfs
==> Making package: vdr-markad 1:4.1.0-1 (Wed Aug 7 20:55:36 2024)
==> Checking runtime dependencies...
==> Installing missing dependencies...
error: target not found: vdr-api=2.6.9
==> ERROR: 'pacman' failed to install missing dependencies.
==> Missing dependencies:
-> ffmpeg
-> vdr-api=2.6.9
==> Checking buildtime dependencies...
==> ERROR: Could not resolve all dependencies.
Display More
Und vorher noch VDR API ändern in 2.6.1, weil das wohl nur in Arch dabei ist.
[root@VDR-arch markad]# ls -l
total 8
-rw-r--r-- 1 root root 755 Aug 7 21:00 50-markad.conf
-rw-r--r-- 1 root root 1449 Aug 7 20:57 PKGBUILD
drwxr-xr-x 1 vdr vdr 0 Aug 7 20:59 src
drwxr-xr-x 1 vdr vdr 140 Aug 7 20:59 vdr-plugin-markad
[root@VDR-arch markad]# sudo -u vdr makepkg -Cfs
==> Making package: vdr-markad 1:4.1.0-1 (Wed Aug 7 21:01:11 2024)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Updating vdr-plugin-markad git repo...
-> Found 50-markad.conf
==> Validating source files with md5sums...
vdr-plugin-markad ... Skipped
50-markad.conf ... FAILED
==> ERROR: One or more files did not pass the validity check!
Display More
Und vorher noch ???
Was muss in der 50-markad.conf drin stehen ?
Ich habe es damit versucht.
Edit:
vorher noch den MD5 Check für die 50-markad.conf ausmachen.
Dann läuft es durch und ohne die Warning. Da muss also irgendwas bei deinen Standard Libs nicht stimmen.
Ok, erstmal Danke für diesen Gegentest
Dann muss ich da mal tiefer schauen bei Gelegenheit,.
Laut Log File kann ich nicht mal annähernd ein Logo erkennen. Da stört der laufend eingeblendete Fernseher Rahmen über dem Logo. Das ist genauso ein statisches Bild wie das Logo und ich erkenne das Logo am Unterschied zwischen sich verändernden Teile des Bildes und dem gleichbleibenden Teil des Bildes. Und genau das geht bei dieser Sendung nicht.
Workaround Lösungen stehen hier.
Workaround 1 mit 20 min. Vorlaufzeit hat geholfen.
Workaround 2 mit vorh. Logo nicht. markad findet das Logo und verwirft es dann wieder.
Workaround 2 mit vorh. Logo nicht. markad findet das Logo und verwirft es dann wieder.
Ok, sollte nicht so sein, ich fix das.
Da muss also irgendwas bei deinen Standard Libs nicht stimmen.
Welche Version vom g++ ist bei dem Arch wo du getestet hast installiert, auch die 14.2.1+r32+geccf707e5ce-1?
Workaround 2 mit vorh. Logo nicht. markad findet das Logo und verwirft es dann wieder.
Da habe ich wohl beim Aufräumen für die V04 zu viel entfernt, die Funktion gab es gar nicht mehr.
Fix ist im Branch V04, bitte testen.
Bei der Gelegenheit habe ich auch noch gleich einer kleines neues Feature für solche Problem Sendungen eingebaut:
--autologo
0 = benutze nur vorhandene Logos aus dem Logo Cache Verzeichnis
1 = extrahiere Logo aus der Aufnahme, falls nicht möglich, benutze ein vorhandenes Logo im Logo Cache
2 = benutze ein vorhandenes Logo im Logo Cache, falls keines vorhanden, extrahiere Logo aus der Aufnahme und speichere das Logo im Aufnahmeverzeichnis (default)
Neu ist die "1". Damit kann man grundsätzlich das Extrahieren aus der Aufnahme nutzen und nur, wenn das ausnahmsweise nicht funktioniert, wird der Logo Cache verwenden. Also genau umgekehrt wie bei "2".
Da habe ich wohl beim Aufräumen für die V04 zu viel entfernt, die Funktion gab es gar nicht mehr.
Fix ist im Branch V04, bitte testen.
Bei der Gelegenheit habe ich auch noch gleich einer kleines neues Feature für solche Problem Sendungen eingebaut:
Code--autologo 0 = benutze nur vorhandene Logos aus dem Logo Cache Verzeichnis 1 = extrahiere Logo aus der Aufnahme, falls nicht möglich, benutze ein vorhandenes Logo im Logo Cache 2 = benutze ein vorhandenes Logo im Logo Cache, falls keines vorhanden, extrahiere Logo aus der Aufnahme und speichere das Logo im Aufnahmeverzeichnis (default)
Neu ist die "1". Damit kann wird man grundsätzlich das Extrahieren aus der Aufnahme nutzen und nur, wenn das ausnahmsweise nicht funktioniert, wird der Logo Cache verwenden. Also genau umgekehrt wie bei "2".
Sehr gute Idee mit dem --autologo=1. Damit gibt es ein LogoFallback für diverse Fälle. Damit sollte das TVTotal Thema abgehakt sein. Meines Erachtens sollte das als default gesetzt sein!
Funktioniert und für gut befunden.
Die Version 4.1.1 von vdr-plugin-markad ist verfügbar.
Bei Probleme bitte immer die vollständige markad.log posten.
2024-08-11: Version 4.1.1
- fix use of logo cache (thx to hondansx@www.vdr-portal.de for reporting)
- new parameter --autologo=1 (extract logo from recording, if fails use logo from logo cache)
- fix memory leak in hwaccel decoding
- change of recommended minimum FFmpeg from V4.2.7 to V4.4.2
issues found with V4.2.7 (not recommended to use with hwaccel):
very low hwaccel decoding performance
memory leak in av_hwframe_transfer_data()
i-frame only hwaccel decoding with H.264 does not work
i-frame only decoding with interlaced H.264 does not work
- some minor bug fixes and optimizations, see git
Display More
Wer kein hwaccel nutzt, kann problemlos FFmpeg 4.2.7 weiterverwenden.
Die Version 4.1.2 von vdr-plugin-markad ist verfügbar.
Hi, ich erhalte seit kurzem folgenden Fehler:
markad: Mon Aug 19 09:44:30 [98733] INFO: starting markad v4.1.2 (b0e243c) (64bit)
markad: Mon Aug 19 09:44:30 [98733] INFO: using libavcodec.so.59.37.100 (3876196) with -1 threads
markad: Mon Aug 19 09:44:30 [98733] ERROR: libavcodec header version 61.11.100
markad: Mon Aug 19 09:44:30 [98733] ERROR: header and library mismatch, do not report decoder bugs
markad: Mon Aug 19 09:44:30 [98733] INFO: on /srv/vdr/video/Hund/Hundeseniorin_soll_nicht_im_Tierheim_sterben_-_S03E03/2024-08-19.07.28.42-0.rec
markad: Mon Aug 19 09:44:30 [98733] INFO: no aspect ratio found in vdr info
markad: Mon Aug 19 09:44:30 [98733] ERROR: segmentation fault
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] Execution path:
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] markad(+0x35928) [0x559a8d807928]
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] /lib/x86_64-linux-gnu/libc.so.6(+0x43090) [0x7f8ef4855090]
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] markad(+0x2abca) [0x559a8d7fcbca]
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] markad(+0x2b712) [0x559a8d7fd712]
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] markad(+0x2c575) [0x559a8d7fe575]
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] markad(+0x2ceb0) [0x559a8d7feeb0]
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] markad(+0x4ab7a) [0x559a8d81cb7a]
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] markad(+0x1315c) [0x559a8d7e515c]
markad: Mon Aug 19 09:44:30 [98733] ERROR: [bt] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7f8ef4836083]
Display More
Mein letztes libavcodec.so im Pfad ist aber
/usr/lib/x86_64-linux-gnu/libavcodec.so.58
/usr/lib/x86_64-linux-gnu/libavcodec.so.58.134.100
/usr/local/lib/libavcodec.so.58
/usr/local/lib/libavcodec.so.58.134.100
/usr/local/lib/libavcodec.so.59
/usr/local/lib/libavcodec.so.59.37.100
und nicht die 61.
Wie werde ich das wieder los?
Du hast die falschen libav Header auf deinem System.
using libavcodec.so.59.37.100 (3876196) with -1 threads
Die Version zieht markad bei der Ausführung an.
libavcodec header version 61.11.100
Die Header hat er beim Compile angezogen, was dann natürlich nicht zusammen passt.
Mein letztes libavcodec.so im Pfad ist aber
/usr/local/lib/libavcodec.so.59.37.100
und genau das nimmt markad auch (using libavcodec.so.59.37.100 (3876196) with -1 threads"
Du musst die Header von 61.11.100 los werden und dann markad neu bauen.
Wie hast du ffmpeg bzw. die libs und die Header installiert ?
Suche mal, welche libavcodec Header es gibt:
Welche Header findet er und was steht dann da für eine Version drin ?
Was sagt "apt-cache policy libavcodec-dev" ?
apt-cache policy libavcodec-dev:
Installiert: 7:5.1.5-0ubuntu1~20.04.sav0.1
Installationskandidat: 7:5.1.5-0ubuntu1~20.04.sav0.1
Versionstabelle:
*** 7:5.1.5-0ubuntu1~20.04.sav0.1 500
500 http://ppa.launchpad.net/savoury1/ffmpeg5/ubuntu focal/main amd64 Packages
100 /var/lib/dpkg/status
7:4.4.5-0ubuntu1~20.04.sav0 500
500 http://ppa.launchpad.net/savoury1/ffmpeg4/ubuntu focal/main amd64 Packages
7:4.2.7-0ubuntu0.1+esm5 500
500 https://esm.ubuntu.com/apps/ubuntu focal-apps-security/main amd64 Packages
7:4.2.7-0ubuntu0.1 500
500 http://security.ubuntu.com/ubuntu focal-security/universe amd64 Packages
7:4.2.4-1.1~ppa 500
500 http://ppa.launchpad.net/mc3man/focal6/ubuntu focal/main amd64 Packages
7:4.2.2-2yavdr1~focal 500
500 http://ppa.launchpad.net/yavdr/experimental-main/ubuntu focal/main amd64 Packages
7:4.2.2-1ubuntu1 500
500 http://at.archive.ubuntu.com/ubuntu focal/universe amd64 Packages
Display More
Ich habe wegen der Cuda-Probleme etc. händisch ffmpeg-6.1 vom Git installiert.
#ifndef AVCODEC_VERSION_H
#define AVCODEC_VERSION_H
/**
* @file
* @ingroup libavc
* Libavcodec version macros.
*/
#include "libavutil/version.h"
#include "version_major.h"
#define LIBAVCODEC_VERSION_MINOR 31
#define LIBAVCODEC_VERSION_MICRO 102
Display More
Kann man markad da etwas "agnostischer" machen?
Don’t have an account yet? Register yourself now and be a part of our community!