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.

1

Thursday, August 31st 2006, 12:52pm

[ANNOUNCE] vdr-span-0.0.1

Hallo Portal,

endlich habe ich mich mal aufgerafft und ein Plugin geschrieben, das die Darstellung eines bzw. mehrerer Spectrum Analyzer ermöglicht. Es dient als Vermittler zwischen VDR-Plugins, die "(PCM-)Datenquellen" und/oder "Visualisierungs-Clients" sind.

Zwar hat _Frank_ schon so etwas ähnlich gemacht, aber da ich keine Soundkarte im VDR-Rechner habe, konnte ich seinen Ansatz nicht benutzen.
Und weil bald im Wohnzimmer der CD-Player durch den alleinigen Einsatz eines VDR ersetzt werden soll, muss natürlich auch die Visualisierung der Musik mit dabei sein (eigentlich gedacht für's graphlcd, aber das dauert wohl noch ein wenig).
Erster Testkandidat ist das mp3ng-plugin von Morone als Datenquelle und es ist auch direkt für Visualisierung zuständig (das lcdproc-plugin habe ich auch schon angetestet und probeweise zur Visualisierung genutzt).

Auszug aus der README:

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
This is a 'Sp'ectrum 'An'alyzer Plugin for the Video Disk Recorder (VDR).

Requirements:

VDR & (lib)fftw3

Description:

A plugin that can receive PCM-data from other plugins (e.g. mp3ng)
to compute frequency-data and to provide them to other plugins
to display a 'Sp'ectrum 'An'alyzer.
It is meant as a kind of middleware between
these providers and clients to be as generic as needed to be able to implement
the visualisation on all kinds of output-devices (OSD, lcd, graphlcd, framebuffer, etc.).
Sketch of the architecture:
| Data-provider sends PCM-data ---> | SpAn-plugin | >--- Visualization-clients
				request the spectrum-data "making s.th. handsome out of it" |


Installation:

cd /put/your/path/here/VDR/PLUGINS/src
tar -xzf /put/your/path/here/vdr-span-X.Y.Z.tar.bz2
ln -s span-X.Y.Z span
cd /put/your/path/here/VDR
make
make plugins
./vdr -P span


Setup:

Activate spectrum analyzer?	yes/no
De-(Activates) the plugin.
yes: The plugin receives data (only if clients also request data) and
on request hands the results over to clients.
no: In this case all data provider- and visualization-plugins are
rejected when trying to hand over data or to request results.

Use logarithmic diagram		yes/no
A (yet naive) try to equalize the heights of the bars a bit.
Lower frequencies are prevailing which results in an "high dynamic
range of the heights of the bars" (= mostly few extremely high bars on
the left, further right more decreasing or even no bars at all).
yes: Suspends a "no" at "Use pure (unequalized) data". Scaling of the heights
of the bars is done logarithmically.
no: No logarithmic scaling is done.
Tips to improve this way of equalizing are warmly welcome!

Hide mainmenu entry		yes/no
Should be self-explanatory.
At the moment there is no use of displaying the plugin's entry in the 
main menu. See ToDo (way below) for the reason.

Use pure (unequalized) data	yes/no
yes: Really compute the pure data without equalizing anyhow.
no: Values of higher frequencies are emphasized resulting in a "bit nicer way
of displaying the frequencies" than with pure data.


Notes:
- Tested on VDR-1.4.0 with a FF-DVB-s 2MB (CPU = PIII 1,2GHz) with mp3ng-plugin
  as self-made data provider as well as visualization-client.
  Additionally the lcdproc-plugin was used as visualization-client,
  but just as a proof-of-concept. Thus, there were two clients
  active simultaneously.
- I would be very glad if the authors of plugins for rendering vdr-information
  on (external) displays (graphlcd/graphtft/lcdproc/etc.) or the OSD (mp3(ng)/
  cdda/radio?/muggle?) used the data provided by this plugin to visualize
  a spectrum analyzer.


Generic example how to use it:
// Please see the "real" README for the "HowTo".

TODO:
- Test the stuff with cdda-plugin (provider) and graphlcd-plugin (visualization)
- Test it on my streaming-client (it's a PIII 450MHz with DXR3 now)
- Implement the output of the names of all data-source- and visualization-plugins on
  selecting the mainmenu's entry.
  A change in the "Plugin-Service-Protocol" could be neccessary to support getting ALL
  plugins that can handle a service.
- Implement bar-peaks and their fall off
Zu finden ist es auf http://lcr.vdr-developer.org/

Da es die erste Version ist, möchte ich alle bitten, Nachsicht zu üben, falls der VDR sich mal beendet, während "visualisiert" wird. Aber ich denke, dass ich viele Fehler bereits behoben habe - aber man weiss ja nie, wo sich noch einer versteckt - irgendwo, wo ich während der Tests nicht hingekommen oder dran gedacht habe.
Sollte doch mal was schief gehen, meldet dies bitte. :]

Ein paar Infos, die sich bereits angesammelt haben, ab hier.

So, ich hoffe, dass ich nichts Wichtiges vergessen habe und nun viel Spaß!

Viele Grüße
Chriss

Edit: Visualisierungsclient-Versionen zum Testen - Benutzung auf eigene Gefahr und evtl. mit ein paar Anpassarbeiten vor dem Kompilieren:
[ANNOUNCE] vdr-span-0.0.1
[ANNOUNCE] vdr-span-0.0.1

Signatur

Server: VDR 2.0.2, Kubuntu 12.04, 3.2.0-48-generic-pae Kernel
HW: AMD X2 4850, 4GB RAM, TeVii-S480, Asus M3A-H/HDMI, SeaSonic S12II 330W, WD 1,5TB Caviar Green, iMon-LCD, xine
Dienste: Router, Samba, DHCP, DNS, Mail, (T)FTP, LAMP, Portage-Mirror, VDR-Server für
Client: P3 1200MHz, DXR3, diskless, VDR 1.7.33, Gentoo, 2.6.32.60 Kernel, VFD: mdm166a
http://lcr.vdr-developer.org/

This post has been edited 1 times, last edit by "theonlychriss" (Sep 3rd 2006, 9:38am)


2

Thursday, August 31st 2006, 1:41pm

RE: [ANNOUNCE] vdr-span-0.0.1

Und weil's so schön ist, cdda läuft damit nun auch als Datenquelle.

Viele Grüße
Chriss

Edit: Patch erneuert, wegen bösem C++-Anfänger-Fehler
theonlychriss has attached the following file:

Signatur

Server: VDR 2.0.2, Kubuntu 12.04, 3.2.0-48-generic-pae Kernel
HW: AMD X2 4850, 4GB RAM, TeVii-S480, Asus M3A-H/HDMI, SeaSonic S12II 330W, WD 1,5TB Caviar Green, iMon-LCD, xine
Dienste: Router, Samba, DHCP, DNS, Mail, (T)FTP, LAMP, Portage-Mirror, VDR-Server für
Client: P3 1200MHz, DXR3, diskless, VDR 1.7.33, Gentoo, 2.6.32.60 Kernel, VFD: mdm166a
http://lcr.vdr-developer.org/

This post has been edited 1 times, last edit by "theonlychriss" (Aug 31st 2006, 3:57pm)


sn123py

Professional

Posts: 967

Location: Niedersachsen

  • Send private message

3

Thursday, August 31st 2006, 1:46pm

RE: [ANNOUNCE] vdr-span-0.0.1

Moin.

Ich habe mir mal dein Plugin gezogen und instaliert. Als fftw3 habe ich die Version 3.1.2-1 verwendet. Beim Starten mit diesem Plugin gibts aber ein:

Source code

1
*** glibc detected *** double free or corruption (!prev): 0x081e0ec0 ***


gdb Backtrace meldet dazu:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Core was generated by `./vdr -Pspan -v /video0 -r /opt/vdr/vdr/vdrrecord.sh -c /opt/vdr/vdr/config -E'.
Program terminated with signal 6, Aborted.
#0  0x4019a7c7 in raise () from /lib/tls/libc.so.6
(gdb) bt
#0  0x4019a7c7 in raise () from /lib/tls/libc.so.6
#1  0x4019c06b in abort () from /lib/tls/libc.so.6
#2  0x401d1545 in __fsetlocking () from /lib/tls/libc.so.6
#3  0x401d7b97 in malloc_usable_size () from /lib/tls/libc.so.6
#4  0x401d8032 in free () from /lib/tls/libc.so.6
#5  0x404c1ecd in fftw_kernel_free () from /usr/lib/libfftw3.so.3
#6  0x40539ded in fftw_free () from /usr/lib/libfftw3.so.3
#7  0x4001ccfe in cAudioChannel::~cAudioChannel () from ./PLUGINS/lib/libvdr-span.so.1.4.2
#8  0x4001cae4 in cSpectrumAnalyzer::~cSpectrumAnalyzer () from ./PLUGINS/lib/libvdr-span.so.1.4.2
#9  0x4001c7a7 in cPluginSpan::~cPluginSpan () from ./PLUGINS/lib/libvdr-span.so.1.4.2
#10 0x080cf8d0 in cDll::~cDll ()
#11 0x080fac7e in cListBase::Del ()
#12 0x080cf435 in cPluginManager::Shutdown ()
#13 0x08100076 in main ()



irgendwelche Tipps?
VDR(Via Epia M-10000, 512MB, 2xNexus-s, 120GB&160GB&160GB Samsung SpinPoint, NEC 1300 DVD+-R/RW, IR-Kit, VFD Noritake)
Gehäuse: Eigenbau (s.o.)

kroesi

Trainee

Posts: 156

Location: Euskirchen

  • Send private message

4

Thursday, August 31st 2006, 1:53pm

Wow !

Tolle Sache !

Ich würde es gerne testen, allerdings benutze ich mittlerweile Gentoo und möchte es mir nicht durch "von Hand" kompilieren zerschiessen und bin immer noch zu blöd um Ebuilds zu erstellen ... sorry ! (Allerdings wüsste ich jetzt auch nicht, wie ich ein Plugin ohne Ebuild unter Gentoo installiere ...).

Trotzdem, schönes Feature !

Krösi
Silverstone C16M -- AMD ATHLON XP 2000 -- Elitegroup K7S5A -- 256 MB DDR -- 450GB
Hauppauge Nexus DVB-s, Nova DVB-t, PVR 150 -- Gentoo 2.6.24 -- DVD-Laufwerk

5

Thursday, August 31st 2006, 1:59pm

RE: [ANNOUNCE] vdr-span-0.0.1

@kroesi: Keine Panik, ein ebuild kommt auch noch - obwohl es nicht schwer ist, auch ohne solches ein Plugin zu installieren ;)

@sn123py: Hmmm, ich verwende fftw-3.0.1 (bei Gentoo die als stable markierte Version), dann schaue ich mal, was bei höheren Versionen passiert - melde mich dann wieder.

Viele Grüße
Chriss

Signatur

Server: VDR 2.0.2, Kubuntu 12.04, 3.2.0-48-generic-pae Kernel
HW: AMD X2 4850, 4GB RAM, TeVii-S480, Asus M3A-H/HDMI, SeaSonic S12II 330W, WD 1,5TB Caviar Green, iMon-LCD, xine
Dienste: Router, Samba, DHCP, DNS, Mail, (T)FTP, LAMP, Portage-Mirror, VDR-Server für
Client: P3 1200MHz, DXR3, diskless, VDR 1.7.33, Gentoo, 2.6.32.60 Kernel, VFD: mdm166a
http://lcr.vdr-developer.org/

6

Thursday, August 31st 2006, 2:24pm

Für Gentoo'ler ein vorab-ebuild - ich melde es noch hd_brummy, damit es auch offiziell wird.

Viele Grüße
Chriss

Edit: Tippfehler im ebuild gefixt.
theonlychriss has attached the following file:

Signatur

Server: VDR 2.0.2, Kubuntu 12.04, 3.2.0-48-generic-pae Kernel
HW: AMD X2 4850, 4GB RAM, TeVii-S480, Asus M3A-H/HDMI, SeaSonic S12II 330W, WD 1,5TB Caviar Green, iMon-LCD, xine
Dienste: Router, Samba, DHCP, DNS, Mail, (T)FTP, LAMP, Portage-Mirror, VDR-Server für
Client: P3 1200MHz, DXR3, diskless, VDR 1.7.33, Gentoo, 2.6.32.60 Kernel, VFD: mdm166a
http://lcr.vdr-developer.org/

This post has been edited 1 times, last edit by "theonlychriss" (Aug 31st 2006, 6:01pm)


kroesi

Trainee

Posts: 156

Location: Euskirchen

  • Send private message

7

Thursday, August 31st 2006, 4:59pm

Irre !

Das geht ja schnell hier ! Werde es am WE testen !!

Danke :D

Ich habe bei meinem ersten VDR unter Suse die Plugins nur von Hand kompiliert ! Aber bei Gentoo wüsste ich noch nicht einmal, in welches verzeichnis ich die Sourcen packen müsste, und nach langer Pause läuft mein VDR endlich wieder rund ! Ich will halt nichts mehr kaputtmachen ... ;-)

Krösi
Silverstone C16M -- AMD ATHLON XP 2000 -- Elitegroup K7S5A -- 256 MB DDR -- 450GB
Hauppauge Nexus DVB-s, Nova DVB-t, PVR 150 -- Gentoo 2.6.24 -- DVD-Laufwerk

8

Thursday, August 31st 2006, 6:04pm

Der Fehler "glibc: ..double free or corruption.." kommt bei dir durch den
"delete sa" Aufruf im Destructor von cPluginSpan in span.c .

Das VDR erst garnet startet liegt auch in span.c in
bool cPluginSpan::ProcessArgs(...)
dort musst du "return true" und nicht "return false" setzen.

und in cPluginSpan::Service

Source code

1
2
3
4
5
6
7
8
9
10
...
..
			while ( client == clients.Get(i) )
			{
				if ( 0 == client->Compare( ((Span_GetBarHeights_v1_0*)(Data))->name) )
				{
					found = true;
					break;
..
..


habe ich den Code etwas umgeaendert.. if ( 0 ==client.. ??? )

9

Thursday, August 31st 2006, 6:51pm

RE: [ANNOUNCE] vdr-span-0.0.1

Hi sn123py,

hat lange gedauert, aber jetzt weiss ich, was Du meinst.
Sehr komisch, es liegt meinen Nachforschungen nach wirklich in der fftw-library.
Wenn ich den fftw-plan rausnehme, passieren diese Fehler nicht (Fehler beim Anlegen und Löschen der FFTW-Struktur/-Objektes fftw_plan).

Habe jetzt mal die aktuellste unter Gentoo verfügbare Version installiert (fftw-3.1.2) und auch die alte (fftw-3.0.1) nochmal gegengetestet. Das Verhalten ist gleich X(.
Ich habe bei meinen Tests immer nur mit dem Startscript für den VDR gearbeitet, da bekommt man derlei Fehler nicht angezeigt. Gut, wieder was gelernt - daher vielen Dank an Dich!
Teilweise ist der VDR beim Starten per

Source code

1
vdr -u vdr --watchdog=60 --config=/etc/vdr --epgfile=/video/epg.data --log=3 --video=/video0 --port=2001 --lirc --vfat --record=/usr/lib/vdr/bin/vdrrecord-gate.sh --grab=/samba/chriss --shutdown=/video/commands/vdrshutdown.sh --plugin=span
direkt abgedüst - lapidar "Speicherzugriffsfehler". Meist wurde aber alles normal geladen und nur beim CTRL-C auf der Konsole kam Deine Fehlermeldung.
Mit valgrind habe ich wie gesagt dann gesehen, dass beim Erstellen des fftw_plans einige Unsauberheiten auftreten. Da ich (noch) nicht der Profi im Debuggen bin, vielleicht kann ja jemand damit mehr anfangen.

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
==14887== ERROR SUMMARY: 48 errors from 6 contexts (suppressed: 43 from 2)
==14887==
==14887== 8 errors in context 1 of 6:
==14887== Invalid write of size 4
==14887==    at 0x44426CE: ???
==14887==  Address 0x4296648 is 8 bytes after a block of size 8,192 alloc'd
==14887==    at 0x401A511: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==14887==    by 0x440699A: ???
==14887==    by 0x43B8EBD: ???
==14887==    by 0x43B8190: ???
==14887==    by 0x43B868F: ???
==14887==    by 0x80DD9AE: cDll::Load(bool) (in /usr/bin/vdr)
==14887==    by 0x80DE0AB: cPluginManager::LoadPlugins(bool) (in /usr/bin/vdr)
==14887==    by 0x4174F13: (below main) (in /lib/tls/libc.so)
==14887==
==14887== 8 errors in context 2 of 6:
==14887== Invalid write of size 4
==14887==    at 0x44426C6: ???
==14887==  Address 0x429664C is 12 bytes after a block of size 8,192 alloc'd
==14887==    at 0x401A511: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==14887==    by 0x440699A: ???
==14887==    by 0x43B8EBD: ???
==14887==    by 0x43B8190: ???
==14887==    by 0x43B868F: ???
==14887==    by 0x80DD9AE: cDll::Load(bool) (in /usr/bin/vdr)
==14887==    by 0x80DE0AB: cPluginManager::LoadPlugins(bool) (in /usr/bin/vdr)
==14887==    by 0x4174F13: (below main) (in /lib/tls/libc.so)
==14887==
==14887== 8 errors in context 3 of 6:
==14887== Invalid write of size 8
==14887==    at 0x44426B8: ???
==14887==  Address 0x4296640 is 0 bytes after a block of size 8,192 alloc'd
==14887==    at 0x401A511: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==14887==    by 0x440699A: ???
==14887==    by 0x43B8EBD: ???
==14887==    by 0x43B8190: ???
==14887==    by 0x43B868F: ???
==14887==    by 0x80DD9AE: cDll::Load(bool) (in /usr/bin/vdr)
==14887==    by 0x80DE0AB: cPluginManager::LoadPlugins(bool) (in /usr/bin/vdr)
==14887==    by 0x4174F13: (below main) (in /lib/tls/libc.so)
==14887==
==14887== 8 errors in context 4 of 6:
==14887== Invalid write of size 4
==14887==    at 0x4442486: ???
==14887==  Address 0x4296648 is 8 bytes after a block of size 8,192 alloc'd
==14887==    at 0x401A511: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==14887==    by 0x440699A: ???
==14887==    by 0x43B8EBD: ???
==14887==    by 0x43B8190: ???
==14887==    by 0x43B868F: ???
==14887==    by 0x80DD9AE: cDll::Load(bool) (in /usr/bin/vdr)
==14887==    by 0x80DE0AB: cPluginManager::LoadPlugins(bool) (in /usr/bin/vdr)
==14887==    by 0x4174F13: (below main) (in /lib/tls/libc.so)
==14887==
==14887== 8 errors in context 5 of 6:
==14887== Invalid write of size 4
==14887==    at 0x444247E: ???
==14887==  Address 0x429664C is 12 bytes after a block of size 8,192 alloc'd
==14887==    at 0x401A511: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==14887==    by 0x440699A: ???
==14887==    by 0x43B8EBD: ???
==14887==    by 0x43B8190: ???
==14887==    by 0x43B868F: ???
==14887==    by 0x80DD9AE: cDll::Load(bool) (in /usr/bin/vdr)
==14887==    by 0x80DE0AB: cPluginManager::LoadPlugins(bool) (in /usr/bin/vdr)
==14887==    by 0x4174F13: (below main) (in /lib/tls/libc.so)
==14887==
==14887== 8 errors in context 6 of 6:
==14887== Invalid write of size 8
==14887==    at 0x4442467: ???
==14887==  Address 0x4296640 is 0 bytes after a block of size 8,192 alloc'd
==14887==    at 0x401A511: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==14887==    by 0x440699A: ???
==14887==    by 0x43B8EBD: ???
==14887==    by 0x43B8190: ???
==14887==    by 0x43B868F: ???
==14887==    by 0x80DD9AE: cDll::Load(bool) (in /usr/bin/vdr)
==14887==    by 0x80DE0AB: cPluginManager::LoadPlugins(bool) (in /usr/bin/vdr)
==14887==    by 0x4174F13: (below main) (in /lib/tls/libc.so)
--14887--
--14887-- supp:   27 Ubuntu-stripped-ld.so
--14887-- supp:   16 dl_relocate_object
==14887==
==14887== IN SUMMARY: 48 errors from 6 contexts (suppressed: 43 from 2)
==14887==
==14887== malloc/free: in use at exit: 15,947 bytes in 361 blocks.
==14887== malloc/free: 736,450 allocs, 736,089 frees, 39,248,151 bytes allocated.
==14887==
==14887== searching for pointers to 361 not-freed blocks.
==14887== checked 33,736,372 bytes.
==14887==
==14887==
==14887== 336 (72 direct, 264 indirect) bytes in 2 blocks are definitely lost in loss record 5 of 11
==14887==    at 0x401A511: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==14887==    by 0x4228E9C: (within /lib/tls/libc.so)
==14887==    by 0x42294BE: __nss_database_lookup (in /lib/tls/libc.so)
==14887==    by 0x43C20D9: ???
==14887==    by 0x43C314F: ???
==14887==    by 0x41E845C: getpwnam_r (in /lib/tls/libc.so)
==14887==    by 0x41E7EEF: getpwnam (in /lib/tls/libc.so)
==14887==    by 0x8112B21: main (in /usr/bin/vdr)
==14887==
==14887==
==14887== 13,132 (104 direct, 13,028 indirect) bytes in 1 blocks are definitely lost in loss record 8 of 11
==14887==    at 0x401A511: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==14887==    by 0x440699A: ???
==14887==    by 0x448E830: ???
==14887==    by 0x4291607: ???
==14887==
==14887==
==14887== 272 bytes in 4 blocks are possibly lost in loss record 9 of 11
==14887==    at 0x401BB87: calloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==14887==    by 0x400E1B8: allocate_dtv (in /lib/ld-2.3.6.so)
==14887==    by 0x400E4BB: _dl_allocate_tls (in /lib/ld-2.3.6.so)
==14887==    by 0x404F904: pthread_create@@GLIBC_2.1 (in /lib/tls/libpthread.so)
==14887==    by 0x810837D: cThread::Start() (in /usr/bin/vdr)
==14887==    by 0x4174F13: (below main) (in /lib/tls/libc.so)
==14887==
==14887== LEAK SUMMARY:
==14887==    definitely lost: 176 bytes in 3 blocks.
==14887==    indirectly lost: 13,292 bytes in 344 blocks.
==14887==      possibly lost: 272 bytes in 4 blocks.
==14887==    still reachable: 2,207 bytes in 10 blocks.
==14887==         suppressed: 0 bytes in 0 blocks.
==14887== Reachable blocks (those to which a pointer was found) are not shown.
==14887== To see them, rerun with: --show-reachable=yes
--14887--  memcheck: sanity checks: 11123 cheap, 445 expensive
--14887--  memcheck: auxmaps: 0 auxmap entries (0k, 0M) in use
--14887--  memcheck: auxmaps: 0 searches, 0 comparisons
--14887--  memcheck: secondaries: 709 issued (45376k, 44M)
--14887--  memcheck: secondaries: 564 accessible and distinguished (36096k, 35M)
--14887--     tt/tc: 1,976,777 tt lookups requiring 2,389,617 probes
--14887--     tt/tc: 1,976,777 fast-cache updates, 9 flushes
--14887-- translate: new        17,501 (821,929 -> 14,083,508; ratio 171:10) [0 scs]
--14887-- translate: dumped     0 (0 -> ??)
--14887-- translate: discarded  5,089 (519,896 -> ??)
--14887-- scheduler: 499,988,454 jumps (bb entries).
--14887-- scheduler: 11,123/3,867,941 major/minor sched events.
--14887--    sanity: 11124 cheap, 445 expensive checks.
--14887--    exectx: 30,011 lists, 64,277 contexts (avg 2 per list)
--14887--    exectx: 1,439,993 searches, 1,789,431 full compares (1,242 per 1000)
--14887--    exectx: 382 cmp2, 282 cmp4, 0 cmpAll


Leider habe ich keine Lösung, aber Du hast mich drauf gebracht, das (wohl doch sehr) aufwendige Anlegen des fftw_plans nicht im Konstruktor des Plugins sondern erst in Start() des Plugins zu machen.
Tja, trotz dieser Fehler läuft das Plugin (immer noch) 1A. Das ist das Einzige, was ich an Positivem dazu sagen kann.

Ich habe die Downloaddatei ersetzt. Evtl. hilft Dir ja die "neue Version" so weit, dass der VDR damit startet.

Viele Grüße
Chriss

Signatur

Server: VDR 2.0.2, Kubuntu 12.04, 3.2.0-48-generic-pae Kernel
HW: AMD X2 4850, 4GB RAM, TeVii-S480, Asus M3A-H/HDMI, SeaSonic S12II 330W, WD 1,5TB Caviar Green, iMon-LCD, xine
Dienste: Router, Samba, DHCP, DNS, Mail, (T)FTP, LAMP, Portage-Mirror, VDR-Server für
Client: P3 1200MHz, DXR3, diskless, VDR 1.7.33, Gentoo, 2.6.32.60 Kernel, VFD: mdm166a
http://lcr.vdr-developer.org/

10

Thursday, August 31st 2006, 7:01pm

@Morone: Vielen Dank! Ich habe mittlerweile jedoch an diesen if-Konstrukten schon was geändert. Sry, aber lade Dir bitte die neue Datei runter.
Das mit dem "return true;" habe ich nun auch geändert, thx a lot!

Viele Grüße
Chriss

Signatur

Server: VDR 2.0.2, Kubuntu 12.04, 3.2.0-48-generic-pae Kernel
HW: AMD X2 4850, 4GB RAM, TeVii-S480, Asus M3A-H/HDMI, SeaSonic S12II 330W, WD 1,5TB Caviar Green, iMon-LCD, xine
Dienste: Router, Samba, DHCP, DNS, Mail, (T)FTP, LAMP, Portage-Mirror, VDR-Server für
Client: P3 1200MHz, DXR3, diskless, VDR 1.7.33, Gentoo, 2.6.32.60 Kernel, VFD: mdm166a
http://lcr.vdr-developer.org/

sn123py

Professional

Posts: 967

Location: Niedersachsen

  • Send private message

11

Thursday, August 31st 2006, 8:10pm

RE: [ANNOUNCE] vdr-span-0.0.1

Hab bis heute nacht noch aufnahmen laufen, ich kann aber ab morgen früh wieder testen .. - ich melde mich dann ...
VDR(Via Epia M-10000, 512MB, 2xNexus-s, 120GB&160GB&160GB Samsung SpinPoint, NEC 1300 DVD+-R/RW, IR-Kit, VFD Noritake)
Gehäuse: Eigenbau (s.o.)

Posts: 2,101

Location: Kind der Kirmes am Kanal

Occupation: System- und Anwendungsprogrammierer

  • Send private message

12

Thursday, August 31st 2006, 8:18pm

RE: [ANNOUNCE] vdr-span-0.0.1

@theonlychriss:
Als kleine "Nachhilfe" zum Debuggen: Immer wenn gedebuggt werden muss, schmeiss alle -O aus dem Makefile raus und setze -g zu den CXXFLAGS - dann erkennt man auch wo er abstürzt, will heissen aus den lustigen Hexwerten werden aussagekräftige Namen.
Was den Segmentation fault angeht: ulimit -c unlimited vor dem VDR Start bringt ihn dazu, bei jenem Fehler ein coredump zu machen, wenn man sich da mit gdb vdr core reinschaltet sieht man über den bt Befehl auch wo es gekracht hat.

Mit den reinen Zahlenwerten respektive "???" kann selbst ein Vollprofi nichts anfangen ;)

13

Thursday, August 31st 2006, 8:43pm

RE: [ANNOUNCE] vdr-span-0.0.1

Hallo LordJaxom,

supi, danke - da hätte ich auch selber drauf kommen müssen, d'oh. Werde ich, in der aufnahmefreien Zeit, versuchen!

@sn123py: Danke, jeder "Tester" ist Gold wert!

Viele Grüße
Chriss

Signatur

Server: VDR 2.0.2, Kubuntu 12.04, 3.2.0-48-generic-pae Kernel
HW: AMD X2 4850, 4GB RAM, TeVii-S480, Asus M3A-H/HDMI, SeaSonic S12II 330W, WD 1,5TB Caviar Green, iMon-LCD, xine
Dienste: Router, Samba, DHCP, DNS, Mail, (T)FTP, LAMP, Portage-Mirror, VDR-Server für
Client: P3 1200MHz, DXR3, diskless, VDR 1.7.33, Gentoo, 2.6.32.60 Kernel, VFD: mdm166a
http://lcr.vdr-developer.org/

sn123py

Professional

Posts: 967

Location: Niedersachsen

  • Send private message

14

Friday, September 1st 2006, 10:50am

RE: [ANNOUNCE] vdr-span-0.0.1

so, die neue Version compiliert und startet - allerdings habe ich jetzt noch einen Knoten im Kopf: Wie bekomme ich das Spektrum in den mp3-Player? Ich muss doch sicher mp3ng patchen, oder? wo finde ich den patch dafür?

fragen über fragen :)
VDR(Via Epia M-10000, 512MB, 2xNexus-s, 120GB&160GB&160GB Samsung SpinPoint, NEC 1300 DVD+-R/RW, IR-Kit, VFD Noritake)
Gehäuse: Eigenbau (s.o.)

15

Friday, September 1st 2006, 11:16am

RE: [ANNOUNCE] vdr-span-0.0.1

Hallo sn123py,

sehr schön! Ich habe mittlerweile auch schon den Fehler lokalisiert und bin dabei, ihn zu beheben. Die Auswirkungen ziehen sich leider durch's "ganze Spektrum", daher dauert's noch ein wenig.

pssst, den Patch gibt's da: [NIKOLAUS?] mp3ng - The next next generation.

Wenn Du möchtest, kann ich hier auch meine angepasste Version des mp3ng-Plugins hinstellen - ist aber ein wenig Gentoo-Spezifika-verseucht und basiert wohl auch nicht auf der neuesten Version.

Viele Grüße
Chriss

Signatur

Server: VDR 2.0.2, Kubuntu 12.04, 3.2.0-48-generic-pae Kernel
HW: AMD X2 4850, 4GB RAM, TeVii-S480, Asus M3A-H/HDMI, SeaSonic S12II 330W, WD 1,5TB Caviar Green, iMon-LCD, xine
Dienste: Router, Samba, DHCP, DNS, Mail, (T)FTP, LAMP, Portage-Mirror, VDR-Server für
Client: P3 1200MHz, DXR3, diskless, VDR 1.7.33, Gentoo, 2.6.32.60 Kernel, VFD: mdm166a
http://lcr.vdr-developer.org/

sn123py

Professional

Posts: 967

Location: Niedersachsen

  • Send private message

16

Friday, September 1st 2006, 12:44pm

RE: [ANNOUNCE] vdr-span-0.0.1

hm, ich habe hier mp3ng-0.0.9a, und der patch passt nicht wirklich dazu ... auf mp3ng.c gibt es nur rejects, und die stelle, wo es matchen *könnte* existiert dort nicht ...

ist meine mp3ng zu alt oder zu neu?

ps: achja, das span-plugin führt dazu, dass nur jeder 2-3te Startversuch des VDR erfoglreich ist. Zwischendurch greift der immer wieder ins Klo (core dump).
VDR(Via Epia M-10000, 512MB, 2xNexus-s, 120GB&160GB&160GB Samsung SpinPoint, NEC 1300 DVD+-R/RW, IR-Kit, VFD Noritake)
Gehäuse: Eigenbau (s.o.)

This post has been edited 1 times, last edit by "sn123py" (Sep 1st 2006, 12:56pm)


17

Friday, September 1st 2006, 6:19pm

RE: [ANNOUNCE] vdr-span-0.0.1

Hi sn123py,

sodele - unter http://lcr.vdr-developer.org/downloads/ findest Du "meine" mp3ng-Version. Du musst aber leider selber dafür sorgen, dass die Bilder an die richtigen Stellen kommen und dass das Makefile für Dich passt - aber das sollte nicht so schwer sein. Nochmal weise ich darauf hin, dass dort ein paar Gentoo-Spezifika drin sind, die evtl. nicht zu jedem System passen, sich aber finden lassen (mir fallen wirklich nur das Makefile und die Bilder, ganz unten in player-mp3.c ein - soll nicht heissen, dass es evtl. doch mehr sind ?().
Im Prinzip sind nur 2 Stellen wichtig (ein paar kleinere ergeben sich dann daraus automatisch, da wird man vom Compiler drauf gestossen):
1. In mp3ng.c am Ende von "void cMP3Control::ShowProgress(bool open, bool bigWin)" vor dem "Flush()" kommt das "Getten" der Frequenz-Daten.
2. In player-mp3.c in "void cMP3Player::Action(void)" direkt nach dem "int w=out->Output(p,pc,SOF);" das "Setten" der PCM-Daten.
Mal sehen, wann Morone die Veröffentlichung seiner offiziellen mp3ng-Version mit SA-Visualisierung bekannt gibt - dann gibt's den ersten Client, der wirklich massentauglich ist.

Außerdem habe ich - dank der "Nachhilfe" von LordJaxom :applaus - die Fehler behoben, die zum "glibc: ..double free or corruption.." führten. Zumindest habe ich die Meldungen nicht mehr bekommen und valgrind beschwert sich nicht mehr über "das Geschreibsel" außerhalb der erlaubten Grenzen. Und bei meinen Tests, bei denen ich wirklich oft den VDR samt span- und mp3ng-Plugin (und lcdproc) neu gestartet habe, gab es keine Abstürze mehr.

@all: Ich denke (hoffe), dass es das letzte Mal war, dass ich die Datei neu hochladen und ersetzen musste; damit es endlich eine "Basis" gibt und dann der normale Versionsturnus losgehen kann.
Daher ist ein erneutes Herunterladen von vdr-span-0.0.1 sinnvoll.

Viele Grüße
Chriss

Signatur

Server: VDR 2.0.2, Kubuntu 12.04, 3.2.0-48-generic-pae Kernel
HW: AMD X2 4850, 4GB RAM, TeVii-S480, Asus M3A-H/HDMI, SeaSonic S12II 330W, WD 1,5TB Caviar Green, iMon-LCD, xine
Dienste: Router, Samba, DHCP, DNS, Mail, (T)FTP, LAMP, Portage-Mirror, VDR-Server für
Client: P3 1200MHz, DXR3, diskless, VDR 1.7.33, Gentoo, 2.6.32.60 Kernel, VFD: mdm166a
http://lcr.vdr-developer.org/

This post has been edited 1 times, last edit by "theonlychriss" (Sep 1st 2006, 6:27pm)


18

Saturday, September 2nd 2006, 12:40am

Quoted

Außerdem habe ich - dank der "Nachhilfe" von LordJaxom - die Fehler behoben, die zum "glibc: ..double free or corruption.." führten.

Yo , sieht bisher gut aus...

Von mir wird es so schnell nix geben (mp3ng) . Ich habe es zwar fast
komplett eingebaut und man kann zwischen verschiedenen
"Visualzations" ;) waehlen aber das muss noch alles eingerueckt werden,
Alle MpegCover passen net mehr und ob es auf 2MB Karte laeuft ist
auch noch fraglich, da ich das Coverbild/SA auf 128x128 vergroessert
habe um LEDs vorzutaeuschen, dementspechend auch die 4bit Area. ;)
Vielleicht hau ich es mal provisorisch! in 0.0.9a rein ,damit auch andere es testen koennen, wenn es sonst keiner macht.
Morone has attached the following image:
  • Bild5.png

19

Saturday, September 2nd 2006, 11:17pm

Ich stelle es mal rein , damit manch einer ueberhaupt was zum Testen hat.
Weder empfehle ich nen Produktiveinsatz noch grossartige Weitergabe.
Das "Alpha" steht da net umsonst. ;)
Getestet nur auf 4MB Karten und nur um sich mal anzuschauen , was
theonlychriss da ueberhaupt gemacht hat.
Installation wie gehabt , nur muss mp3ng-sa-bg in den richtigen Ordner kopiert
werden bzw. der ganze Ordner mp3ng nochmal zu ..etc/plugin/mp3ng

http://www.glaserei-franz.de/VDR/Moronim…10_alpha.tar.gz

Soll keiner kommen , stuerzt hier ab ..das funzt net..weiss ich selber...

Posts: 3,648

Location: Mülheim / Ruhr

Occupation: Admin

  • Send private message

20

Thursday, September 7th 2006, 10:17am

Hi,

habe grade mal versucht diese Version für Linvdr (ich weiß, du kannst es wahrscheinlich nicht mehr hören ?() anzupassen, aber an einer stelle bleibt er hängen:

Source code

1
2
3
4
5
g++ -g -O2 -Wall -Woverloaded-virtual "-D__user=" -D_GNU_SOURCE -lImlib2 -c -D_GNU_SOURCE -DVDRVERSNUM=10402 -DHAVE_IMLIB2 -DHAVE_ICONPATCH -DHAVE_SNDFILE -DHAVE_VORBISFILE -I../../../include  commands.c
commands.c: In method `enum eOSState cMP3UpdateWebStreams::Execute()':
commands.c:195: no matching function for call to `cCommand::Execute (bool)'
../../../include/vdr/config.h:98: candidates are: const char * cCommand::Execute(const char * = 0)
make[1]: *** [commands.o] Error 1


Ne Idee? Will's mir ja nur mal anschauen!

Danke und Gruß

Toxic
Registrierter VDR-User #1275

HW: ASUS M4N78 Pro - Athlon II x2 235e - 3x TT S2-1600 - Superflower SF101BK
HW neu: Asrock B75 Pro3 - Pentium G620T - SKYDVB S952
SW: selfmade HD-VDR - Debian Squeeze amd64 - Kernel 3.0.4 - VDR 1.7.31 - MLD-ExtP - Xineliboutput / Xine - XBMC + VNSI/XVDR
SW neu: YaVDR ...

This post has been edited 1 times, last edit by "Toxic-Tonic" (Sep 7th 2006, 10:18am)