Custom Portal - Development

Is there any way that librtmp/rtmpdump could be installed on the Humax and invoked via a JIM script like you do in the WEBIF for the VLC playing?

I'm hitting a wall on this, pity as I really thought it would be possible.. :(
 
Well, its Linux at the end of the day, so it should be just a case of finding the right build for our flavour of linux..
AF123 has the most experience of the Webif & linux side of things..

This is probably why itv player has never appeared if it also uses rtmp for its playlists. The version of the app I saw for Samsung TVs was built using Adobe AIR, which is similar to flash and probably also has support for rtmp. EDIT: Yep, they made it:http://www.adobe.com/devnet/rtmp.html
 
Yeah, ITV use RTMP streams also with an even more complex SOAP header string..

Even if we did manage to get rtmpdump/librtmp or anything of that sort installed I'm not sure how we can direct the output towards the screen and not to a file as the normal use does.

See what input af123 has or anyone else with knowledge in this area please jump in also or have a play and see what you can come up with :frantic:
 
It might be easier to get Adobe AIR running then.. I looked at it a while ago and did find they used to have a version for linux, but then discontinued it.
 
It is quite straight forward to build rtmpdump/librtmp for the Humax. There is a gateway application which may or may not be useful. From the man page...

Code:
DESCRIPTION
       rtmpgw is a server for streaming media content from RTMP out to HTTP.

       rtmpgw listens for HTTP requests that specify  RTMP  stream  parameters
       and  then  returns  the  RTMP data in the HTTP response. The only valid
       HTTP request is "GET /" but additional options can be provided in  URL-
       encoded  fashion. Options specified on the command line will be used as
       defaults, which can be overridden by options in the HTTP request.
 
A lot of the file system is kept as read only, af123 has created the mod folder which is where most of our mods go.
I think there is a symlink in there for the browser/lib folder which will be read/write. Linux can be confusing.

If the plugin is used by opera, then the output should be rendered in the opera window. But we don't know anything for certain until we give it a go BH.
 
A lot of the file system is kept as read only, af123 has created the mod folder which is where most of our mods go.
I think there is a symlink in there for the browser/lib folder which will be read/write. Linux can be confusing.

Confusing is the word alright, frustrating is another! Well, if this project of mine does end in failure then at least I have picked up some new skills along the road anyway :)

I'm not sure what a symlink is, a shortcut? Anyway, does this mean that there is a method to get the flash plugin into that directory?
 
Symbolic links will not be of much use in this case since the root file system is readonly (i.e. they can not be created). The solution is to use a bind mount. You could do one of the following:
  • Make a new directory on a writable drive, copy the existing files from /usr/browser/lib (plus any additional ones) and then use a bind mount to map the new directory on top of the old directory.
  • Copy opera.ini from /usr/browser/opera_home/opera.ini and add an additional path on a writable drive to the "Plugin Path" in that file. Then use a bind mount to mount the new opera.ini on top of the original one.
The location of the new directories/files is really dependent upon whether or not they need to be available before the humaxapp(opera) starts up. If so then they need to reside in flash since the hard disk controller does not become available until after humaxapp starts up.

A similar technique is used to make the new portal override the original one.
 
Both options sound great xyz321 but both are over my head.. I was googling options for this issue ans several solutions involved mount commands but none worked for me..

My knowledge in this area is very very limited though...
 
A quick description of the filesystem. The root filesystem '/' and everything below it is read only and is stored in flash memory. The mount command is used to make any additional drives/partitions appear as sub-directories at any point in the filesystem - these can be read/write. The mount command with no additional paramteres lists out the mount points.
Code:
$ mount
rootfs on / type rootfs (rw)
/dev/root on / type squashfs (ro)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
usbfs on /proc/bus/usb type usbfs (rw)
devpts on /dev/pts type devpts (rw)
tmpfs on /tmp type tmpfs (rw)
tmpfs on /media type tmpfs (rw)
/dev/mtdblock1 on /var/lib/humaxtv type jffs2 (rw)
/dev/mtdblock2 on /var/lib/humaxtv_backup type jffs2 (rw)
/dev/mtdblock2 on /usr/browser/opera_dir/url/url.txt type jffs2 (rw)
/dev/sda1 on /mnt/hd1 type ext3 (rw,data=ordered)
/dev/sda2 on /mnt/hd2 type ext3 (rw,data=ordered)
/dev/sda3 on /mnt/hd3 type ext3 (rw,data=ordered)
The three hard disk partitions appear as /mnt/hd1, /mnt/hd2 and /mnt/hd3.
/media and /tmp are both mounted as ramdisks.
/media has symbolic links within it to link back to /mnt/hd2/My Video etc. so that recordings appear to be under /media.
The mount on /usr/browser/opera_dir/url/url.txt is a 'bind' mount and is used to map a new file on top of the original readonly file in order to start the new-portal.
There are two read/writable flash partitions under /var/lib/humaxtv and /var/lib/humaxtv_backup
the symbolic links /mod/boot and /mod/boot/2 link to 'mod' subdirectories within these two flash partitions
Code:
$ ls -l /mod/boot /mod/boot/2
lrwxrwxrwx    1 root     root            20 Nov 30 11:26 /mod/boot -> /var/lib/humaxtv/mod/
lrwxrwxrwx    1 root     root            27 Oct 15  2011 /mod/boot/2 -> /var/lib/humaxtv_backup/mod/

------------------------------

Here's what I suggest (although I haven't tried it out). Using option 2 in the previous post and saving the files on the flash partition(s) because I think they will be more likely to work from there.

Copy opera.ini to the /mod/boot/2/ directory
Append the following to the "Plugin Path" line ';/var/lib/humaxtv/mod/opera/plugins'
Create the directory /mod/boot/opera/plugins
Copy any additional plugins to that directory (it shouldn't be necessary to copy the originals in /usr/browser/
Append the following to /mod/boot/xinit.d/new-portal
Code:
[ -f /usr/browser/opera_home/opera.ini ] && \
      mount --bind \
      /var/lib/humaxtv_backup/mod/opera.ini \
      /usr/browser/opera_home/opera.ini
Reboot to make it active.
A mount, setup by the mount command is normally only active during the current session. By editing the new-portal script above, it will be run on startup before humaxapp starts up.
Note: You need to be a bit careful when modifying anything on the flash partitions since an error may prevent the Humax from starting up.

Apologies for the long post;)
 
Back
Top