News:

Latest versions:
Server plugin: 0.5.1
MVP dongle: 0.5.2
Raspberry Pi client: 0.5.2
Windows client: 0.5.2-1

Main Menu

Vompclient with tvscraper support

Started by MartenR, August 31, 2014, 16:21:43

Previous topic - Next topic

JTe

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

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

MartenR

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

JTe

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

MartenR

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

JTe

#19
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

JTe

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

MartenR

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


JTe

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

MartenR

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

JTe

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

MartenR

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

JTe

Now it works as it should! Thanks!

-JTe

JTe

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.

MartenR

#28
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

JTe

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