0

I copy image files here from a linux based system which ends with .bin.

Unfortunately I don't know how to open it. The goal is to convert images to this format later.

What I have already tried:

  • Open the File with a RAW image Viewer (was not successful).
  • looked at the files with the Hex Editor to find out information about the structure (was not successful).
  • to make sure that these are the images from the menu, I swapped 2 files with each other (swap the file name) (has worked).

This is how it looks on the device:

enter image description here

I have uploaded the two files here.

https://drive.google.com/file/d/1WXbuqT7B-_1OdHZjScmWMKHKxfEUzta7/view?usp=sharing https://drive.google.com/file/d/1YN_TbwWevuNQ3_Ha6MikOA_5JX8h1Pu1/view?usp=sharing

--UPDATE--

//---------------------------------------------------------------//

Here I have cloned some other flags from the device:

Espanol:

https://drive.google.com/file/d/18FE-nT7DMDmNvPtT3lMzARdjcUItpUSu/view?usp=sharing

English:

https://drive.google.com/file/d/1Qqr-ZKyT1M5ichLXBKRRBJzxaPDEpSGg/view?usp=sharing

Portugues:

https://drive.google.com/file/d/13DYM1-Di7bI_KXvT4Eo9zC6x-jIwX0jX/view?usp=sharing

Here also two random pictures of the GUI:

https://drive.google.com/file/d/1oulgopsKGIkpUQ12_94twBaNlVkToKxI/view?usp=sharing https://drive.google.com/file/d/1E9Tx2S86tP2B_z84Fe_6LWO-RZxSEVtD/view?usp=sharing

This should be these images (once highlighted and once normal):

Station Logo 01

Station Logo 02

//---------------------------------------------------------------//

Here are 2 copies of the 2 files from a hex editor

img_togglelanguage_ru_ovg.bin:

FF FF FF FF 00 FF FF FF FF 00 E2 FF FF FF 00 01 1A 1A 1A 2D 1A 1A 1A C3 99 1A 1A 1A FF 01 1A 1A 1A C0 1A 1A 1A 2D 88 FF FF FF 00 00 1A 1A 1A CF 9B 1A 1A 1A FF 00 1A 1A 1A CF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF FF FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF FF FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF FF FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF FF FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF FF FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 FF FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 00 1A 1A 1A D2 9B 1A 1A 1A FF 00 1A 1A 1A CF 88 FF FF FF 00 01 1A 1A 1A 39 1A 1A 1A D2 99 1A 1A 1A FF 01 1A 1A 1A C9 1A 1A 1A 2D FF FF FF FF 00 FF FF FF FF 00 E3 FF FF FF 00

img_togglelanguage_de_ovg.bin:

FF FF FF FF 00 FF FF FF FF 00 E2 FF FF FF 00 01 1A 1A 1A 2D 1A 1A 1A C3 99 1A 1A 1A FF 01 1A 1A 1A C0 1A 1A 1A 2D 88 FF FF FF 00 00 1A 1A 1A CF 9B 1A 1A 1A FF 00 1A 1A 1A CF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 00 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 DE 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 DE 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 DE 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 DE 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 DE 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 DE 00 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF CF 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF CF 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF CF 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF CF 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF CF 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 81 1A 1A 1A FF 99 FF CF 00 FF 81 1A 1A 1A FF 88 FF FF FF 00 00 1A 1A 1A D2 9B 1A 1A 1A FF 00 1A 1A 1A CF 88 FF FF FF 00 01 1A 1A 1A 39 1A 1A 1A D2 99 1A 1A 1A FF 01 1A 1A 1A C9 1A 1A 1A 2D FF FF FF FF 00 FF FF FF FF 00 E3 FF FF FF 00

Maybe someone knows more than me.

3
  • To get answers it helps to (a) tell us what you've already tried, (b) don't use images for hexdumps, use text, and (c) share what you know about the images already (e.g. sizes) or even the images themselves.
    – Ian Cook
    May 23 at 7:35
  • @IanCook I made a few changes to my question, thanks for pointing it out.
    – Alonia
    May 28 at 7:03
  • For an unknown file the first action should be to execute the Linux tool file on it.
    – Robert
    May 28 at 8:00
3

Based on those images, this appears to be a fairly straight-forward run-length encoded 32-bits-per-pixel bitmap format. The general structure seems to consist of number of records each with a single 'tag' byte followed by a multiple of 4 bytes of RGBA data. These records appear to encapsulate pixel data only, with no dimensions or other metadata.

The structure of these pixel records appears to be as follows -

tag  data
byte bytes
==== ===========
// literal pixel records
 00  RR GG BB AA                      => specifies colour of the next single RGBA pixel 
 01  RR GG BB AA  RR GG BB AA         => specifies colours of the next 2 RGBA pixels
 02  RR GG BB AA  RR GG BB AA  .. etc => specifies colours of the next 3 RGBA pixels
 03  ..
 ..
 19  RR GG BB AA  RR GG BB AA  .. etc => specifies colours of the next 26 RGBA pixels
 ..
// run-length encoded pixel records
 81  RR GG BB AA              => colour RGBA is used for the next 2 pixels
 82  RR GG BB AA              => colour RGBA is used for the next 3 pixels
 83  RR GG BB AA              => colour RGBA is used for the next 4 pixels
 ...
 88  RR GG BB AA              => colour RGBA is used for the next 9 pixels
 ...
 99  RR GG BB AA              => colour RGBA is used for the next 26 pixels    
 9A  RR GG BB AA              => colour RGBA is used for the next 27 pixels    
 9B  RR GG BB AA              => colour RGBA is used for the next 28 pixels    
 ...
 E2  RR GG BB AA              => colour RGBA is used for the next 99 pixels 
 ...   
 FF  RR GG BB AA              => colour RGBA is used for the next 128 pixels    

The image dimensions need to worked out by inspection. The flag images you provided are all 39 x 39. The other 2 images have dimensions 172x207 and 148x186. The flag images especially have borders and do use the RGBA alpha channel.


Here's what the images look like -

img_togglelanguage_de_ovgimg_togglelanguage_ru_ovgimg_togglelanguage_br_ovgimg_togglelanguage_mex_ovgimg_togglelanguage_eu_ovg

img_btn_tuner_main_preset_01_a_bg_ovgimg_btn_tuner_main_preset_01_p_bg_ovg

4
  • I have edited my post and uploaded a few more files that I just cloned from the device. Also copied and uploaded some other menu images. These should also be larger than the flags.
    – Alonia
    May 29 at 10:07
  • I still can't figure out what the E2 or E3 does. The other additional files I uploaded look completely different.
    – Alonia
    May 30 at 11:11
  • I've updated the answer based on the additional images.
    – Ian Cook
    Jun 1 at 9:03
  • Can you share the information how you open or convert the image files? you have helped a lot, thank you!
    – Alonia
    Jun 1 at 18:12
0

I've further looked at this format and made a decoder here:

https://github.com/cr3ative/rcd_330g_logo_utilities/blob/master/ovg_to_png.py

The tag byte Ian describes in the other answer is detailed here:

https://www.nxp.com.cn/docs/en/application-note/AN4339.pdf

enter image description here

1
  • Good find on that NXP Application Note!
    – Ian Cook
    Oct 29 at 20:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.