Custom Firmware Package Notes
BREIF NOTES FOR CUSTOM FIRMWARE PACKAGES
Note: Some Functions of the Web Interface are 'Built-In' and do not require an additional package to be installed, These Features are covered in the Web If section of ths page
Contents
- 1 Auto-Unprotect
- 2 Auto-Update
- 3 BusyBox
- 4 CIFS
- 5 Custom TV Portal
- 6 Dedup (Command Line)
- 7 Edit On Box
- 8 EPG (Command Line)
- 9 Epg Keywords (Web-If)
- 10 FTP
- 11 HMT
- 12 I-Phone Interface
- 13 lsof
- 14 Jim
- 15 Mongoose
- 16 Remote Scheduling (RS)
- 17 Portal Foscam
- 18 Prog Backup
- 19 Remote Scheduling Auto
- 20 Series Filer
- 21 Service Control Utility
- 22 SQLite
- 23 SSMTP
- 24 Telnet
- 25 Unencrypt
- 26 Web IF
- 27 wget
Auto-Unprotect
Removes the ENC flag from all High Definition files, When first installed all files are scanned, Then new files are processed after recording ends. NOTE:- the removal of the ENC flag does not decrypt the file, However it does make decyption possible
Auto-Update
This will check once per day at the earliest power on, for most people probably the 04:30 boot
BusyBox
Your Humax box has a ‘Unix’ operating system, Busybox is a package that provides 158 common Unix commands that can be used in a Telnet sessions, The List below shows the available commands, There is no 'man' command that would explain what they do, but most commands can have a -? or -h extention to get some help e.g. ls -?, A command look up table can be found HERE
NOTE:- It is not a good idea to 'Play' with these commands if you don't know what you are doing
- [
- [[
- ar
- arp
- arping
- ash
- awk
- base64
- basename
- bunzip2
- bzcat
- bzip2
- cal
- cat
- catv
- chgrp
- chmod
- chown
- chroot
- cksum
- clear
- cmp
- comm
- cp
- cpio
- cut
- date
- dc
- dd
- df
- diff
- dirname
- dos2unix
- du
- echo
- ed
- egrep
- env
- ether-wake
- expr
- false
- fgrep
- find
- fold
- free
- ftpget
- ftpput
- fuser
- grep
- gunzip
- gzip
- hd
- head
- hexdump
- ifconfig
- insmod
- install
- iostat
- kill
- killall
- killall5
- last
- less
- ln
- logname
- ls
- lsmod
- lsusb
- lzcat
- lzma
- md5sum
- mkdir
- mkfifo
- mknod
- mktemp
- modinfo
- modprobe
- more
- mpstat
- mv
- nc
- netstat
- nice
- nmeter
- nohup
- nslookup
- od
- patch
- pgrep
- ping
- pkill
- pmap
- printenv
- printf
- ps
- pstree
- pwd
- pwdx
- readlink
- realpath
- renice
- rm
- rmdir
- rmmod
- route
- rpm
- sed
- sendmail
- seq
- sh
- sha1sum
- sha256sum
- sha512sum
- sleep
- sort
- split
- stat
- strings
- stty
- sum
- sync
- sysctl
- tail
- tar
- tee
- telnet
- test
- tftp
- time
- top
- touch
- tr
- traceroute
- true
- tty
- uname
- uniq
- unix2dos
- unlzma
- unxz
- unzip
- uptime
- usleep
- uudecode
- uuencode
- vi
- watch
- wc
- wget
- which
- who
- whoami
- xargs
- xz
- xzcat
- yes
- zcat
CIFS
The Common Internet File System. The cifs package provides the Humax with the ability to remotely access files shared from PCs using Windows file sharing. This package adds the support to the running system but mounting remote filesystems must currently be performed from the command line
Example:-
mkdir /media/NAS mkdir /media/My\ Video/NAS mount -t cifs //server/share /media/NAS -o user=abc,password=def mount -t cifs //server/share /media/My\ Video/NAS -o user=abc,password=def
Custom TV Portal
Full Guide HERE
Dedup (Command Line)
Note:- There is a 'built-in' version of Dedup in the Web-If that effectivly replaces the command line package, However if the dedup package is installed it is possible to perform the following Telnet commands from the folder you have navigated to:-
dedup HIDE lists the recordings there and shows what they would be renamed to
dedup -yes HIDE perform the changes as detailed below :-
- Renames the files on disk to match the episode name
- Changes the title shown in the media list to match the episode name
- Identifies duplicate episodes and moves them to a sub-folder called dup/
Edit On Box
Full Guide for Nicesplice HERE
EPG (Command Line)
EPG information can be obtained from a Telnet Command line e.g.
epg
humax# epg Humax EPG Tool v1.0.8, by af123, 2011. Syntax: epg [options] [filters] <command>... Options: -b Brief output. -d[level] Set debug level. -f<file> Specify alternate EPG data file. -h Show help text. -p Parsable output. Filters: (can be specified multiple times, all must be true) -C<CRID> Show only events with this CRID. -D<descriptor type> Show only selected descriptor type. -E<event id> Show only selected event. -R<SCRID> Show only events with this Series ID. -S<service id> Show only selected service. -T<content type> Show only selected content types. -@<unix timestamp> Show only programmes at time. -/<unix timestamp> Show only programmes on day. -/<days> Show only programmes on day. -=<start>:<end> Show only programmes in time period. Commands: dump Show a parsed summary of the EPG. dumpraw Show raw data from the EPG. sqldump Produce SQL statements from EPG data. sqlitedump <file> Create SQLite database from EPG data. now Show what is currently on. first Show the time of the earliest record. last Show the time of the latest record. parse Parse the EPG, no output. search <text> Search programme names for text. searchall <text> Search programme names/descriptions for text.
Epg Keywords (Web-If)
Initial Setup :-
- Web-If MAIN >> SETTINGS >> Email address >> myname@talktalk.co.uk
- Web-If MAIN >> SETTINGS >> SMTP >> smtp.talktalk.co.uk
- Web-If MAIN >> SETTINGS >> SEND TEST EMAIL
FTP
File Transfer Protocol is a method of transferring files to and from your Humax, The Humax HDR has a built-in FTP for access to the media folders only. The Enhanced FTP supplied with the Custom Firmware Package allows access to the full Humax file structure. To use FTP on a P.C. a program that handles FTP is required, Internet Explorer and Windows (file) Explorer will allow FTP access by entering ftp://10.0.0.200 into the address bar, Although access may be restricted to media folders only. If access to the whole file structure is required programs like Filezilla or WS_FTP_Pro can be used.
Note :- 10.0.0.200 needs to be replaced with your own Humax IP address
HMT
From a Telnet Session, Navigate to a directory containing an *.hmt file, Then enter hmt {filename}
hmt KAISER_CHIEFS_DD5_1_20110410_0147.hmt
humax# hmt KAISER_CHIEFS_DD5_1_20110410_0147.hmt Format:HD Title:KAISER CHIEFS DD5.1 Channel:4096 (BBC HD) Folder:/mnt/hd2/My Video/MY-ARCHIVE/ Filename:KAISER CHIEFS DD5_1_20110410_0147 Genre:Entertainment EPG:Performance from the Kaiser Chiefs from the Later... with Jools Holland archives. They play I Predict a Riot, the party and festival anthem of 2005. Flags: HD,Unlimited Copies, Copy count:0 Scheduled start:1302396300 (Sun Apr 10 00:45:00 2011) Scheduled duration:300 Recording start:1302396449 (Sun Apr 10 00:47:29 2011) Recording end:1302396706 (Sun Apr 10 00:51:46 2011) Play resumes at: 15 seconds in. Service ID (SID):17472 Transport Stream ID (TSID):16516 Originating Network ID (ONID):9018 Programme Map Table PID (PMTPID):100 Video PID:101 Audio PID:102 Bookmarks:0 =
I-Phone Interface
Screen Shots HERE
lsof
This unix command stands for LiSt of Open Files,With no extentions it will default to 'All' open files, But it is probably more useful when used with a filter as shown in the examples :-
lsof | grep humaxtv HIDE All files opened by the main Humax TV process
lsof | cut -f 1 -d' ' | sort | uniq HIDE List all processes that have opened files
lsof | grep epg HIDE All files opened by the EPG process
humax# lsof | grep epg epg 596 root cwd 0000 31,0 1307722938 21474853357 /dev epg 596 root rtd 0000 31,0 1321652395 77309428205 / epg 596 root txt 0000 8,18 1322689164 4295000557 /mnt/hd2/mod/bin/epg epg 596 root mem REG 8,18 9226050 /mnt/hd2/mod/bin/epg (path inode=4295000557) epg 596 root mem REG 31,0 174 /lib/ld-uClibc-0.9.29.so (path inode=4295000557) epg 596 root mem REG 8,18 9225846 /mnt/hd2/mod/lib/libsqlite3.so.0.8.6 (path inode=4295000557) epg 596 root mem REG 31,0 169 /lib/libuClibc-0.9.29.so (path inode=4295000448) epg 596 root mem REG 31,0 216 /lib/libpthread-0.9.29.so (path inode=4295000448) epg 596 root mem REG 31,0 186 /lib/libdl-0.9.29.so (path inode=4295000448) epg 596 root 0 0000 31,0 1307722935 4294975926 /dev/null epg 596 root 1 0000 0,13 1322848876 4295000502 /tmp/epgd.log epg 596 root 2 0000 0,13 1322848858 4295000502 /tmp/modinit.log
Jim
Jim is a form of the programming language TCL (Tool Command Language), That runs on the Humax unix platform
Mongoose
Mongoose is the Webserver that the Custom Firmware Package uses to present the Web pages you see when you log into the Web Interface, SEE EXAMPLES
Remote Scheduling (RS)
Full Guide HERE
Portal Foscam
See GUIDE
Prog Backup
Utility for backing up recordings and sidecar files to locally attached drives, A search of attatched drives will be made so that the user can choose. Both Hi-Def and Standard definition recordings will be de-crypted so they can be played on a P.C. or copied back to a different Humax. Command line examples Below :-
progbackup HIDE Backup everthing under My Video
progbackup /mnt/hd2/My Video/BOB's Films/ HIDE Backup files in a specified folder
Remote Scheduling Auto
Full Guide HERE
Series Filer
If a folder name exists at the top level and at a lower level, the contents of the top level folder are copied into the lower folder and the, now empty, top level folder is deleted
Service Control Utility
From a Telnet command line prompt send the following :-
service
humax# service Name Installed Autostart Running ---- --------- --------- ------- mediatomb No No No dropbear No No No transmission No No No samba No No No cifs No No No mongoose Yes Yes Yes Syntax: service start <service> service stop <service> service auto <service> (toggles autostart)
SQLite
SQlite is an SQL database engine that contains a 'C' software library
SSMTP
SSMTP is a program to deliver an E-mail from your Humax to a mailhost or mailhub, It will not handle incomming E-Mail
Telnet
Telnet is built into the default Custom Firmware package, To communicate Via Telnet from a P.C. you will need a program such as PuTTY, Select connection type Telnet and enter the IP address of your Humax into the Host Name box, Then select OPEN, You will be presented with a new Telnet Window and if connection is successful you will see the humax# prompt.
NOTES
- Telnet command lines on this WiKi are identified by a Yellow Background
- Telnet >> Connection >> Telnet >> return Key sends Telnet New Line instead of ^M should be 'un-Ticked'
Unencrypt
unencryptsetup "Bob's Videos" HIDE process a single directory
unencryptsetup HIDE process all files in 'My Video'
unencryptsetup disable HIDE Turn off unencrypt
This will update the cron table and schedule the program to run every 15 minutes indefinitely. Every time it runs, it will check that there isn't already another job running and then decrypt the first encrypted file that it finds in the directory you specified, therefore gradually working its way through your files, If you don't specify a directory, it will default to decrypting all of your recordings.
NOTES:-
- Auto-Unprotect must be running
- Media sharing must = on
- Telnet >> Connection >> Telnet >> return Key sends Telnet New Line instead of ^M should be 'un-Ticked'
Web IF
Screen Shots HERE
- Decrypt
Web-If MAIN >> BROWSE MEDIA FILES >> (Select Single File) >> OPT+ >> Decrypt
This Function will move the file an _original folder and then stream a new copy to the present location, The new copy will be Decrypted and can be played on a P.C.. NOTE both High Definition AND Standard definition need to be Decrypted
- De-duplicate / Tidy this folder
Web-If MAIN >> BROWSE MEDIA FILES >> De-duplicate / Tidy this folder
This Function will search a folder and re-name files with more meaningful titles, It will also seperate duplicates into a new folder
See Tidy (Re-name) Example >>
This Function will search a folder and re-name files with more meaningful titles
It will Also seperate duplicates into a new folder
See De Duplicate (to new folder) Example >>
- Remove Enc
Web-If MAIN >> BROWSE MEDIA FILES >> (Select Single File) >> OPT+ >> Remove Enc
This Function will remove the ENC flag from High Definition content, The file remains encrypted (as does Standard Definition) until a sepearate decryption function is carried out
- Save Last Streamed Content
Web-If MAIN >> BROWSE MEDIA FILES >> Save Last Streamed Content
This Function will make a permanent MP4 copy of and content that has been view using the Humax TV portal e.g. I-Player / You Tube, The Telnet Syntax is as follows :-
humax# cp /mnt/hd3/Streamer_down_file /media/My\ Video/theclip.mp4
wget
Retrieve files via HTTP or FTP
Note:- There is already a version of wget in Busybox which is loaded automatically, However it may be necessary to install the stand alone package as it will be a newer version