Loggytronic Forum

VOMP => VOMP for Raspberry Pi => Topic started by: clausmuus on September 10, 2012, 10:50:53

Title: Where to store the background images
Post by: clausmuus on September 10, 2012, 10:50:53
Hi,

where must I store the background images, so that the vomp-client can find and load them?

Claus
Title: Re: Where to store the background images
Post by: MartenR on September 11, 2012, 07:09:43
In the moment I do not know.
Where should I search for them?
Currently loading images is not implemented... It is on my todo list.

Anyway if you have a good suggestion for a place to store them plus a good search algorithm
for most distributions, I will keep it in mind when implementing it.

Marten
Title: Re: Where to store the background images
Post by: glotzi on September 11, 2012, 07:30:08
I think there are more important issues than displaying a background image on the raspi client  :o
Title: Re: Where to store the background images
Post by: clausmuus on September 11, 2012, 09:39:43
Hi,

yes, glotzi are right. It's not so importent. I have only ask, because I thought that I store the image at the wrong place.
I think /usr/share/vompclient/ will be a good place. If you will also store settings (were did you store them at the moment? On the server?) a second good place will be /etc/vompclient/. You can also first check, if the folder ~/.config/vomplient/ exists and contains the image or settings.
Also it will be great if it will also be possible to setup the background color(or background image?) for the menu and the color of the menu texts.
I think, a compile option to select the config/image folder or a command option will also be helpful.

Claus
Title: Re: Where to store the background images
Post by: MartenR on September 11, 2012, 09:52:45
QuoteHi,

yes, glotzi are right. It's not so importent. I have only ask, because I thought that I store the image at the wrong place.
I think /usr/share/vompclient/ will be a good place. If you will also store settings (were did you store them at the moment? On the server?) a second good place will be /etc/vompclient/. You can also first check, if the folder ~/.config/vomplient/ exists and contains the image or settings.
Also it will be great if it will also be possible to setup the background color(or background image?) for the menu and the color of the menu texts.
I think, a compile option to select the config/image folder or a command option will also be helpful.

Claus
I thought a bit about it. The default images and fonts will be stored inside the executable.
Setting colors is at the end of my priority list.
First an implementation of the drawing routines using openvg will be done (this will allow using gradients as color) and then I might think about skinning, but for me this is not really important, so may be someone else has to do it.
Configurations will stay on the server one config for every client. (May be a small local config for video modes might be necessary on the client)

Just for reference, my current todo list (subject to change):

1) Add ac3 passthrough mode and fix audio playback on certain channels (e.g. mono is broken).
2) Handle video mode switch e.g. setting to PAL 50 Hz video modes and handle switching of hdmi and composite, if a connectors is plugged in. Switching video and audio off.
3) Rewrite OSD and surface class to be vector based and to use OpenVG.

Everything else is almost done.

Marten


Title: Re: Where to store the background images
Post by: davep on September 11, 2012, 11:59:12
Quote
Just for reference, my current todo list (subject to change):

1) Add ac3 passthrough mode and fix audio playback on certain channels (e.g. mono is broken).
2) Handle video mode switch e.g. setting to PAL 50 Hz video modes and handle switching of hdmi and composite, if a connectors is plugged in. Switching video and audio off.
3) Rewrite OSD and surface class to be vector based and to use OpenVG.

It would be good to have:

4) Reconfigure key mapping for CEC remotes via config file.

My TV remote doesn't have buttons for 'skip', 'pause' etc, so I would like to remap the RGYB buttons to these functions, but only in Play mode. XBMC has this ability.
Title: Re: Where to store the background images
Post by: MartenR on September 11, 2012, 12:36:58
Quote
4) Reconfigure key mapping for CEC remotes via config file.
You should already have the possibility to change the keymapping in the options menu.
(I did not test it yet, but might already work).
Quotebut only in Play mode.
This is not working in the way remote calls are handled internally in the moment.
And it will need a major rewrite of the code, so it is very unlikely that I will do it, since it is rather unimportant for me.
(And I do not see see a clean may to switch the mappings, for me the color buttons are really important for recording playback,
navigating and switching audio channels)

One thing we could think of is vomp listening on a port for UDP remote presses, which might be feed by an android app.... (given some else writes the app)
This would be easy to implement.

I would suggest in the moment the following options:
1) Buy a usb remote, which is handled through /dev/input/event...
2) Maybe use some other keys, which are not needed for either tv or recording playback.
3) Try some options in your tvs menu mine worked only with all keys after changing some settings.

Marten
Title: Re: Where to store the background images
Post by: odin4242 on September 12, 2012, 05:53:41
It would make sense to store those Images on the Server, doesn't it? The Vompserver could deliver them to the client.
Title: Re: Where to store the background images
Post by: MartenR on September 12, 2012, 07:19:39
QuoteIt would make sense to store those Images on the Server, doesn't it? The Vompserver could deliver them to the client.
No it does not, you also want an ui, before connecting to the main server.

@davep

I made a little change to the recording playback.
Now you can also use the arrow keys for:
up=play
down=pause
right=fast forward
left= fast backward

I hope this enough for your remote to use all functions of the recording playback.

Marten
Title: Re: Where to store the background images
Post by: davep on September 12, 2012, 07:28:25
QuoteI made a little change to the recording playback.
Now you can also use the arrow keys for:
up=play
down=pause
right=fast forward
left= fast backward

I hope this enough for your remote to use all functions of the recording playback.

Excellent! Many thanks.
Title: Re: Where to store the background images
Post by: MartenR on September 16, 2012, 22:14:21
Quote2. Handle video mode switch e.g. setting to PAL 50 Hz video modes and handle switching of hdmi and composite, if a connectors is plugged in. Switching video and audio off.
Will unfortunetely not happen, the api does not allow to do mode switching and to reconfigure the osd.
Until the firmware change here towards an easier implementation, the users have to set the modes themself. Sorry. (After hours of trying I give up...)

Marten
Title: Re: Where to store the background images
Post by: clausmuus on September 18, 2012, 21:52:12
I have already add the mode selection to the Webif of the MLD. So it's also easy to select a 50Hz mode.

Claus
Title: Re: Where to store the background images
Post by: clausmuus on September 19, 2012, 15:10:07
Hi,

is it a big thing, to delete at minimum the whole screen when entering a menu? At the moment I will see parts of the last menu around the current one, if this is smaller than the last one. That's not really nice ;(
(Skinning the theme is not important for me. If I want, it's no problem to change the colours in the source code, or later also change the background image that will be compiled in)

Claus
Title: Re: Where to store the background images
Post by: MartenR on September 19, 2012, 15:38:09
@clausmuus
Well, it will be changed, when the opengl stuff is replaced with openvg.
It the moment, it is just not programmed completely.

Remember the git is not a release, it is just a work in progress development version, so some stuff works, some stuff will not work yet.
But it will get better and better.

Marten
Title: Re: Where to store the background images
Post by: clausmuus on September 19, 2012, 16:57:05
Thank you for the information.
I know, it's in development. And I'm happy, that its works already so well, since it's at the moment the only working vdr frontend for the RPI!

Claus
Title: Re: Where to store the background images
Post by: MartenR on October 03, 2012, 21:18:57
Most issues of this thread should now be closed. See recent git changes.

Marten
Title: Re: Where to store the background images
Post by: Uwe on October 03, 2012, 21:38:15
Quote from: MartenR on October 03, 2012, 21:18:57
Most issues of this thread should now be closed. See recent git changes.

The new version in the git looks very nice. HD and SD so far worked without stuttering. :)

Many many thanks.

Uwe
Title: Re: Where to store the background images
Post by: clausmuus on October 04, 2012, 15:24:28
Hi,
I have problems with compiling the new version. I get this error message:
g++ -Wall -Wl,--format=binary -Wl,fonts/sourcesans.ttf -Wl,other/vdrhires.jpg -Wl,other/wallpaper720p.jpg -Wl,--format=default    -o vompclient  command.o  tcp.o dsock.o thread.o timers.o i18n.o message.o messagequeue.o udp.o wol.o audio.o video.o log.o  mutex.o vdr.o recman.o recording.o recinfo.o channel.o rectimer.o event.o directory.o mark.o option.o player.o playerradio.o vfeed.o afeed.o demuxer.o demuxervdr.o demuxerts.o stream.o region.o colour.o boxstack.o boxx.o tbboxx.o vinfo.o vquestion.o vrecordinglist.o vrecording.o vmute.o vvolume.o vtimerlist.o vtimeredit.o vrecordingmenu.o vchannellist.o vwelcome.o vvideorec.o vepgsettimer.o vchannelselect.o vserverselect.o vconnect.o vepg.o vrecmove.o vradiorec.o vaudioselector.o vscreensaver.o vopts.o wselectlist.o wjpeg.o wsymbol.o wbutton.o wtextbox.o woptionpane.o woptionbox.o wremoteconfig.o wtabbar.o fonts/helvB24.o fonts/helvB18.o remote.o led.o mtd.o  osd.o surface.o media.o vpicturebanner.o audioplayer.o demuxeraudio.o abstractoption.o eventdispatcher.o vdrrequestpacket.o vdrresponsepacket.o vvideolivetv.o vsleeptimer.o playerlivetv.o playerliveradio.o wprogressbar.o bitmap.o dvbsubtitles.o imagereader.o  mediaoptions.o mediaplayer.o serialize.o localmediafile.o   playermedia.o demuxermedia.o tfeed.o vteletextview.o teletextdecodervbiebu.o teletxt/txtfont.o mediafile.o  main.o threadp.o  osdvector.o surfacevector.o osdopenvg.o ledraspberry.o mtdraspberry.o videoomx.o audioomx.o wjpegsimple.o remotelinux.o    -L/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib -L/home/nightbuild/nightbuild/MLD/vompclient/src/libcec/install/usr/lib -lpthread -lrt -lEGL -lOpenVG -lopenmaxil -lbcm_host -lvcos -lvchiq_arm -lavformat -lavcodec -lavutil -lfreetype -lMagick++ -lMagickCore
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_CheckFramebufferStatus'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_BindRenderbuffer'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_DeleteFramebuffers'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_set_error'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_RenderbufferStorage'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_state_free'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glPointSizePointerOES'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `gl11_client_state_init'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_GetFramebufferAttachmentParameteriv'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glDiscardFramebufferEXT'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_set_error_api'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_IsRenderbuffer'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_buffer_info_set'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_GenerateMipmap'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_FramebufferTexture2D'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_GetRenderbufferParameteriv'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_IsFramebuffer'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_GenRenderbuffers'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_GenFramebuffers'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_FramebufferRenderbuffer'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glintAttribPointer'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_BindFramebuffer'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `gl20_client_state_init'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_buffer_info_get'
/home/nightbuild/nightbuild/MLD/vompclient/../vc/src/vc/lib/libEGL.so: undefined reference to `glxx_client_DeleteRenderbuffers'
collect2: ld returned 1 exit status

Maybe you use an other vc Version? I use the latest version (26.09.2012).

Claus
Title: Re: Where to store the background images
Post by: MartenR on October 04, 2012, 15:33:51
Hi,
I do not know which vc version I am currently using, but usually I update every weekend.
libEGL seems complain about missing opengl stuff, may be you have to include some opengl libs, which are fetched in my compiler setup automatically, just an idea.
Look at the last commit diff for possible names of the libs.

Btw. did you make a "make clean"?

Marten
Title: Re: Where to store the background images
Post by: JTe on October 04, 2012, 18:27:18
If compiling on the Raspberry Pi itself in addition to the packages needed for the previous version (from the clean Raspbian installation), I needed to add the following:

sudo apt-get install libfreetype6-dev libmagick++-dev


Title: Re: Where to store the background images
Post by: clausmuus on October 05, 2012, 13:56:15
Hi,

I have found the reason for my compile problem. You have removed the linker option "-lGLESv2", but that is needed. Maybe it is defined in your cross compile enviroment,... But I need it.
So, after I readd this, I can compile the vompclient without further problems.

Claus
Title: Re: Where to store the background images
Post by: MartenR on October 05, 2012, 13:59:57
That is what I assumed, btw. maybe opengl version 1 should be sufficient.
I am not using a cross compiler, I compile directly on the raspbian os, probably ld on raspbain is smart enough to add opengl lib.

Marten
Title: Re: Where to store the background images
Post by: clausmuus on October 05, 2012, 14:21:22
Hi,

I'm also compile on a raspian os (in QEMU).

Claus
Title: Re: Where to store the background images
Post by: clausmuus on October 05, 2012, 20:01:34
Hi,

does the actual version should also show the background Image? I ask, because I see that that will be included in the makefile, but I do not see the bg image on the RPI.

Claus
Title: Re: Where to store the background images
Post by: MartenR on October 06, 2012, 10:00:39
Yes it should display the background image and also the VDR logo

Marten
Title: Re: Where to store the background images
Post by: clausmuus on October 06, 2012, 10:04:26
Hi,

do you have any idea, how I can debug this, to find the reason, why I don't see the images? Or do you know, if there is any library that is needed but not seen by the ldd command?

Claus
Title: Re: Where to store the background images
Post by: MartenR on October 06, 2012, 10:06:28
First you should post a log file....
Title: Re: Where to store the background images
Post by: MartenR on October 06, 2012, 10:49:56
May be your imagemagick has no jpeg support.

Marten
Title: Re: Where to store the background images
Post by: clausmuus on October 06, 2012, 16:22:33
The problem was a missing lib.

Now I have a new wish. Is it possible to show a "no signal" picture, if there is nothing to show, and not only the blue screen? I want to show the MLD Logo in this case, like I do it with xineliboutput.

Claus
Title: Re: Where to store the background images
Post by: MartenR on October 06, 2012, 16:29:18
No it is not easily possible, the background layer is just one pixel, so you can choose the color, if you wish.

There is no drawing system in vomp handling this layer.
For handling drawing also on this layer and not only the osd layer,
I have to rewrite the whole drawing system to also draw on the background layer..... and this is too much work.
Alternatively, a no signal mpg can be put on the video layer but also this needs major changes to the video streaming code....


Marten
Title: Re: Where to store the background images
Post by: clausmuus on October 06, 2012, 17:29:43
Hi,

OK, a mpeg will be also a good solution. For now, it will enough if I can change the colour to black. Can you tell me, where I can set this colour?

Claus
Title: Re: Where to store the background images
Post by: MartenR on October 06, 2012, 17:32:05
unsigned int color=0x00FF0000; in osdopenvg.cc.
Title: Re: Where to store the background images
Post by: clausmuus on October 07, 2012, 11:42:41
Thank you. That helps.
Can you also tell me, where I can change the background colour (light grey), that is used before the bg image will be shown?

Claus
Title: Re: Where to store the background images
Post by: MartenR on October 07, 2012, 12:01:48
    float colclear[]={1.f,1.0f,1.f,1.f};
Title: Re: Where to store the background images
Post by: clausmuus on October 07, 2012, 15:53:15
Thank you. Now the colours looks like I want to have them.

Now I have a new question:
It will be only shown a part of the background image. Do you know about this? Is is possible to scale the bg image fit to the screen, or how big must the image be, to fit the screen? I have detect something like 1030x530. I use a full HD resolution on my screen.

Claus
Title: Re: Where to store the background images
Post by: MartenR on October 07, 2012, 16:08:12
Thanks, that is clearly a bug....
A fix should come soon.
Btw the OSD is always 720p, regardless of the video resolution.

Marten
Title: Re: Where to store the background images
Post by: MartenR on October 07, 2012, 17:25:27
Should be fixed now...
Title: Re: Where to store the background images
Post by: clausmuus on October 07, 2012, 21:39:23
Thank you. Now it's OK.

Claus