Loggytronic Forum

VOMP => VOMP for Raspberry Pi => Topic started by: MartenR on August 31, 2014, 16:21:43

Title: Vompclient with tvscraper support
Post by: MartenR on August 31, 2014, 16:21:43
Hi,
for all which are interested. I am currently working on adding tvscraper support and an enhanced ui experience to vomp.
For all who are interested in an early test, the stuff is in git for client and server under the branch scraper_support.

So far recording are ready.

Currently, only raspberry pi is targeted, later I will also rewrite the windows osd handling to also support it.

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on September 15, 2014, 12:05:29
That is nice! I have noticed that the subtitles section should be also checked. There seems to be a memory leak or something like that as after about 30 minutes to one hour of having the subtitles on they disappear and also the normal menus get corrupted. I could try to dig in that when I have some extra time...

-JTe
Title: Re: Vompclient with tvscraper support
Post by: MartenR on September 16, 2014, 07:02:23
@JTE:
Is it a new bug or an old bug?

Marten
Title: Re: Vompclient with tvscraper support
Post by: MartenR on September 17, 2014, 07:18:48
@JTE:
Found the reason, I forgot to free subtitles image data.
Will be fixed soon in the tvscraper development thread, I can not commit now since I have made some other changes, which are not ready for commit now.

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on September 18, 2014, 07:13:18
That was fast! Thanks!

At some time in the future it should also be committed on the regular vompclient thread as it looks like it is also effecting old mvp clients.

-JTe
Title: Re: Vompclient with tvscraper support
Post by: MartenR on September 18, 2014, 07:26:48
Well, it will be first commit to the development part for tvscraper support.
The problem was only in the raspberry pi part, so it can not affect the mvp.
The tvscraper will come in the end to the main  development branch, but then certain features will not be available on the mvp. (reasons are small memory, slow jpeg decoding and low resolution).

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on September 18, 2014, 08:17:20
Ok, then there might be another memory leak on the mvp side. I have to check when and how the error happens over there.

By the way would it be possible to take the default subtitle state (language / subtitles off) from the vdr server side and use that default state on the vomp client too? That would make the client more user friendly...

-JTe
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 08, 2014, 20:27:20
I tested the vomp side and no problem after 24 hours of running subtitles on, so there is no memory leak on the vomp side!

-JTe
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 08, 2014, 21:01:40
@jte Did you test the tvscraper branch? How do you like the new design, which I added last week end ? Next some additional icons will follow.

Btw. channel logos and also scraping should also work for the older tvscraper http://projects.vdr-developer.org/projects/plg-tvscraper/wiki without the need of an external epg source instead of http://projects.vdr-developer.org/projects/plg-scraper2vdr/wiki (which can be a problem for non german tv) .

Marten
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 13, 2014, 07:05:56
QuoteBy the way would it be possible to take the default subtitle state (language / subtitles off) from the vdr server side and use that default state on the vomp client too? That would make the client more user friendly...
Now in tvscraper branch....
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 13, 2014, 07:21:43
Thanks, that is great.

I will now build up the newest version and check how it works!

How is it about the sound, is it also selected by the preferences of the vdr side (that would be handy for multilingual channels like Arte or Euronews). If I remember correctly current situation is that the vomp selects a first sound channel (which is for example different with German and French Arte).
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 13, 2014, 07:27:33
Subtitle and audio are both selected according to the vdr preferences.
I have here not much channels to test this, if something stranges happens, please write down the contents of the audioselector menu item.

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 13, 2014, 07:28:59
Ok, I will let you know how it is working.
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 14, 2014, 13:48:47
Ok, I tried to compile the newest git version of scraper_support client and got this:

make: *** No rule to make target 'vrecordinglistclassic.o', needed by 'vompclient'.  Stop.

Can I just remove all references to vrecordinglistclassic.o to complie the client?
Nope that did not work... also vrecordinglistadvanced was missing and removing that did not either work.
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 14, 2014, 19:02:30
Sorry, I forget to add a couple of files. Should now be in git.....

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 14, 2014, 23:04:15
Now everything is almost ok, but (because I have an old RPI), I get:


gcc -MM -DVOMP_PLATTFORM_RASPBERRY   -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads  -I/usr/include/freetype2 -I/usr/include/ImageMagick  command.cc tcp.cc dsock.cc thread.cc timers.cc i18n.cc message.cc messagequeue.cc udp.cc wol.cc audio.cc video.cc log.cc mutex.cc signal.cc vdr.cc recman.cc recording.cc recinfo.cc channel.cc rectimer.cc event.cc directory.cc mark.cc option.cc player.cc playerradio.cc vfeed.cc afeed.cc demuxer.cc demuxervdr.cc demuxerts.cc stream.cc region.cc colour.cc boxstack.cc boxx.cc tbboxx.cc vinfo.cc vquestion.cc vrecordinglist.cc vrecordinglistclassic.cc vrecordinglistadvanced.cc vrecording.cc vepgsummary.cc vepglistadvanced.cc vmute.cc vvolume.cc vtimerlist.cc vtimeredit.cc vrecordingmenu.cc vchannellist.cc vwelcome.cc vvideorec.cc vepgsettimer.cc vchannelselect.cc vserverselect.cc vconnect.cc vepg.cc vrecmove.cc vradiorec.cc vaudioselector.cc vscreensaver.cc vopts.cc wselectlist.cc wjpeg.cc wsymbol.cc wbutton.cc wtextbox.cc woptionpane.cc woptionbox.cc wremoteconfig.cc wtabbar.cc remote.cc led.cc mtd.cc osd.cc surface.cc vpicturebanner.cc abstractoption.cc eventdispatcher.cc vdrrequestpacket.cc vdrresponsepacket.cc vvideolivetv.cc vsleeptimer.cc playerlivetv.cc playerliveradio.cc wprogressbar.cc bitmap.cc dvbsubtitles.cc tfeed.cc vteletextview.cc teletextdecodervbiebu.cc teletxt/txtfont.cc movieinfo.cc seriesinfo.cc wmovieview.cc wseriesview.cc tvmedia.cc wtvmedia.cc wpictureview.cc main.cc threadp.cc osdvector.cc surfacevector.cc osdopenvg.cc ledraspberry.cc mtdraspberry.cc videoomx.cc audioomx.cc imageomx.cc wjpegsimple.cc remotelinux.cc > deps
/opt/vc/include/interface/vmcs_host/vcgencmd.h:33:27: fatal error: vchost_config.h: No such file or directory
compilation terminated.
/opt/vc/include/interface/vmcs_host/vcgencmd.h:33:27: fatal error: vchost_config.h: No such file or directory
compilation terminated.
/opt/vc/include/interface/vmcs_host/vcgencmd.h:33:27: fatal error: vchost_config.h: No such file or directory
compilation terminated.
/opt/vc/include/interface/vmcs_host/vcgencmd.h:33:27: fatal error: vchost_config.h: No such file or directory
compilation terminated.
/opt/vc/include/interface/vmcs_host/vcgencmd.h:33:27: fatal error: vchost_config.h: No such file or directory
.
.
.
opt/vc/include/interface/vmcs_host/vcgencmd.h:33:27: fatal error: vchost_config.h: No such file or directory
compilation terminated.
<builtin>: recipe for target 'osdopenvg.o' failed
make[2]: *** [osdopenvg.o] Error 1
make[2]: Leaving directory '/usr/local/src/vompclient-scraper_support'
debian/rules:19: recipe for target 'override_dh_auto_build' failed
make[1]: *** [override_dh_auto_build] Error 2
make[1]: Leaving directory '/usr/local/src/vompclient-scraper_support'
debian/rules:13: recipe for target 'build' failed
make: *** [build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2


According to:

http://www.raspberrypi.org/forums/viewtopic.php?&t=34103 (http://www.raspberrypi.org/forums/viewtopic.php?&t=34103)

It would help to add this to a makefile:
-I /opt/vc/include/interface/vmcs_host/linux

But I do not know if it would break something else.

-JTe
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 15, 2014, 07:07:50
I do not think that it will break anything.
What do you mean with an old pi, I am also developing on the 256 MB, but I keep the OS always up to date, especially if you think about the latest security holes in bash or ssh.

Are you running raspbian?
If yes, it will probably only work after an apt-get update and then an apt-get dist-upgrade, since the new versions of libavformat forced me to change something in the audio handling due to a change in the interface. But you should try.

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 15, 2014, 08:37:41
Somewhere in the discussion I linked they mentioned that bug effects old PIs.

Yes I am running Rasbian and it is fully up to date (as of yesterday). Actually I remember having the same problem before with the vomp builds and I have been just editing the makefile to get over it, so I can do it now again. It is just strange that that problem seems to effect some, but not all users. Could there be a manually installed packet what I am missing that writes the file to correct location?

-JTe
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 15, 2014, 08:50:51
There may be some raspberry helper packages, which are missing but I do not know which.
apt-get dist-upgrade may help to install all helper packages, but I do not know....
May be I have a legacy package and this why I do not  have a problem.

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 15, 2014, 10:12:15
I changed the makefile and with the following change everything compiles well:


--- vompclient-scraper_support-old/GNUmakefile  2014-10-15 12:01:28.559226903 +0300
+++ vompclient-scraper_support/GNUmakefile      2014-10-15 11:20:07.901165636 +0300
@@ -84,7 +84,7 @@
OBJECTS += main.o threadp.o  osdvector.o surfacevector.o osdopenvg.o ledraspberry.o mtdraspberry.o videoomx.o audioomx.o imageomx.o wjpegsimple.o remotelinux.o
LIBS+= -ldl -lfontconfig -lfreetype -lMagick++
CROSSLIBS =
-INCLUDES = -DVOMP_PLATTFORM_RASPBERRY   -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads  -I/usr/include/freetype2 -I/usr/include/ImageMagick
+INCLUDES = -DVOMP_PLATTFORM_RASPBERRY   -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I /opt/vc/include/interface/vmcs_host/linux -I/usr/include/freetype2 -I/usr/include/ImageMagick
CXXFLAGS_DEV += -D__STDC_CONSTANT_MACROS
CXXFLAGS_REL += -D__STDC_CONSTANT_MACROS
endif


The new look is really nice! The vomp client looks now very cool! I will keep testing it more.

-JTe
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 19, 2014, 20:29:55
The current git version seems to miss some files. I was trying to compile and got:

osdopenvg.h:49:10: error: #include expects "FILENAME" or <FILENAME>
.
.
.
command.cc:861:20: error: 'RemoteStartDev' was not declared in this scope
command.cc:1117:9: error: 'DEFAULT_TCP_WINDOWSIZE' was not declared in this scope
<builtin>: recipe for target 'command.o' failed
make[2]: *** [command.o] Error 1
make[2]: Leaving directory '/usr/local/src/vompclient-scraper_support'
debian/rules:19: recipe for target 'override_dh_auto_build' failed
make[1]: *** [override_dh_auto_build] Error 2
make[1]: Leaving directory '/usr/local/src/vompclient-scraper_support'
debian/rules:13: recipe for target 'build' failed
make: *** [build] Error 2


-Jte
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 20, 2014, 07:06:45
Here is everything compiling well. Can you please tell me, which commit causes the problem?
The first error may be caused by a missing libfreetype2 (may be you accidently deleted " -I/usr/include/freetype2" in the makefile?

The other errors are related to defines.h, is defines.h missing, it is for sure in git?

(You did not post all errors may be post the complete thing.)

Marten

Title: Re: Vompclient with tvscraper support
Post by: JTe on October 20, 2014, 08:32:53
Yes, you are right it was caused by the change I need to make to my makefile to get it to compile (see above). I managed to drop out the freetype2 includes when editing the makefile and that caused the problem.

I have been testing the VDR language code settings for subtitles and audio and it seems to work fine for audio. For the subtitles there seems to be something wrong in the case subtitles been selected by the audio and not the subtitle selection list.

Ie. if I make the following preferences on VDR side:

Audio preferences:
Lang-A
Lang-B
Lang-C

Subtitle preferences:
Lang-X (subtitles for hearing impaired for Lang-A)
Lang-A
Lang-B
Lang-C

When the live channel has an audio language Lang-A and subtitle languages Lang-X and Lang-A the subtitles for Lang-X are not selected but, the subtitles for Lang-A. I can make some more tests on that if needed.

-JTe
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 20, 2014, 16:35:20
It is crucial, that write down exact the language codes you are seeing in the language selection dialog (green button).
Furthermore uncomment in vdr. cc the line
Quote//logger->log("VDR", Log::DEBUG, "Langpref %s %d %d", newpref.langcode.c_str(),  newpref.audiopref,  newpref.subtitlepref);
and post the corresponding logs.
So that I can understand, what is happening.
I have currently no clue how hearing impaired and normal subtitles are distingished.

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 20, 2014, 21:18:35
Ok, I did remove the comment and ran the log. The part related to the langpref is here (if you need I can also upload the whole log if needed):

22:52:10.262916 [debug]  5647 VDR - Packet delivered to me, requestID: 1
22:52:10.263119 [debug]  5647 VDR - vdrtime = 1413834730
22:52:10.263283 [debug]  5647 VDR - offset = 10800
22:52:10.263500 [debug]  5647 VDR - Langpref eng,dos 9 10
22:52:10.263704 [debug]  5647 VDR - Langpref ara 10 16
22:52:10.263878 [debug]  5647 VDR - Langpref cat,cln 0 9
22:52:10.264032 [debug]  5647 VDR - Langpref cze,ces 25 0
22:52:10.264177 [debug]  5647 VDR - Langpref dan -1 25
22:52:10.264329 [debug]  5647 VDR - Langpref deu,ger 0 -1
22:52:10.264472 [debug]  5647 VDR - Langpref ell,gre 0 0
22:52:10.264616 [debug]  5647 VDR - Langpref esl,spa 0 0
22:52:10.264761 [debug]  5647 VDR - Langpref est 0 0
22:52:10.264917 [debug]  5647 VDR - Langpref fin,suo 0 0
22:52:10.265061 [debug]  5647 VDR - Langpref fra,fre 0 0
22:52:10.265203 [debug]  5647 VDR - Langpref hrv 0 0
22:52:10.265346 [debug]  5647 VDR - Langpref hun 0 0
22:52:10.265488 [debug]  5647 VDR - Langpref ita 0 0
22:52:10.265625 [debug]  5647 VDR - Langpref lit 0 0
22:52:10.265765 [debug]  5647 VDR - Langpref mkd 0 0
22:52:10.265910 [debug]  5647 VDR - Langpref dut,nla,nld 0 0
22:52:10.266063 [debug]  5647 VDR - Langpref nor 0 0
22:52:10.266208 [debug]  5647 VDR - Langpref pol 0 0
22:52:10.266349 [debug]  5647 VDR - Langpref prt 0 0
22:52:10.266490 [debug]  5647 VDR - Langpref rom,rum 0 0
22:52:10.266698 [debug]  5647 VDR - Langpref rus 0 0
22:52:10.266864 [debug]  5647 VDR - Langpref slk 0 0
22:52:10.267059 [debug]  5647 VDR - Langpref slv,slo 0 0
22:52:10.267217 [debug]  5647 VDR - Langpref srb,srp,scr,scc 0 0
22:52:10.267362 [debug]  5647 VDR - Langpref sve,swe 0 0
22:52:10.267503 [debug]  5647 VDR - Langpref tur 0 0
22:52:10.267694 [debug]  5647 VDR - Langpref ukr 0 0
22:52:10.267890 [debug]  5647 VDR - Langpref 中文 0 0
22:52:10.268341 [debug]  5647 VDR - set clock = 4294967295
22:52:10.268527 [debug]  5647 VDR - - 3 0
22:52:10.268662 [debug]  5647 VDR - - 3 0
22:52:10.268879 [debug]  5647 VDR - Timezone data: MVP-3:0
22:52:10.269644 [debug]  5647 VDR - RR sleep - opcode 37
22:52:10.270142 [debug]  5647 VDR - Rxd a response packet, requestID=2, len=4
22:52:10.270737 [debug]  5647 VDR - RR unsleep
22:52:10.270865 [debug]  5647 VDR - Packet delivered to me, requestID: 2


The languages showing on the vomp display are:

No Subtitles
fin
dut

The one selected is [fin]. The last one (dut) is used as a hearing impaired language code as some older receiver did not have support for the real hearing impaired subtitles.

The languages I have on vdr side are:

AudioLanguages = fin fra eng sve
EPGLanguages = fin fra eng sve
SubtitleLanguages = fra dut fin eng sve


-JTe
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 21, 2014, 07:33:40
I think I found the mistake, but I did not have the time to test it. It is in git, I would be happy, if you can test it, since I have almost no channel with multiple subtitles.

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 21, 2014, 16:21:54
Now it works as it should! Thanks!

-JTe
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 27, 2014, 18:08:12
Latest build wont start well. It only displays black screen and produces following log where the two last lines keep repeating forever:

19:59:00.003580 [debug]  3746 Timers - Starting set timer 1
19:59:00.004492 [debug]  3746 BoxStack - Update called
19:59:00.005317 [debug]  3746 BoxStack - Locked for update
19:59:00.006289 [debug]  3746 BoxStack - Unlocked for update
19:59:00.007019 [debug]  3746 Timers - timerEventFinished for 0x1b437d8
19:59:00.007831 [debug]  3746 Timers - timerEventFinished RESTART for 0x1b437d8
19:59:00.508847 [debug]  3746 VDR - Sending KA packet
19:59:00.510480 [debug]  3746 VDR - Rxd correct KA reply
19:59:06.512940 [debug]  3746 VDR - Sending KA packet
19:59:06.514575 [debug]  3746 VDR - Rxd correct KA reply
19:59:12.515971 [debug]  3746 VDR - Sending KA packet
19:59:12.517639 [debug]  3746 VDR - Rxd correct KA reply
19:59:18.521079 [debug]  3746 VDR - Sending KA packet
19:59:18.522772 [debug]  3746 VDR - Rxd correct KA reply
19:59:24.525082 [debug]  3746 VDR - Sending KA packet
19:59:24.526744 [debug]  3746 VDR - Rxd correct KA reply


However if I enable debugging I am able to start the client most of the time. So it is probably a timing problem and when the client runs slower (with debugging) it will start every now and then. After the client is jammed I have to kill it with -9 to stop it.
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 27, 2014, 18:19:19
Hard to say, I have changed a lot during the last commit.
So we have to revert it, step by step.
1) First try, can you please use mutex.h and mutex.cc of the commit before. If it works, we already have to problem.
2) If this did not fix, it try to use the old boxstack.cc and boxstack.h with the new mutex files.

1 and 2 are unrelated, other changes are connected to optimizations in the rendering classes, so not so easy to disentangle for this:

3) It it would be helpful, if you attach the debugger using "gdb -tui -p PIDOFVOMP", you can get the pid of vomp using ps. Now, using "info threads" should give a list where all threads are. You can select every thread with "thread THREADNUMBER", now it getting information, where every thread is using, "bt" can help. 

Another question, before you only see the keep alive packets, are the log lines then always the same?
Furthermore what do you mean with "with debugging"? Compiling with debug symbols? With attached debugger?  ???  Maybe there is a way, where I can reproduce it... I tested everything with a debug build and with switch "-d".

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 27, 2014, 19:22:46
I will make the tests. It will just take some time as I compile in native raspi environment and it takes some time to compile.

I was meaning the debugging (logging) switch -d. I did only manage to get the log once, after that every run seems to work, but without the -d switch it always gets jammed with a black screen, without loading the start menu.

-JTe
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 27, 2014, 19:27:07
QuoteI was meaning the debugging (logging) switch -d. I did only manage to get the log once, after that every run seems to work, but without the -d switch it always gets jammed with a black screen, without loading the start menu.
Then do not do the test, this sounds like I can reproduce it this way.

Marten
Title: Re: Vompclient with tvscraper support
Post by: JTe on October 27, 2014, 19:31:15
Ok. If you cannot reproduce it, let me know.

-JTe
Title: Re: Vompclient with tvscraper support
Post by: MartenR on October 28, 2014, 07:40:49
Is now fixed!

Marten
Title: Re: Vompclient with tvscraper support
Post by: MartenR on December 23, 2014, 11:12:33
Now everything should be ready, except some bugs. Also the windows client is updated:
http://forum.loggytronic.com/index.php?topic=760.0

Marten
Title: Re: Vompclient with tvscraper support
Post by: sirwio on December 23, 2014, 16:23:00
The latest commit r3f2e06e168db1d2580cef98385674f75084c64a0 breaks the raspberry pi builds.
signal.o needs to be listed in objects.mk

I also get a segfault when jumping or fast fwd while watching recordings. 100% reproducible and crashed immediately after pressing e.g. 1-9 or pressing forward/rewind. Crashed on both SD, 1080i and 720p recordings.

Attaching log when a crash occurs.

- Magnus
Title: Re: Vompclient with tvscraper support
Post by: MartenR on December 23, 2014, 16:31:17
Makefile is fixed now.
Does the crash only occur with subtitles turned on?

Marten
Title: Re: Vompclient with tvscraper support
Post by: MartenR on December 23, 2014, 16:38:39
I can not reproduce it. (Did you make a clean before building, sometimes the dependency algorithm does not work well enough to rebuild everything, that needs to be rebuild?).
Can you please create a core file with setting "ulimit -c unlimited" and after the crash executing "gdb -tui vompclient core" and tell me, where it crashed inside the code?

Marten
Title: Re: Vompclient with tvscraper support
Post by: sirwio on December 23, 2014, 19:45:04
Yes I did make clean before the build was done. It was compiled as release. I have now recompiled as with debug and the crash is still there.

As per the question if there are subtitles? Yes the recording has Swedish subtitles. As far as I know the subtitles are part of the stream and cannot be disabled. I hardly ever use any other fronted than vompclient to vdr so I'm pretty unfamiliar with any possibility to turn off subtitles.

root@raspberrypi:~/vomp-tvscraper# gdb ./vompclient core
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "arm-linux-gnueabihf".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /root/vomp-tvscraper/vompclient...done.
[New LWP 11659]
[New LWP 11667]
[New LWP 11646]
[New LWP 11670]
[New LWP 11640]
[New LWP 11644]
[New LWP 11669]
[New LWP 11671]
[New LWP 11639]
[New LWP 11642]
[New LWP 11643]
[New LWP 11645]
[New LWP 11655]
[New LWP 11668]
[New LWP 11647]
[New LWP 11638]
[New LWP 11637]
[New LWP 11650]
[New LWP 11649]
[New LWP 11636]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
Core was generated by `/root/vomp-tvscraper/vompclient'.
Program terminated with signal 11, Segmentation fault.
#0  0xb6fab3c4 in unwind_stop () from /lib/arm-linux-gnueabihf/libpthread.so.0
(gdb) bt
#0  0xb6fab3c4 in unwind_stop () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6049918 in ?? () from /lib/arm-linux-gnueabihf/libgcc_s.so.1
#2  0xb604a64c in _Unwind_ForcedUnwind () from /lib/arm-linux-gnueabihf/libgcc_s.so.1
#3  0xb6fadb88 in _Unwind_ForcedUnwind () from /lib/arm-linux-gnueabihf/libpthread.so.0
#4  0xb6fab424 in __pthread_unwind () from /lib/arm-linux-gnueabihf/libpthread.so.0
#5  0xb6fa50b0 in pthread_exit () from /lib/arm-linux-gnueabihf/libpthread.so.0
#6  0x000cd9b4 in ThreadP::threadCheckExit (this=0x2007e8) at threadp.cc:70
#7  0x000b523c in DVBSubtitles::threadMethod (this=0x2007e8) at dvbsubtitles.cc:962
#8  0x00016a70 in Thread::threadInternalStart2 (this=0x2007e8) at thread.cc:35
#9  0x000cd800 in threadPInternalStart (arg=0x2007e8) at threadp.cc:32
#10 0xb6fa3e90 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
#11 0xb5fbc4e8 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#12 0xb5fbc4e8 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
Title: Re: Vompclient with tvscraper support
Post by: MartenR on December 24, 2014, 06:51:43
QuoteAs per the question if there are subtitles? Yes the recording has Swedish subtitles. As far as I know the subtitles are part of the stream and cannot be disabled. I hardly ever use any other fronted than vompclient to vdr so I'm pretty unfamiliar with any possibility to turn off subtitles.
Well, you can hit the green button and select no subtitles, then the subtitle content is ignored by vomp. Or are your subtitles part of the video stream?
Anyway your debug trace shows clearly, that the crash happens inside the subtitle decoder. I expect something with now using the default vdr setting for subtitles, which turns your subtitles on.
(Does the crash occur at every skip? Or how often do I have to try?).
The gdb stuff did not help, since it looks like a currupted stack.
I tried to reproduce it, but I failed. Can you please prepare do the following:
1) Tell me your default setting for languages and subtitles on vdr side?
2) Report the selected tracks, if you hit the green button.
3) Deapply patch from http://git.vomp.tv/gitweb/?p=vompclient.git;a=commitdiff;h=de6fbe2d494aac80e0be1051f06ad72ad6718473 and http://git.vomp.tv/gitweb/?p=vompclient.git;a=commitdiff;h=89d00b9f8d3e3b5a3deeb87b6f6aafd6ec11c7ca, this way we see if it has something to do with the get subtitle settings from vdr patch.
4) Go back to the normal code (without modifications form 3)) and uncomment the line logger->log("VDR", Log::DEBUG, "Langpref %s %d %d", newpref.langcode.c_str(),  newpref.audiopref,  newpref.subtitlepref); in vdr.cc and give me the corresponding log. This way I can see your subtitle settings. (only if 3) does not show a crash)
5) Prepare a short recording for me, which shows the desired crash, so that I can analyze it.

Marten
Title: Re: Vompclient with tvscraper support
Post by: sirwio on December 25, 2014, 18:15:24
Subtitles are embedded in the stream i.e. burned into the stream. The subtitles are NOT according to ETSI EN 300 743!

I have turned off all audio and language preferences in vdd's setup.conf but the segfault still occurs.
Reverted commit de6fbe2d494aac80e0be1051f06ad72ad6718473 without improving the issue.
Commit 89d00b9f8d3e3b5a3deeb87b6f6aafd6ec11c7ca does not revert cleanly so I did not try that out. Tried the commits around the commit 89d00b9f but they did not compile cleanly :-(

I have uploaded a short recording, around 50MB, to google drive that gives the segfault for me.
https://drive.google.com/file/d/0B4LQIJR9gOUmUzFrWGRpQ3pNMDQ/view?usp=sharing



Quote from: MartenR on December 24, 2014, 06:51:43
QuoteAs per the question if there are subtitles? Yes the recording has Swedish subtitles. As far as I know the subtitles are part of the stream and cannot be disabled. I hardly ever use any other fronted than vompclient to vdr so I'm pretty unfamiliar with any possibility to turn off subtitles.
Well, you can hit the green button and select no subtitles, then the subtitle content is ignored by vomp. Or are your subtitles part of the video stream?
Anyway your debug trace shows clearly, that the crash happens inside the subtitle decoder. I expect something with now using the default vdr setting for subtitles, which turns your subtitles on.
(Does the crash occur at every skip? Or how often do I have to try?).
The gdb stuff did not help, since it looks like a currupted stack.
I tried to reproduce it, but I failed. Can you please prepare do the following:
1) Tell me your default setting for languages and subtitles on vdr side?
2) Report the selected tracks, if you hit the green button.
3) Deapply patch from http://git.vomp.tv/gitweb/?p=vompclient.git;a=commitdiff;h=de6fbe2d494aac80e0be1051f06ad72ad6718473 and http://git.vomp.tv/gitweb/?p=vompclient.git;a=commitdiff;h=89d00b9f8d3e3b5a3deeb87b6f6aafd6ec11c7ca, this way we see if it has something to do with the get subtitle settings from vdr patch.
4) Go back to the normal code (without modifications form 3)) and uncomment the line logger->log("VDR", Log::DEBUG, "Langpref %s %d %d", newpref.langcode.c_str(),  newpref.audiopref,  newpref.subtitlepref); in vdr.cc and give me the corresponding log. This way I can see your subtitle settings. (only if 3) does not show a crash)
5) Prepare a short recording for me, which shows the desired crash, so that I can analyze it.

Marten
Title: Re: Vompclient with tvscraper support
Post by: MartenR on December 26, 2014, 08:49:37
Thanks, I got the file, but it still  does not crash.
So we have to dig deeper, which os are use using?
Raspbian? For raspbian please do an apt-get dist-upgrade, there was a major change regarding the audio and libavcodec, which only comes with dist-upgrade.

If this does not help, can you please find out, which commit breaks it? (Best thing would be a binary search algorithm).

Marten
Title: Re: Vompclient with tvscraper support
Post by: sirwio on December 28, 2014, 14:14:16
Reverting back to all stable packages fixed the crash. I had tested the rpihddevice with vdr on the rpi a while ago and was getting the 2.x vdr packages from jessie. Once I reverted back to all rasbian squeeze stable all works fine.

Sorry for the poor testing from my part :-( - I should know better...

Will put it under more stress during the rest of the holidays. But it is looking fine so far.