Problems with using abroad

adamskrz

New Member
Hi, I've given my grandmother in Poland a HDR-FOX after her old Panasonic recorder stopped being able to pick up all the channels.
After switching the region to Austria in the service menu, I can pick up all the local channels, but I have two issues:
1. Every time I open a channel, the sound comes out warbled, as if it's coming at multiple delays. My best guess if that it's sending a surround sound stream to the TV, which is down-mixing it directly to stereo. However, cycling through the sound stream options with the remote completely solves the issue, which is what I don't understand. I've changed the digital audio output in settings to stereo which makes no difference. Does anyone have any idea what the problem could be/how to fix it.
2. I know this is a bit of a long shot, but is there any way someone might have found for it to be possible to make a GUI translation (maybe changing the firmware source code)? I've translated the system of an e-reader for her before, so know how much work it can be, but for that device there was a simple file to replace.
 

Ezra Pound

Well-Known Member
GUI translation . . .
When you set the region to various different countries (Austria / Poland), is it possible to select Polish as a language in the :- Menu >> Settings >> Preferences >> Language screen?
 
Last edited:
OP
A

adamskrz

New Member
Thanks for the reply. I'm pretty sure I did check there, and there were some languages including German, but I didn't see Polish there (HUMAX have never released a device to the Polish market afaik). I'll check again just to be sure as that would make life a lot easier...
 

/df

Active Member
The Country setting doesn't appear to affect the UI language. Apparently it does turn off UK-specific features like MHEG-5. It would probably be a good idea to try setting this (and reboot and rescan) in the hope of acquiring the transmission settings mentioned by BH.

The UI data associated with the Humax settop box binary appears to be set up in /opt/share, with text in the strings subdirectory.

The UI data associated with web access (ie the embedded Opera browser) appears to be set up in /usr/browser/opera_dir/locale.

These locations contain only English localisations, which may explain why no Polish appears even if the Country is set to Poland, and are part of the read-only firmware filesystem. It might be possible (given enough monkeys) to create Polish versions, although the STB file encapsulates the text in a binary format that would have to be reversed (still more monkeys). You'd have to install the CF and intervene in the startup to bind-mount the modified versions over the originals before the STB binary starts, or, of course, build a new firmware.

More realistically, you could extract the text strings and make a phrase-book (paper, or perhaps online) with the most relevant ones.
 
Last edited:
OP
A

adamskrz

New Member
Yep, the problem isn't with picking up the channels correctly. Using the Austria region lets me pick up every channel (Poland had the incorrect UHF spacing, unsurprising considering that they only started terrestrial TV broadcasts years after the HUMAX was manufactured).
I don't think the audio issue is to do with the transmission settings as it is resolved by cycling through the audio streams.
df's UI file suggestions are fascinating, I'll definitely have a look into it, even if the chance of success is very slim.
 

Black Hole

May contain traces of nut
How is not selecting the correct audio stream by default nothing to do with the setup parameters for country?
 
OP
A

adamskrz

New Member
I don't think its a problem with selecting the right audio stream, but how it is sent to the TV, as cycling through them, you can't get back to the warbled version of the stream. It's as though when the Humax loads it up in the first place, something happens incorrectly.
It also seems to have no issues when playing back previously recorded programs.
 

MymsMan

Ad detector
Does the sound problem occur on every channel change or just after humax start up?
Does it affect both SD and HD channels?
How is Humax connected to TV? HDMI or SCART? Any other equipment Involved (amps, switches, soundbars etc)?
Can you try connecting to a different TV?
What video format are you using?

What are the options you see when cycling through audio options?

I wonder if because you chose Austria as region if by default it is looking for a German language audio stream and when you cycle though the options it shows you the available Polish language audio streams.
There is an attribute in the setup.db AUDIO_LANG=11 but it is not clear where the mapping between number and language is made and what number Polish would be. Currently the AUDIO_LANG is not available in the boot-settings package but could probably be added if it helped.
 
OP
A

adamskrz

New Member
I've had another look through to try and get some more information. The issue occurs when switching channels as long as an audio described stream exists.
Curiously, it will always load up the AD stream even though AD is definitely disabled in settings. This could be due to Austria being the region as MymsMan suggests so I did try switching to Poland and restarting the box, but it made no difference - and as I said before, retuning would cause it to lose some of the channels.
Unfortunately due to there is a lot of inconsistencies between broadcasts with some channels having Polish voiceover as well as English language audio streams, but I've tried to summarise:
Most channels have a Dolby Digital Plus stream (with and without AD as well) as well as a set of "normal" stereo streams. On these channels, the problem happens when the channel is first loaded (with the "normal" stereo AD stream) as well as on to the AD DD+ stream. However, after switching back to the normal AD stream the issue does not get reproduced.
On channels with no DD+ stream, the issue occurs when the AD stream loads for the first time, but does not get reproduced when cycling back to it.
On channels with just one stereo stream (no AD available), there is no issue.
The Humax is directly connected the the TV by HDMI, and unfortunately I can't find any TV settings which change how it treats digital audio. I will try to take the box over to our flat to see if the same issues persist on a different TV. If nothing can be done, then it's not the end of the world as there's no problem playing back recorded files, and she can always watch live TV directly from the TV (or change the stream manually).

On the translation front, I've found that Notepad++ lets me open and edit the binary file without modifying any of the custom code and leaving the delimiters intact (I've compared in a hex editor). Does anyone have any pointers on how I can bind the changed file on boot (the CF is already installed)?

Thanks for the help so far
 

/df

Active Member
...
On the translation front, I've found that Notepad++ lets me open and edit the binary file without modifying any of the custom code and leaving the delimiters intact (I've compared in a hex editor). Does anyone have any pointers on how I can bind the changed file on boot (the CF is already installed)?
...
Yes, apart from the 1st 16 bytes, it seems that the file comprises a list of message texts, each preceded by a NAK (0x15 -- this seems to be how Humax indicates a string in an ISO 8859-1 encoding: similar to but not conforming to ETSI EN 300 468) and followed by a NUL byte.

For testing there's a CF hack to disable the startup of the Humax STB binary: touch /var/lib/humaxtv/mod/nosettop. This will work best with an Ethernet cable to your laptop as you'll be stuck with the default LAN parameters, unless you provide a network script in /var/lib/humaxtv/network.

You'll need to put the modified message file on one of the flash filesystems, say /var/lib/humaxtv_backup/mod/str_pol.bin. Then make it magically replace the read-only file:
Code:
#!/bin/sh
mount --bind /var/lib/humaxtv_backup/mod/str_pol.bin /opt/share/strings/str_eng.bin
Save the above on the Humax (say in /var/lib/humaxtv_backup/mod/xmsg) and make it executable chmod a+x ....

After setting this up and restarting, telnet back into the apparently non-operational box. Run the xmsg script and check that /opt/share/strings/str_eng.bin now shows your translated text.

Now you could test it: /etc/init.d/S90settop start

Once you are happy, you can copy (cp -p ...) the xmsg script to /var/lib/humaxtv/mod/xinit.d so that it will be run automatically (by /etc/init.d/S80xinit) before the Humax STB binary starts.
Updated to fix nosettop location and add copy hint; also explanation of 0x15.
 
Last edited:
OP
A

adamskrz

New Member
Thanks for the detailed instructions. I managed to get a basic translation working, will be a great late Christmas present, but I did have a few issues so I'll put them here for any future reference:
  • After replacing the file and touching the nosettop in /var/lib/humaxtv/, nothing changed on rebooting, and the file wasn't deleted. I looked through /etc/init.d/S90settop and thanks to the very well commented code, found that it should have been touch /var/lib/humaxtv/mod/nosettop. I'm guessing this must have changed at some point in the CFW. For anyone unsure if it's working or not, when /etc/init.d/S90settop is not running, the Humax stops at the boot screen image, but the CFW loads anyway with the IP 192.168.0.55 unless you set up an alternative config.
  • With some experimentation I found that the Humax takes the strings from str_eng.bin by their offset within the file, so any translations need to take up the same number of bytes as the originals. To do this, I made a Excel spreadsheet with the most common phrases taken from the Humax, which can count the number of Unicode bytes. This was important as special Polish characters take up two bytes. Where the Polish phrase was too long it had to be condensed, and where it was too short I padded with spaces.
    I also only used phrases that I found in the interface, as the strings file itself seems to contain phrases from every Humax set-up box at the time, including many dialogues only needed for satellite and some tantalising language selection menus including Polish as an option :(
  • Replacing the strings in the file took a bit of careful usage of Find and Replace in Notepad++ (making sure encoding was set to UTF-8). At the end there were a few errors so I used a Hex editor to compare the original and translated files and see where they stopped matching up.
  • Finally, when I loaded the the the xmsg script to /var/lib/humaxtv/mod/xinit.d it didn't work, I had to chmod a+x it again in the new location
I've also had a bit of a deeper look into the audio issue. It does occur on a different TV as well.
I wonder if because you chose Austria as region if by default it is looking for a German language audio stream and when you cycle through the options it shows you the available Polish language audio streams.
I also tried rebooting and retuning with the country set to Poland but it made no difference. Changing it in boot settings might be worth trying if there aren't any other ideas. Maybe there's a chance it doesn't get reset when the channel is changed? Otherwise as I said the audio problem isn't the end of the world.

Another, more major, problem has appeared with recording. When on AR, nothing was recorded, with the error "Unable to track program" - I turned on padding so it was able to actually record TV programs (I'm assuming the start and stop signals don't exist), however, now the recordings now lack any program names or information. I had a look at the sidecar files in the Web-IF and they are empty as well. Curiously, the program genre IS saved with the program. The only way to check the program info is to see the EPG info when playing back the recording. Any ideas why this happens, and is there any way to fix it, perhaps loading program details from the EPG data in post-processing? There are no issues when recording a program from live TV, and the empty AR files did have this info too.
 
OP
A

adamskrz

New Member
Further to the recording problem, I've noticed that the EPG doesn't show up in the Web-If. Maybe this is related?
EDIT: Looks like the Epgpatch package might help. Investigating now.
 
Last edited:
OP
A

adamskrz

New Member
I've had a look at those posts and into the working of epgpatch and it uses the EPG package to get the data. Running EPG from the CLI provides no useful data. The issue is similar to that on https://hummy.tv/forum/threads/epg-not-working-on-webif.1238/ with the Section header magic mismatch. error. That would explain why there's no Web-If EPG, but it shows up fine in the actual Humax guide, which is what confuses me.
 

MymsMan

Ad detector
I also tried rebooting and retuning with the country set to Poland but it made no difference. Changing it in boot settings might be worth trying if there aren't any other ideas. Maybe there's a chance it doesn't get reset when the channel is changed? Otherwise as I said the audio problem isn't the end of the world.
I am not sure whether setting via boot-settings will help much, my experiments have been inconclusive,
but if you install boot-settings package and add the following to the end of /mod/webif/plugins/boot-settings/schema.jim you will be able to set the country and three language settings
Code:
{Country} {
        table MENUCONFIG
        field COUNTRY
        type Value
          gui {int 0 999 6}
}
{Audio Language} {
        table MENUCONFIG
        field AUDIO_LANG
        type Value
          gui {int 0 999 11}
}
{Menu Language} {
        table MENUCONFIG
        field MENU_LANG
        type Value
          gui {int 0 999 11}
}
{Subtitle Language} {
        table MENUCONFIG
        field SUBTITLE_LANG
        type Value
          gui {int 0 999 11}
}
I have not tried to create an enumerated list of country names because the list is huge, a few examples Australia is 0, Austria is 1, England 6. Poland 21

I had assumed that after setting Country the Preferred language menus would show Languages relevant to that country but on my machine it still only shows languages for the UK English (11) , Welsh (44), Gaelic (43), Irish (23),
When setting the preferred language in the Humax preferred language menu it sets all three _LANG fields in the setup.db to the same number (shown in brackets above). I have no idea how these numbers were derived or what the number for Polish should be

Changing the preferred language has no obvious effect since I have no Welsh/Gaelic channels in my region.

Changing the country code to Austria or Poland does seem to change the default to Audio Described but I don't observe any 'warbling'
When I chose Australia as Country the sound plays normally but when I press the Speaker button it says 'The audio is not available'
Maybe try England as Country (without retuning) to see if that resolves the default to AD problem,
 

/df

Active Member
Thanks for the detailed instructions. I managed to get a basic translation working, will be a great late Christmas present, but I did have a few issues so I'll put them here for any future reference:
....
Thanks, that's good news. I've updated the post. Obvs my transcription of the nosettop path was incorrect: it hasn't changed.
 
Top