Kaum macht man mal nen Jahr nix, da wird etwas geändert
Ich hatte "hust" heute das gleiche Problem. Layman wollte noch per svn updaten.
Gruss,
Quacks
Kaum macht man mal nen Jahr nix, da wird etwas geändert
Ich hatte "hust" heute das gleiche Problem. Layman wollte noch per svn updaten.
Gruss,
Quacks
Hi,
ich habe einige Anleitungen im Internet gefunden, damit die Remote unter XBMC funktioniert. Hier musste ich aber immer wieder nach dem Booten die Fernbedienung neu anlernen, was mir nicht wirklich gefallen hat. Nach ein wenig Recherche habe ich aber einige Einträge gefunden, die zusammen dann den reibungslosen Betrieb der Fernbedienung auch nach dem booten ermöglichten. Da ich einige Anfragen bekam, schreibe ich die Installation hier einmal zusammen:
Bluetooth Stack installieren:
sudo update-rc.d -f dbus defaults && sudo apt-get install bluez
sudo apt-get install xbmc-eventclients-ps3
Uinput Modul laden
Damit das Modul auch automatisch nach dem Booten wieder zur Verfügung steht kann man es unter Raspbmc in die Datei /etc/modules eintragen
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.
uinput
Nun die Fernbedienung suchen (Enter + Start gleichzeitig drücken und schnell weitermachen):
Nun sollte die Remote inkl. MAC-Adresse angezeigt werden. Diese MAC-Adresse (bei mir 00:24:33:98:7D:0A) wird nun dem System bekannt gemacht:
Quote
bluez-test-device create 00:24:33:98:7D:0A
bluez-test-device trusted 00:24:33:98:7D:0A yes
Ob die Fernbedienung erkannt wurde, kann man mittels
anzeigen. Kommt hier eine Ausgabe, ist die Fernbedienung angelernt.
Nun muss Bluteooth an uinput noch die Tasten weiterleiten, Dazu legt man in /etc/bluetooth eine input.conf ab.
Wichtig dabei ist, das die MAC-Adresse angepasst wird!
# input.conf - kitlaan custom
# Configuration file for the input service
[General]
# This section contains options that are specific to a device
[00:24:33:98:7D:0A]
# This section is the PS3 Remote keymap. It is loaded when bluez starts.
# Use 'uinput.h' from bluez sources or '/usr/include/linux/input.h' for
# a list of possible KEY_* values.
#
[PS3 Remote Map]
0x16 = KEY_E # EJECT
0x64 = KEY_A # AUDIO
0x65 = KEY_Z # ANGLE
0x63 = KEY_T # SUBTITLE
0x0f = KEY_DELETE # CLEAR
0x28 = KEY_GRAVE # TIMER
0x00 = KEY_1 # NUM-1
0x01 = KEY_2 # NUM-2
0x02 = KEY_3 # NUM-3
0x03 = KEY_4 # NUM-4
0x04 = KEY_5 # NUM-5
0x05 = KEY_6 # NUM-6
0x06 = KEY_7 # NUM-7
0x07 = KEY_8 # NUM-8
0x08 = KEY_9 # NUM-9
0x09 = KEY_0 # NUM-0
0x81 = KEY_F7 # RED
0x82 = KEY_F8 # GREEN
0x80 = KEY_F9 # BLUE
0x83 = KEY_F10 # YELLOW
0x70 = KEY_I # DISPLAY
0x1a = KEY_S # TOP MENU
0x40 = KEY_M # POP UP/MENU
0x0e = KEY_ESC # RETURN
0x5c = KEY_C # TRIANGLE/OPTIONS
0x5d = KEY_BACKSPACE # CIRCLE/BACK
0x5f = KEY_TAB # SQUARE/VIEW
0x5e = KEY_SPACE # CROSS
0x54 = KEY_UP # UP
0x56 = KEY_DOWN # DOWN
0x57 = KEY_LEFT # LEFT
0x55 = KEY_RIGHT # RIGHT
0x0b = KEY_ENTER # ENTER
0x5a = KEY_F1 # L1
0x58 = KEY_F2 # L2
0x51 = KEY_F3 # L3
0x5b = KEY_F4 # R1
0x59 = KEY_F5 # R2
0x52 = KEY_F6 # R3
0x43 = KEY_HOMEPAGE # PS button
0x50 = KEY_INSERT # SELECT
0x53 = KEY_HOME # START
0x33 = KEY_R # SCAN BACK
0x32 = KEY_PLAY # PLAY
0x34 = KEY_F # SCAN FORWARD
0x30 = KEY_PAGEUP # PREVIOUS
0x38 = KEY_STOP # STOP
0x31 = KEY_PAGEDOWN # NEXT
0x60 = KEY_COMMA # SLOW/STEP BACK
0x39 = KEY_PAUSE # PAUSE
0x61 = KEY_DOT # SLOW/STEP FORWARD
0xff = KEY_MAX
Display More
Nun hatte ich aber das Problem, das ich quasi vor jedem XBMC Start die Fernbedienung erst einmal benutzt haben musst, spricht ein Tastendruck erforderlich war. XBMC hat diese
sonst nicht erkannt. Hier half mir ein Thread hier aus dem Portal PS3 Remote und /dev/input. Mein besonderer Dank geht hier an seahawk1986, der ein Python Skript erstellt hat, welches dem XBMC das Device vorgaukelt. Dieses benötigt allerdings noch einige Python Pakete die zu
installieren sind:
Leider wird noch ein Paket python-uinput benötigt für welches ich kein Debian Paket gefunden habe. Deshalb habe ich es von Hand installiert:
cd /tmp
git clone https://github.com/tuomasjjrasanen/python-uinput
cd python-uinput
python setup.py install --prefix=/usr/local
Danach sollte das folgende Script in /usr/sbin/ps3remote.py abgelegt werden:
#!/usr/bin/python2.7
import sys
import os
import codecs
import fcntl
import gobject
import socket
import string
import struct
import datetime
import pyudev
import uinput
from pyudev.glib import GUDevMonitorObserver
class UdevEventWatchdog():
'''handle input devices using udev'''
def __init__(self):
global gobject
self.frontend_active = 0
self.env = os.environ
self.timer = None
events = []
for element in dir(uinput):
if element.startswith("KEY_") or element.startswith("BTN_") or element.startswith("REL_"):
events.append(eval("uinput.%s"%(element)))
self.uinputdev = uinput.Device(events, "ps3")
self.context = pyudev.Context()
self.monitor = pyudev.Monitor.from_netlink(self.context)
self.monitor.filter_by(subsystem='input')
self.devices = {}
self.paths = {}
# struct for kernel input devices on 64-Bit linux systems
#self.inputEventFormat = 'llHHi'
#self.inputEventSize = 24
# on 32-Bit systems try
self.inputEventFormat = 'iihhi'
self.inputEventSize = 16
# (untested)
self.get_event_devices()
def get_event_devices(self):
'''filter all connected input devices and watch an existing PS3 Remote device'''
for device in self.context.list_devices(subsystem='input'):
if device.sys_name.startswith('event') and device.parent['NAME'] == '"PS3 Remote Controller"':
#print("found PS3")
self.paths[device['DEVNAME']] = open(device['DEVNAME'],'rb')
self.devices[device['DEVNAME']] = gobject.io_add_watch(self.paths[device['DEVNAME']], gobject.IO_IN, self.evthandler)
fcntl.ioctl(self.paths[device['DEVNAME']].fileno(), 0x40044590, 1) #exclusive access to input device - so keypresses do not disturb other >
self.observer = GUDevMonitorObserver(self.monitor)
self.observer.connect('device-event',self.udev_event)
self.monitor.start()
print("started udev monitoring of input devices")
def udev_event(self,observer,action, device):
'''callback function to add/remove input devices'''
if action == "add" and 'DEVNAME' in device:
if device.sys_name.startswith('event') and device.parent['NAME'] == '"PS3 Remote Controller"':
self.paths[device['DEVNAME']] = open(device['DEVNAME'],'rb')
if not device['DEVNAME'] in self.devices:
self.devices[device['DEVNAME']] = gobject.io_add_watch(self.paths[device['DEVNAME']], gobject.IO_IN, self.evthandler)
fcntl.ioctl(self.paths[device['DEVNAME']].fileno(), 0x40044590, 1) #exclusive access to input device - so keypresses do not disturb ot>
elif action == "remove" and 'DEVNAME' in device:
try:
self.paths[device['DEVNAME']].close()
except:
pass
try:
gobject.source_remove(self.devices[device['DEVNAME']])
syslog.syslog("removed %s"%device['DEVNAME'])
del self.devices[device['DEVNAME']]
except:
pass #device already removed from watchlist
def evthandler(self,path, *args):
'''callback function to handle keys sent by inputdevices'''
try:
event = path.read(self.inputEventSize)
except:
#print('can not read from %s'%(path))
return False
(time1, time2, typeev, code, value) = struct.unpack(self.inputEventFormat, event)
if typeev == 0 and code == 0 and value == 0: # sync event
pass
else:
self.uinputdev.emit((typeev,code), value)
return True
if __name__ == '__main__':
devinput = UdevEventWatchdog()
gobject.MainLoop().run()
Display More
Dieses Skript wird in /etc/rc.local eingetragen und das war es dann auch endlich:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
nohup python2.7 /usr/sbin/ps3remote.py &
exit 0
Display More
Wer es brauchen kann, viel Spass damit
MfG
Quacks
Quellen:
PS3 Remote an RaspBMC
PS3 als input Device
PS3 input.conf
Installation uinput
History:
- Fehler im Python Skript korrigiert.
[quote='seahawk1986','index.php?page=Thread&postID=1143918#post1143918']im Prinzip wie https://github.com/seahawk1986/PS3-remot…aster/ps3remote nur mit pyudev um die PS3 Remote im laufenden Betrieb zu erkennen und dann dynamisch einzubinden, statt mit einem festgelegten Pfad zu starten.
Hi,
vielen Dank für das python-script. Damit habe ich die PS3 Remote auch unter XBMC auf meinem Raspberry am laufen, ohne das ich diese nach jedem Start neu erkennen lassen muss
MfG
Quacks
Hi,
danke für den Thread. Ich habe meinen VDR vorgestern von 1.7.33 auf 1.7.42 gezogen und hatte seitdem immer wieder auf einigen HD-Sendern diese Meldung (massiv bei Fussballübertragungen) im Zusammenspiel mit der S2-6400 (letzte Treiber + Firmware).
Nachdem ich die alten Retrywerte (100/10) nun wieder in die 1.7.42 gepatcht habe, sind die Fehler weg. Danke für den Ansatz hier!
MfG
Quacks
media-plugins/vdr-vnsiserver
Habe ich gestern gemerged. Aktuelles Openelec auf meinen Raspberry Pi aufgespielt. Rennt fehlerfrei mit VDR-1.7.35
Gruss,
Quacks
hat schon jemand ein UPNP Plugin ebuild gebastelt? Funktioniert das UPNP Plugin mit einem UPNP tauglichen Fernseher von Panasonic?
Hi,
im Anhang ein uraltes ebuild, was aus dem git die Version holt. Ich habs aber ewig nicht benutzt, also auf eigene Gefahr
Gruss,
Quacks
QuoteOriginal von another-way
Unter vdrRemote.de gibt es nun eine Installationsanleitung für den vdrRemote Server.
Diejenigen mit Problemen haben eine PN von mir erhalten.
Hmmh,
Unter der URL bekomme ich eine Fehlermeldung. Ist das Paket wieder offline?
Gruss,
Quacks
QuoteOriginal von another-way
Ich Arbeite schon an einer iPad Version jedoch ist mein iPad ncoh nciht eingetroffen daher kann ich noch keinen Termin dafür nennen.
Hi,
Dann werd ich die neue Iphone Version aus dem Appstore mal aufs Ipad holen, sobald sie verfügbar ist.
Falls Du noch einen Betatester fuers Ipad brauchst, melde ich mich hiermit freiwillig
Gruß,
Quacks
Quote
der "aktuelle Stand eHD"-thread ist ja schon seit einigen Monaten nicht aktualisiert worden.
Gibt es hier irgendwo einen Thread wie man den aktuellen VDR mit der eHD zum laufen kriegt?
Hallo,
zumindest für gentoo bastel ich gerade an den aktuellen Ebuilds, wobei sich nicht wirklich bahnbrechendes im bezug auf das Plugin getan hat. Es gibt einen aktuelleren hdplayer und linux.bin für die eHD.
Gruss,
Quacks
QuoteOriginal von Tinitus
Leider ist die Betreuung scheinbar da ein wenig eingeschlafen :lol2.
Hmmh,
der vdr-1.7.11 iss im Overlay -devel drin und daran wird auch gearbeitet.
cu,
Quacks
Quote
Ich hab jetzt mal wieder auf vdr-1.7.0 umgestellt und es funktioniert sofort wieder problemlos. Ich denke hier muss man für die 1.7.9 noch Anpassungen durchführen.
Jetzt wollt ich mich damit heute Abend befassen und plötzlich klappt es nun auch mit meinem VDR-1.7.9 und dem Xmas Channel.
cu,
Quacks
QuoteOriginal von Quacks
das Plugin schreibt auch Daten raus, aber lame kann mit den Aufbahmen hier nix anfangen.
Ich hab jetzt mal wieder auf vdr-1.7.0 umgestellt und es funktioniert sofort wieder problemlos. Ich denke hier muss man für die 1.7.9 noch Anpassungen durchführen.
cu,
Quacks
Hi,
ich habe das Plugin länger nicht mehr genutzt, bin aber dann auch über den Xmas Channel gestolpert nd versuche nun das ganze unter VDR-1.7.9 ans laufen zu kriegen. Die Segfaults sind bei mir mit der oberen Anpassung auch weg, das Plugin schreibt auch Daten raus, aber lame kann mit den Aufbahmen hier nix anfangen. Mag es sein, das hier Probleme auftauchen, weil der VDR auf .TS umgestellt wurde?
cu,
Quacks
Hi,
vielen Dank für das Plugin. Ich habe in den letzten Tagen versucht, es mit meinem VDR-1.7.9 und einer PS3 ans laufen zu kriegen, hatte dabei aber immer wieder das Problem, das ich vor jedem Start die metadata.db löschen musste, da der VDR ansonsten mit einem sgfault beim Start gestorben ist. Mit ein bischen debugging hab ich dann herausgefunden, das das Plugin in database/metadata.cpp abgestürzt ist.
Hier mal das Log:
Dec 3 16:17:54 vdr vdr: [11650] UPnP server message: SQLite: INSERT OR REPLACE INTO VideoBroadcasts (ObjectID,Icon,Region,Channelname,ChannelNr) VALUES ('119',NULL,NULL,'3sat','13');
Dec 3 16:17:54 vdr vdr: [11650] UPnP server message: SQLite: COMMIT TRANSACTION
Dec 3 16:17:54 vdr vdr: [11650] UPnP server message: Commited transaction
Dec 3 16:17:54 vdr vdr: [11650] UPnP server message: SQLite: SELECT Value FROM System WHERE Key='SystemUpdateID'
Dec 3 16:17:54 vdr vdr: [11650] UPnP server message: Fetching column Value='1063' (1/1)
Dec 3 16:17:54 vdr vdr: [11650] UPnP server message: SQLite: INSERT OR REPLACE INTO System (Key,Value) VALUES ('SystemUpdateID',1064)
Dec 3 16:17:54 vdr vdr: [11650] UPnP server message: Find channel by number 0
Dec 3 16:17:54 vdr vdr[11650]: segfault at 4d8 ip 080a3409 sp ad8a52e0 error 4 in vdr[8048000+11b000]
Daraufhin hab ich mal nen kleinen Patch gebastelt und damit gehts nu bei mir. Vielleicht hilft es ja anderen.....
cu,
Quacks
QuoteOriginal von IG88
Quackshabe das grade mal getestet, sat 1, instant recording und dann manuell das replay gestartet, läuft seit über 1/2 h ohne probleme
-rwxr-xr-x 1 0 0 538534 Jan 1 00:00 hdplayer
der alte hdplayer ist 538526 bytes groß
Hi,
jo. der hdplayer passt. Nachdem ich die AudioSpur auf DD2.0 gewechselt habe, lief die Wiedergabe auch problemlos und ich konnte die Aufnahme schauen. Ich muss da mal forschen, wann und wo ich das reproduzieren kann. Ich hatte Schillerstrasse aufgenommen und mir ansehen wollen und hab vorgespult bis zum Anfang der Sendung. Dann ca. 1-2 Minuten geschaut und die EHD war komplett weg. Also auch kein TUN-Device mehr.
cu,
Quacks
QuoteOriginal von IG88
Stalkerda jetzt das replay problem gelöst ist gibt es eigentlich kaum noch gründe nicht die 1.7.9 zu verwenden, versuch doch mal das selbe mit der 1.7.9 und als bonus kannst du die *.ts dateien auch mit anderen tools testen und abspielen, außerdem gibt es tsplay für die eHD, damit kann man die tsaufnahme ohne vdr direkt abspielen ganz ohne vdr und xine
Hmmh,
ich hab mir gerade eine Sat 1 Aufnahme (.ts vdr-1.7.9 + neuer hdplayer svn 13986) angesehen, und nach 2-3 Minuten hat es die komplette EHD gerissen. Der hdplayer scheint hier doch noch nicht suaber zu laufen.
cu,
Quacks
Hi,
bevor mich hd_brummy wieder verhaut, weil ich kaputte ebuilds hochgeladen habe, ha bich die aktuellen ebuilds mal als tarball hier im Portal abgelegt
nicht-vanilla vdr1.7.x compilieren?
Getestet habe ich das ganze gegen den VDR-1.7.9. Das TS-Replay Problem der EHD bei einigen Aufnahmen soll damit behoben sein.
Duck,
Quacks