Hi,
arghgra
ich hab da noch ein interessantes stueck code fuer den Em84xx gefunden.
EM84xx sample code
CU
9000h
Hi,
arghgra
ich hab da noch ein interessantes stueck code fuer den Em84xx gefunden.
EM84xx sample code
CU
9000h
QuoteOriginal von 9000H
Hi,arghgra
ich hab da noch ein interessantes stueck code fuer den Em84xx gefunden.
EM84xx sample code
CU
9000h
Thx - ich schau mal, ob das für den FMP-Treiber auch funzt.
arghgra
Hallo,
@arghra: hier hast du gesagt, dass der Bug (nach dem Spulen ist der Ton weg) bekannt ist.
Kannst du mir sagen, in welcher Version das noch ging, oder ob du schon weisst, wann du die .14 releasen wirst?
Gruß&Danke,
Hendrik
folgendes geändert in device.c beseitigt das Mute Problem:
Hi
I found a way how make auto tv system.
The "evHwFrameRateIndex" can give info of stream framerate, it is "3" if 25 fps, "4" if 30 fps, "5" if mpeg4 and not 25 fps, others unknown.
This is an example code, it is simple but works fine!
for dvb in device.c
int cDeviceEm84xx::PlayVideo(const uchar *Data, int Length)
{
DWORD sizeOut, FrameRate;
FMPProperty (KSPROPERTY_TYPE_GET, VIDEO_SET, evHwFrameRateIndex, 0, &FrameRate, sizeof(FrameRate), &sizeOut);
if (FrameRate == 3) {
FMPSet(FMPI_VIDEOOUT, FMPV_VIDEOOUT_COMPOSITE | FMPV_VIDEOOUT_TV | SET_PAL);
}
else{
FMPSet(FMPI_VIDEOOUT, FMPV_VIDEOOUT_COMPOSITE | FMPV_VIDEOOUT_TV | SET_NTSC);
}
.......
for dvd in player.c
eOSState cControlEm84xx::ProcessKey(eKeys Key)
{
DWORD sizeOut, FrameRate;
FMPProperty(KSPROPERTY_TYPE_GET, VIDEO_SET, evHwFrameRateIndex, 0, &FrameRate, sizeof(FrameRate), &sizeOut);
if(FrameRate == 3 ){
FMPSet(FMPI_VIDEOOUT, FMPV_VIDEOOUT_COMPOSITE | FMPV_VIDEOOUT_TV | SET_PAL);
}
else{
FMPSet(FMPI_VIDEOOUT, FMPV_VIDEOOUT_COMPOSITE | FMPV_VIDEOOUT_TV | SET_NTSC);
}
......
I tested dvd only, becouse have no ntsc dvb now.
I modified mplayer for auto system too, if anybody interesting I can write about it.
@arghra: try this please, may be you add auto system in em84xx.
And yet - be a fine in auto mode switch osd vertical size.
lnj: the Sigma lib provides a auto-tv-system feature, where NTSC/Pal is automtically switched dep. on the replayed video - I will integrate this in 0.0.14.
What do you mean with "And yet - be a fine in auto mode switch osd vertical size."? You mean that the em84xx plugin should switch the vdr osd size depending on the selected tv system in em84xx?
arghgra
Soderle - anbei ein Preview mit erster StillPicture-Funktionalität zur Anzeige der Bilder beim Schneiden.
Aber Achtung: das ist nur ein Proof-of-concept - sind noch etliche Macken und Dellen drin. Ist für alle die gedacht, die immer das neueste haben wollen oder endlich mal nen Film mit em84 schneiden wollen ;).
Get it: https://www.vdr-portal.de/www.arghgra.de…illtest1.tar.gz
Edit: Bitte anhängen Patch anwenden - behebt einen Speichercrash (thx Uwe)
arghgra
QuoteOriginal von arghgra
Soderle - anbei ein Preview mit erster StillPicture-Funktionalität zur Anzeige der Bilder beim Schneiden.
...
Funktioniert hier bisher ohne Probleme. Super
Man sollte noch die nun aktivierte Funktion "VideoHwPlaySyncFaster" erwähnen.
Beim zappen bekommt man so schneller ein sichtbares Live-Bild und Aufnahmen lassen sich auch besser spulen bzw der 1min Jump (gelbe bzw grüne Taste) geht flotter vonstatten.
Hallo,
schnapp und Danke!
Gruß Ulf
Ps: tut alles wie es soll!
Läuft bei mir jetzt auch seit einer woche, alles super
bisher.
@arghra
Can you make mplayer calling without mpegdriver unload, then mplayer can works with vdr osd in slave mode
if in device.c in bool cDeviceEm84xx::SetPlayMode(ePlayMode PlayMode)
switch (PlayMode) {
case pmNone:
mThread->Stop();
break;
case pmAudioVideo:
case pmAudioOnlyBlack:
case pmAudioOnly:
case pmVideoOnly:
Open();
mThread->Start();
break;
case pmExtern_THIS_SHOULD_BE_AVOIDED:
mThread->Stop();
Close();
break;
default:
break;
}
change on
switch (PlayMode) {
case pmNone:
mThread->Stop();
break;
case pmAudioVideo:
case pmAudioOnlyBlack:
case pmAudioOnly:
case pmVideoOnly:
Close():
Open();
mThread->Start();
break;
case pmExtern_THIS_SHOULD_BE_AVOIDED:
mThread->Stop();
break;
default:
break;
}
i can see vdr osd in mplayer (with mplayer plugin and mplayer em84xx-patch), but disc mode not works, i cannot found where insert driver reloading for it
may be you have any idea for use mplayer with vdr osd?
this is will be a fine
Hi lnj,
thanks for the Info!
I use the following at now, but disc mode not works!
--- device.c.org 2007-04-12 00:54:31.000000000 +0200
+++ device.c 2007-05-07 18:20:20.000000000 +0200
@@ -489,6 +491,11 @@
switch (PlayMode) {
case pmNone:
mThread->Stop();
+ if (mLastPlayMode == pmExtern_THIS_SHOULD_BE_AVOIDED)
+ {
+ Close();
+ mLastPlayMode = pmNone;
+ }
break;
case pmAudioVideo:
@@ -501,7 +508,7 @@
case pmExtern_THIS_SHOULD_BE_AVOIDED:
mThread->Stop();
- Close();
+ mLastPlayMode = PlayMode;
break;
default:
--- device.h.org 2007-04-12 00:16:42.000000000 +0200
+++ device.h 2007-05-07 15:43:02.000000000 +0200
@@ -39,6 +39,7 @@
bool mAc3;
int mLastVolume;
int mLastSampleRate;
+ int mLastPlayMode;
protected:
virtual void MakePrimaryDevice(bool On);
Display More
Hi,
I use the following at now. PlayDisc-Mode and Mplayer-em84 with OSD works now!
Thanks arghgra for the Help!
--- device.c.org 2007-05-07 20:10:28.000000000 +0200
+++ device.c 2007-05-07 20:20:59.000000000 +0200
@@ -85,6 +85,7 @@
mInputAspectRatio169 = false;
mAspectRatioDataChanged = false;
+ mUsePlayDisc = false;
mSpdifForwardEnabled = SetupEm84xx.SpdifForward;
mPlayMode = pmNone;
mAc3 = false;
@@ -489,6 +492,11 @@
switch (PlayMode) {
case pmNone:
mThread->Stop();
+ if (mLastPlayMode == pmExtern_THIS_SHOULD_BE_AVOIDED)
+ {
+ Close();
+ mLastPlayMode = pmNone;
+ }
break;
case pmAudioVideo:
@@ -501,7 +509,16 @@
case pmExtern_THIS_SHOULD_BE_AVOIDED:
mThread->Stop();
+ mLastPlayMode = PlayMode;
+ if (GetUsePlayDisc())
+ {
+ cDeviceEm84xx::GetInstance()->SetUsePlayDisc(false);
+ mLastPlayMode = pmNone;
Close();
+ }
break;
default:
--- device.h.org 2007-05-07 20:10:28.000000000 +0200
+++ device.h 2007-05-07 20:10:22.000000000 +0200
@@ -15,6 +15,12 @@
static cDeviceEm84xx* GetInstance(void);
+private:
+ bool mUsePlayDisc;
+public:
+ void SetUsePlayDisc(bool iUse) { mUsePlayDisc = iUse; };
+ bool GetUsePlayDisc() { return mUsePlayDisc; };
+
private:
static cDeviceEm84xx* mInstance;
cOsdProviderEm84xx* mOsdProvider;
@@ -39,6 +45,7 @@
bool mAc3;
int mLastVolume;
int mLastSampleRate;
+ int mLastPlayMode;
protected:
virtual void MakePrimaryDevice(bool On);
--- em84xx.c.org 2007-03-10 14:25:48.000000000 +0100
+++ em84xx.c 2007-05-07 20:20:05.000000000 +0200
@@ -140,6 +140,8 @@
cOsdObject *cPluginEm84xx::MainMenuAction(void)
{
cControl::Launch(new cControlEm84xx(cDeviceEm84xx::GetInstance()));
+ if (cDeviceEm84xx::GetInstance())
+ cDeviceEm84xx::GetInstance()->SetUsePlayDisc(true);
return NULL;
}
Display More
Ich weiss nicht ob das der richtige thread ist, aber hier scheinen sich die em84xx- experten zu tummeln. Ich habe ein problem mit meiner activy 300. Ich nutze Gen2VDR
und hab ne budget Karte drin. Hat die ersten 4
Wochen auch alles Wunderbar funktioniert. Allerdings hab ich jetzt das Problem
das das Bild aus grün-lila Schnee besteht und der ton verzerrt ist und ruckelt.
Könnte es sein das mein Mainboard schrott ist ?
Hatte dieses grün-lila problem auch schonmal durch zufall
wegbekommen, jetzt krieg ich es aber nicht mehr hin.
Freevo dagegen funktioniert einwandfrei, daher wirds wohl
am em84xx-plugin liegen. (Auch über das mplayer-plugin tritt das gleiche problem auf)
Ich nix experte, aber was sagt der untere SCART?
untere SCART -> Fernseher (weiß nicht ob Overlay deaktiviert werden muß)
der zeigt nur schwarz-weisse, flackernde streifen. (Nach dem VDR start)
QuoteOriginal von mvdbeek
der zeigt nur schwarz-weisse, flackernde streifen. (Nach dem VDR start)
Mach mal dafür bitte ein neuen Post auf, das scheint ein größeres Problem zu sein!
Am besten unter gen2vdr.
...
May 7 20:47:31 [vdr] [3468] initializing plugin: em84xx (0.0.13): An output plugin for sigma em84xx chips
May 7 20:47:31 [vdr] [3468] em84xx: checking for a dvd drive
May 7 20:47:31 [vdr] [3468] em84xx: dvd drive detected (device: /dev/hdc)
May 7 20:47:31 [kernel] [Received irq data: 0000100c-0000100b-00008000]
May 7 20:47:31 [kernel] [Received ring3 pid is 4019]
...
Du hast ein Problem mit deinem DVD-Laufwerk, wie es aussieht!
Editiere mal unter /_config/bin/em84xx.env folgendes:
Hallo, ich klinke mich mal hier ein da ich das Plugin nicht übersetzt kriege. Folgende Fehler treten auf:
device.h:49: error: extra qualification 'cDeviceEm84xx::' on member 'GrabOsd'
device.h:88: error: extra qualification 'cDeviceEm84xx::' on member 'SpeedControl'
Das System ist ein Debian Etch 4.0 mit Kernel 2.6.15 und der realmagic-Treiber ist auch vorhanden. Und wo ich schon dabei bin: Was hat es mit dem "MAKEDEV-EM8400.sh"-Skript auf sich? Steht in allen Anleitungen ist aber nirgends zu finden.
hi
bropir mal das .
im Makefile des em84xx zu den Defines noch "-D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS" hinzufügen ...
mfg det
PS : habe noch 2 fehler gefunden .
1: bei divx wen man das Menü öffnet fesetzt sich das Bild
2: bei eingeschalteten Menü mplayer und am ende schaltet er nicht mehr auf den vdr sondern hängt sich einfach auf .
Don’t have an account yet? Register yourself now and be a part of our community!