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
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - woodym

#1
Vomp For Windows / vompclient with buildin codec
December 08, 2007, 03:13:36
hello,

i have testet vompclient 2.6 and 2.7 on my win-xp.
the vompclient is one of the rare programs that works on dual-screen with video.
the codec-select are very hard to get the right codec. one codec works great but hangs after time. othe let flickering the video. other have long startuptimes. other problem... if i start, vompclient gets 2%-6% cpu-load. if i move the vompclient to dualscreen, it works but the cpu-load incrase to 40%-50% (6600 dualcore cpu).

4 weeks ago i have testet sdl on windows with ffmpeg. i have made a simple movie-player. the results are great. cpu-load like 4%-6% on both screens. able to play htdv (mpeg4 codec works with ffmpeg). layers (for menue) can build.

have you planed to use sdl and ffmpeg? the benefits are vompclient works on linux and windows. no codes must be installed an system. hdtv can be used with vompclient. very stable client.

#2
VOMP General / MVP / H3 version works
December 04, 2007, 04:54:29
Hello,

i read in many borads h3 dosnt work.
i got one mediamvp h3 and want to play with vompserver. i used Mahlzeit 4.0beta2 and it dosent work. mahlzeit uses 2.6.1 of vompserver. i read i must update to 2.7 to work with h3. i setup a new vdr and try it out. it dosnt work to.  but anybody wrote it's work.
first the actions on mvp...
he gest the dongle.bin.ver
he gets the dongle.bin
the mvp is pingable for 5 seconds.
the led of lan are off after the 5 seconds.

ok,  i sniff the tcp and look about the problems.

the mvp try to get the bootp-info from bootp-port
he try it another one
than he try port 16867 to get the dchp-infos
vompserver answer with the ip and the dongle.bin
mvp gets from vompserver dongle.bin.ver and than dongle.bin

on this point it's look like ok.
than h3 (and i think this is the differnt) send another dchp request (i think class 5-request). but this request only goes to bootp-port.
vompserver isn't bind to this port and the mvp requests many times without answer.
i have change vompserver to listen to 16867 (i'ts a wook ago, i dont know is this the right port) and 67. the changes are simple (i change the server to start to threads with differnt ports).
now vompserver answer to the dhcp-request after transfer the dongle.bin .
but the h3 dosnt work.

at this point i switch bootp off (vompserver) and use dhcp-server.
all are the sam, but answer the dhcp-request (after transfer from dongle.bin) the mvp works.

i anlayse the differnt about the answer from vompserver and dhcp. the only seen differnt is tha dhcp-server sends options with the name-server, rooter and domain-name.

i think h3 uses other boot-firmware and try to set (after transfer dongle.bin) the network-address. only if this sends correct it starts the loaded bin.
i think every one that uses dhcp-server wrot about working h3.

at the moment i dont have time to anlayse the different about the dhcp-requests. the first step is to listen on default bootp-port. the other to
change the response in the right way.

here my changes:
note!!! to use ports <1027 vdr have to run as root. if initialize of port 67 fails the vompserver don't stop, only log this fault.

the changes are:
bootpd.h:
-    int run();
+    int run(int port, int aport);
    int shutdown();

+    int answer_port;
    DatagramSocket ds;

bootpd.c:
-int Bootpd::run()
+int Bootpd::run(int port, int aport)
{
  if (threadIsActive()) return 1;
  log->log("BOOTPD", Log::DEBUG, "Starting bootpd");

+  answer_port=aport;
-  if (!ds.init(16867))
+  if (!ds.init(port))
  {
    log->log("BOOTPD", Log::DEBUG, "DSock init error");
    shutdown();
    return 0;
  }

mvpserver.h
    UDPReplier udpr;
    Bootpd bootpd;
+    Bootpd bootpd67;
    Tftpd tftpd;


mvpserver.c
  bootpd.shutdown();
+  bootpd67.shutdown();
  tftpd.shutdown();


-    if (!bootpd.run())
+    if (!bootpd.run(16867,16868))
    {
      log.log("Main", Log::CRIT, "Could not start Bootpd");
      stop();
      return 0;
    }
+    if (!bootpd67.run(67,68))
+    {
+      log.log("Main", Log::CRIT, "Could not start Bootpd 67");
+    }