You are not logged in.

Dear visitor, welcome to VDR Portal. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

21

Friday, September 24th 2010, 10:07am

Quoted

Original von MartenR
Wir müßten uns im Prinzip den Strom den der vdr beim zurückspulen ausgibt mal im Hexeditor anschauen, dann könnte wir wahrscheinlich sehen, was falsch läuft. Ich bin nur leider von vdr räumlich isoliert.
Falls wir jemand sowas zur Verfügung stellen kann werde ich mir das anschauen.
Marten


Hallo Marten,

wenn du mich instruierst, was da genau zu tun ist, mach ich das gerne ;)

Gruß
Tomas
anthra-stuff: Screenshots Übersicht der anthra-skins

WZ-VDR :::: Asus P5N7A-VM, Intel E5200, TT S2-1600; Debian, Linux-3.7.8, VDR-2.0.1, NVIDIA-304.64, je nach Laune Ausgabe über xine-lib mit df-extensions + vdr-xine-0.9.4 oder softhddevice.

bexbier

Intermediate

Posts: 563

Location: bremen

  • Send private message

22

Friday, September 24th 2010, 12:53pm

mahlzeit,

habs grad mal versucht, bekomme aber nur mist raus.

*EDIT*
Habs nochmal geändert, nun sinds zahlen ;)

hab ne log.h erstellt:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <stdio.h>

#define INFOFILE "/tmp/data.log"

char *StrToHexStr(char *str)
{
char *newstr = new char[(strlen(str)*2)+1];
char *cpold = str;
char *cpnew = newstr;

while('\0' != *cpold) {
sprintf(cpnew, "%02X", (char)(*cpold++));
cpnew+=2;
}
*(cpnew) = '\0';
return(newstr);
} 

void writeInfo(const char *Data )
{

  FILE *infofile=fopen(INFOFILE ,"a+");

  if (!infofile){
     esyslog("can not write %s", INFOFILE);
     return;
  }

  fputs(StrToHexStr((char *)Data),infofile);
  fclose(infofile);
}


und dann in der ringbuffer.c unter cFrame so eingefügt:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "log.h"
// --- cFrame ----------------------------------------------------------------

cFrame::cFrame(const uchar *Data, int Count, eFrameType Type, int Index, uint32_t Pts)
{
  count = abs(Count);
  type = Type;
  index = Index;
  pts = Pts;
  if (Count < 0){
     data = (uchar *)Data;
     writeInfo((const char*)data);}  <---
  else {
     data = MALLOC(uchar, count);
     if (data){
        memcpy(data, Data, count);
        writeInfo((const char*)data);}  <---
     else
        esyslog("ERROR: can't allocate frame buffer (count=%d)", count);
     }
  next = NULL;
}


wenn ich nun ne aufnahme starte wird auch in die data.log geschrieben, jedoch nur son kram, kannst du so eine ausgabe gebrauchen ?(ist nur nen beispiel von einer laufenden aufnahme) :

Source code

1
47577A1F6E657747577A186E657747577A196E657747577A186E657747577A1E6E657747577A1E6E657747577A1C6E657747577A1B6E657747577A136E657747577A196E657747577A1F6E657747577A1D6E657747577A146E657747577A196E657747577A166E657747406E657747577A126E657747577A176E657747577A1B6E657747577A1B6E657747577A1C6E657747577A1F6E657747577A196E657747577A1C6E657747577A1F6E657747577A1E6E657747577A116E657747577A146E657747577A1E6E657747577A1A6E657747577A196E657747406E657747577A176E657747577A1D6E6


bzw. ist cframe überhaupt nen ansatzpunkt ?
MfG

bex

server -> Asus p8h67-i -Intel 2100T - Cine CT v6
client 1 -> Asus p5n7a-vm -Intel E5200 - Technisat Cablestar HD 2
client 2 -> Raspberry - raspbian - vompclient

This post has been edited 3 times, last edit by "bexbier" (Sep 24th 2010, 3:33pm)


MartenR

Intermediate

Posts: 459

Location: Berlin

  • Send private message

23

Friday, September 24th 2010, 4:38pm

@bexbier
ich denke im PlayVideo des verwendeten Devices ist der richtige Ort zum herausschreiben bzw. auch im PlayTSVideo.
Wobei das ganze als Binärdaten einfach herausgeschreiben werden sollte(dann kann man es sich z.B. auch mit VLC anschauen), ich brauche etwa 20 MByte an Daten, da ein Frame etwa 100-200 Kbyte groß ist und ich am Anfang und Ende die Probleme vermute

Gruß

Marten
vdr experimental, Femon, vdr live, acpi-wakeup, vompserver, undelete, epgsearch, vdr-burn, Raspberry Pi und Vompserver Windows Client (build from git)

bexbier

Intermediate

Posts: 563

Location: bremen

  • Send private message

24

Friday, September 24th 2010, 4:59pm

hi marten,

habs mal eben in xine unter playtsvideo eingebaut, dann wird aber auch das livebild mitgeloggt, und ich bekam von xine-ui nach kurzer zeit eine meldung das zuviele bilder verworfen wurden.
Die data.log ist auch schnell sehr groß geworden und wenn ich versuch sie zu öffnen mit vlc passiert nichts, aber vlc meckert auch nicht.
Da ja nur das spulen interessant ist muss ich mal schauen wie man es hinbekommt das nur das geloggt wird.

Bin für jeden tip dankbar
MfG

bex

server -> Asus p8h67-i -Intel 2100T - Cine CT v6
client 1 -> Asus p5n7a-vm -Intel E5200 - Technisat Cablestar HD 2
client 2 -> Raspberry - raspbian - vompclient

Torsten73

Professional

Posts: 1,692

Occupation: Radio Fernsehtechniker

  • Send private message

25

Tuesday, September 28th 2010, 8:06pm

Ich weiß nicht obs weiterhilft, aber im aktuellen xinelib Zweig mit Durchflieger Patchen und startstream Patch habe ich beim rückwärtsspulen von 720p/1080i keine Probleme.
Nur beim Vorwärtsspulen wird es extrem pixelig und man kann optisch ein vor/zurückspringen der Frames/Bilder sehen. D.h. es werden immer wieder alte Frames/Bilder angezeigt. Die Spulgeschwindigkeit scheint aber zu passen. Es ist aber schwer zu erkennen, aufgrund der massiven Pixel/Kästchen.
Yavdr 0.5: KVM Server mit YAVDR als Host, Tyan Xeon Server, Virtualbox + KVM
Yavdr 0.5: Asus AT5iont-t, ION2, 4GB Ram, Momentus 2,5" 500GB, HEX TFX 300W 82+, Cine S2 V6.2 , 38W max.
Yavdr 0.5:
Zotac D2550ITXS-A-E mit GT610 OB, TT S2-4100 PCI-e ,Joujye NU-0568I-B
Yavdr 0.5:
Sandy Bridge G840, Tests und Energieverbrauch , CoHaus CIR, Cine S2 V6.2

lostinspc

Intermediate

Posts: 505

Location: Stuttgart

  • Send private message

26

Tuesday, September 28th 2010, 9:05pm

Quoted

Originally posted by Torsten73
Ich weiß nicht obs weiterhilft, aber im aktuellen xinelib Zweig mit Durchflieger Patchen und startstream Patch habe ich beim rückwärtsspulen von 720p/1080i keine Probleme.
Nur beim Vorwärtsspulen wird es extrem pixelig und man kann optisch ein vor/zurückspringen der Frames/Bilder sehen. D.h. es werden immer wieder alte Frames/Bilder angezeigt. Die Spulgeschwindigkeit scheint aber zu passen. Es ist aber schwer zu erkennen, aufgrund der massiven Pixel/Kästchen.

Treffend beschrieben, genau so sieht es bei mir (xine-plugin mit xine-lib-1.2-r11577, Durchflieger v15-stream-start-v100614, nvidia 256.53) auch aus ....

Grüße, Peter
SW: vdr-latest, softhddevice -git, nvidia 313.26 , arch x86_64
HW: 1x Cine C/T V6, 1x Satelco Budget DVB-C, Asus P5G41-M, 2 GB, Pentium 6300, Asus G210 passiv, 60 GB Samsung SSD 470, 3TB WD AV GP (WD30EURS) , Silverstonetek LaScala 10M, LG LM 669S, 1920x1080@50
VDR-User #81

kls

Master

  • "kls" started this thread

Posts: 2,158

Location: Mettenheim

  • Send private message

27

Sunday, October 31st 2010, 12:25pm

Ich habe mir das jetzt mal genauer angeschaut und glaube, eine Lösung gefunden zu haben.

Die Problemkanäle senden ja in 720p/50, also mit 50 Vollbildern pro Sekunde, und nicht, wie ich irrtümlich angenommen hatte, mit 25. Nach Anwendung von folgendem Patch läuft bei mir der schnelle Vor- und Rücklauf bei solchen Kanälen ohne jede Artefakte.

Könnt ihr das bitte mal mit diversen Ausgabedevices verifizieren?
Es greift übrigens nur bei neuen Aufnahmen. Bei einer bereits bestehenden Aufnahme müsste die 'index'-Datei gelöscht werden, damit sie neu generiert wird.

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
--- remux.c     2010/06/05 13:32:15     2.47
+++ remux.c     2010/10/31 11:04:14
@@ -863,10 +863,8 @@
                              frameDuration = 3600; // PAL, 25 fps, timing with jitter
                           else if (Delta % 3003 == 0)
                              frameDuration = 3003; // NTSC, 29.97 fps
-                          else if (abs(Delta - 1800) <= 1) {
-                             frameDuration = 3600; // PAL, 25 fps
-                             framesPerPayloadUnit = -2;
-                             }
+                          else if (abs(Delta - 1800) <= 1)
+                             frameDuration = 1800; // PAL, 50 fps
                           else if (Delta == 1501) {
                              frameDuration = 3003; // NTSC, 29.97 fps
                              framesPerPayloadUnit = -2;


Klaus
Gib CI+/HD+ keine Chance! Lasst diese Pest am ausgestreckten Arm verhungern!
Wer für sowas bezahlt macht sich zum Totengräber von Projekten wie VDR!
Die Wahrheit ueber HD Plus
CI-Plus -- Das trojanische Pferd im Wohnzimmer

This post has been edited 1 times, last edit by "kls" (Oct 31st 2010, 12:27pm)


28

Sunday, October 31st 2010, 1:28pm

Wo kommt der "Patch" dann genau?
order so mindestens ein idea wohin damit?

29

Sunday, October 31st 2010, 1:32pm

@Ichijoe

in remux.c
YaVDR-0.4-Pre1 - DVB-C - Nvidia GT520

Björn

Intermediate

Posts: 277

Location: Rostock

  • Send private message

30

Sunday, October 31st 2010, 1:42pm

Hier mit vdpau und xine funktioniert das Spulen bei ZDF HD nun ohne jegliche Artefakte.
Super!

Vielen Dank Klaus!
Gruss Björn.

mein System


-- P4 Dual-Core (E5300), 2 x TT-1600, GigaByte GA-E7AUM-DS2H, 2 x 640 GB Samsung, 16 GB SSD --
-- OpenSuse 11.4, v4l-dvb, vdr 1.7.42 mit softhddevice, nvidia 270.26 --


SilverGreen-Skin

31

Sunday, October 31st 2010, 2:39pm

Zu welchen VDR-1.7.xx gehört diese "remux.c" anscheinend nicht in die das ich noch hatte (VDR 1.7.0-extp-72-v3 ?) leider hatte ich meine Platte wieder platt gemacht wegen Komprimierens Fehler beim XBMC-9.11.

Zum infos ich renne (oder mochte gerne) ein EasyVDR-8...


Auf jeden Fall schent meine Exemplar vom 2007:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/*
 * remux.c: A streaming MPEG2 remultiplexer
 *
 * See the main source file 'vdr.c' for copyright information and
 * how to reach the author.
 *
 * The parts of this code that implement cTS2PES have been taken from
 * the Linux DVB driver's 'tuxplayer' example and were rewritten to suit
 * VDR's needs.
 *
 * The cRepacker family's code was originally written by Reinhard Nissl <rnissl@gmx.de>,
 * and adapted to the VDR coding style by Klaus.Schmidinger@cadsoft.de.
 *
 * $Id: remux.c 2.0  2007/11/25 13:56:03 kls Exp $
 */

This post has been edited 3 times, last edit by "Ichijoe" (Oct 31st 2010, 2:43pm)


kls

Master

  • "kls" started this thread

Posts: 2,158

Location: Mettenheim

  • Send private message

32

Sunday, October 31st 2010, 2:51pm

Quoted

Originally posted by Ichijoe
Zu welchen VDR-1.7.xx gehört diese "remux.c"


Sorry, der Patch ist natürlich gegen die aktuelle Developer-Version 1.7.16.

Klaus
Gib CI+/HD+ keine Chance! Lasst diese Pest am ausgestreckten Arm verhungern!
Wer für sowas bezahlt macht sich zum Totengräber von Projekten wie VDR!
Die Wahrheit ueber HD Plus
CI-Plus -- Das trojanische Pferd im Wohnzimmer

33

Sunday, October 31st 2010, 3:18pm

Hallo Klaus,

danke für den Patch gegen remux.c, sieht soweit alles i.O. aus, keine Verpixellungen mehr.

Ich hatte noch alte ZDF-Aufnahmen und ARD-Aufnahmen, wenn man da den index löscht und neu generieren lässt, dann wird jetzt die doppelte Aufnahmezeit angezeigt.

Kann das auch mit dem Patch zu tun haben?

VDR-Version, 1.7.16.

Danke vorab!

Gruß
Wolfgang
Hardware: -
Software: -

kls

Master

  • "kls" started this thread

Posts: 2,158

Location: Mettenheim

  • Send private message

34

Sunday, October 31st 2010, 3:33pm

Quoted

Originally posted by wbreu
Hallo Klaus,

danke für den Patch gegen remux.c, sieht soweit alles i.O. aus, keine Verpixellungen mehr.

Ich hatte noch alte ZDF-Aufnahmen und ARD-Aufnahmen, wenn man da den index löscht und neu generieren lässt, dann wird jetzt die doppelte Aufnahmezeit angezeigt.

Kann das auch mit dem Patch zu tun haben?


In der 'info' Datei steht die Framerate auch drin, da müsstest du die Zeile

F 25

durch

F 50

ersetzen.

Klaus
Gib CI+/HD+ keine Chance! Lasst diese Pest am ausgestreckten Arm verhungern!
Wer für sowas bezahlt macht sich zum Totengräber von Projekten wie VDR!
Die Wahrheit ueber HD Plus
CI-Plus -- Das trojanische Pferd im Wohnzimmer

35

Sunday, October 31st 2010, 4:54pm

Sehr schön...funzt!

Vielen Dank
iNOB

Mein VDR

Hartware: Gehäuse: Ahanix MCE 302, Mobo: Kontron 986LCD-M/mITX, CPU: Intel Core2 Duo Mobile T7400 2,16GHz, 2GB RAM, SAT: Digital Devices DuoFlex S2 miniPCIe, Graka: ASUS EN210 Silent 1GD3, 3x2TB 3,5" WD HD, 1x DVD-Brenner Pioneer, Atric IR-Einschalter+Empfänger, FB One-For-All URC-7960, SoundGraph iMON LCD
Weichware: Squeeze, Kernel 3.2.2, NVidia v313.18 xine-lib-1.2-git-df-extensions, xine-ui-hg, xine-0.9.4-df, VDR 1.7.32 gepatched

36

Sunday, October 31st 2010, 6:23pm

Quoted

Original von kls

Quoted

Originally posted by wbreu
Hallo Klaus,

danke für den Patch gegen remux.c, sieht soweit alles i.O. aus, keine Verpixellungen mehr.

Ich hatte noch alte ZDF-Aufnahmen und ARD-Aufnahmen, wenn man da den index löscht und neu generieren lässt, dann wird jetzt die doppelte Aufnahmezeit angezeigt.

Kann das auch mit dem Patch zu tun haben?


In der 'info' Datei steht die Framerate auch drin, da müsstest du die Zeile

F 25

durch

F 50

ersetzen.

Klaus


Nabend Klaus,

jepp damit geht's jetzt einwandfrei.

Danke!

Gruß
Wolfgang
Hardware: -
Software: -

37

Sunday, October 31st 2010, 6:44pm

Quoted

Original von kls
In der 'info' Datei steht die Framerate auch drin, da müsstest du die Zeile

F 25

durch

F 50

ersetzen.

Klaus


Heist das nun, dass man das bei allen Aufnahmen in der "info" ersetzten muss?

Hier nicht klicken!!



This post has been edited 1 times, last edit by "C-3PO" (Oct 31st 2010, 6:47pm)


gda

Im Forum Zuhause

Posts: 11,193

Location: HH

  • Send private message

38

Sunday, October 31st 2010, 6:50pm

Quoted

Original von C-3PO

Quoted

Original von kls
In der 'info' Datei steht die Framerate auch drin, da müsstest du die Zeile

F 25

durch

F 50

ersetzen.

Klaus


Heist das nun, dass man das bei allen Aufnahmen in der "info" ersetzten muss?

Natürlich nicht, nur bei den Aufnahmen die auch eine Framerate von 50 haben. Also wohl im wesentlichen bei ARD HD und ZDF HD. Zumindest bei mir im Kabel.

Gerald

OrigenAE S16T, ASRock K10N78D, Athlon II X2 4400e (unlocked Sempron 140), 2GB RAM, OCZ Vertex 30GB, 2xWD10EADS, 3xKNC One TV-Station DVB-C, G210 MSI N210-MD512H, yaVDR.
Seagate Dockstar, Debian Squeeze, VDR 1.7.16, 500 GB 2,5" HD, 2xSundtek MediaTV Home DVB-C/T.

MartenR

Intermediate

Posts: 459

Location: Berlin

  • Send private message

39

Sunday, October 31st 2010, 7:06pm

Quoted

Die Problemkanäle senden ja in 720p/50, also mit 50 Vollbildern pro Sekunde, und nicht, wie ich irrtümlich angenommen hatte, mit 25. Nach Anwendung von folgendem Patch läuft bei mir der schnelle Vor- und Rücklauf bei solchen Kanälen ohne jede Artefakte.

Das ist ein interessanter Grund.
Da hatte ich extra einen Workaround in den Vomp client code für HD eingebaut, um die 50 fps als 25 fps (bzw. 60 fps als 30 fps) abzufangen.
Den muß ich jetzt wohl irgendwie deaktivieren.

Marten
vdr experimental, Femon, vdr live, acpi-wakeup, vompserver, undelete, epgsearch, vdr-burn, Raspberry Pi und Vompserver Windows Client (build from git)

40

Sunday, October 31st 2010, 8:05pm

Nur aus Interesse, ergibt sich das mit den 50 Frames nicht aus der Angabe in den Sendeformaten? Also 720p50 und 1080i50?

Dementsprechend wird doch auch 1080i hier in Europa mit 50 Frames gesendet, wobei jeder Frame eben ein Halbbild ist, wie auch bei 576i50 und bei 720p(rogressive) eben dann ein ganzes Bild. Warum steht da dann F25 in der Info Datei?

Ist kein Gemaule, ich möchte es nur verstehen.

Gruß
Frank
Say no to anamorphic output !! >> HowTo: APT Pinning <<

>>click<< for my VDR stuff

[¹] Accent HT200 (16x2 VFD), Xilence SFX (250W), GA-MA74GMT-S2, Athlon II X2 260u (25W), 4GB DDR3, WD10EADS 1TB, Quadro FX 580 ('G96GL'), Xine, L4M Twin S2 (V5.5)/FlexS2 (4x DVB-S2), Inverto Unicable®, mceusb, Ubuntu LTS 10.04, VDR 2.0.1 (amd64, S3, 68W)
[²] Modu CD21, MeanWell (80W) + LC-Power (75W), Futaba MDM166A, MSI H61M-P25, Celeron G440 (35W), 2GB DDR3, WD10EADS 1TB, NVS 300 ('GT218'), SoftHDDevice, L4M Twin S2 (V5.6)(2x DVB-S2), mceusb, Ubuntu LTS 12.04, VDR 2.0.1 (amd64, 43W)
[³] Dell PowerEdge 800 (modded), BeQuiet PurePower L7 (300W), Intel DH77KC, Core i3 2120 (65W), 8GB DDR3, HP SmartArray P400 256MB BBWC, 2x WD7500AADS, L4M Twin S2 (V6.2) & mPCIe (ngene), Xen 4.1 on Ubuntu LTS 12.04 (amd64, 50W)