The OTA or Over The Air Bitmap was defined by Nokia Corporation as part of their Smart Messaging Specification, to send pictures as a series of one or more concatenated SMS text messages. The format has a maximum size of 255x255 pixels. It is very rare for an OTA bitmap to measure anything other than 72x28 pixels or 72x14/72x13 pixels. The specification contains a byte of data to be used for indicating a multicolour image. This was to future-proof the standard, but the advent of Multimedia Messaging meant it never got to implementation.
The OTA Bitmap format is a monochrome, uncompressed format using one bit per pixel. As the format was designed for cellular phones, there is no standard computer format. It may be stored as a binary file or as hex in a text file. Recognized extension is .otb.
Format copyright
This format is the Copyright of Nokia Corporation.
The data header
Before the image itself there is a header. The header is four bytes wide. A typical example is: 00 48 1C 01. These are: 00 The 'Infofield'. 48 The width of the bitmap, 72 pixels in this case. 1C The height of the bitmap, 28 pixels in this case. 01 The number of colours. Other possibilities may be: 00 48 0E 01, 00 48 0D 01.
Encoding the pixels
After the header the image itself starts. This example will use the following 72x28 pixel image. The first 8 pixels, reading right from the topleft hand corner are one white followed by seven blacks, giving the first byte, in Binary, as 01111111. Converting from the binary 01111111 to hex, results in the first byte that represents the pixels. The next 8 characters are 8 blacks and so on. When all pixels from the top row are encoded, simply move to the next. There are no markers to indicate a new row, that information is contained in the header. In the case of an OTA bitmap that is not a multiple of eight pixels in width, a single byte is used to convey information from two lines This is not the case in some other formats, so it is important to exercise care when converting between OTA and formats like WBMP.
Putting it together
Here is the result of the image converted to OTA. 00 48 1C 01 //Header 7F FF EF FF EF FF FB FF FE //First Row 40 3F E8 38 2F FF FB FF FE //Second Row 48 3F A8 38 2F 9F FB FF FE //Third Row 4C FF A9 FF 2F 8F FA DA DA //Fourth Row 4E FF 29 01 2F 80 FA 52 52 5E 7F 69 31 2F BF 7B 07 06 4F FF 69 79 2F BE FB 77 76 47 FF 69 79 2F BE 7B 07 06 47 FE EF 7D EF BE 7B FF FE 47 FC EF 7D E7 BC F1 FF FC 40 F0 EF 7D E7 7C F1 ED BC 21 E7 C9 79 27 98 F1 E5 3C 21 E7 C9 39 27 C8 F1 F0 7C 16 6F 89 39 23 E6 E0 F7 78 15 2F 88 82 23 F3 E0 F0 78 08 3F 04 44 43 D7 E0 FF F8 04 3E 02 28 81 EF C0 7F F0 02 3C 01 39 00 FF 80 3F E0 01 38 00 BA 00 7F 00 1F C0 00 F0 00 7C 00 3E 00 0F 80 FF C0 00 38 00 1C 00 07 FF 55 FF FF FF FF FF FF FF AA 2A F3 87 87 3F 1E 67 0F 54 15 F3 93 9F 3E 4E 27 27 A8 2A F3 87 8F 3E 4E 07 27 54 55 F3 93 9F 3E 0E 47 27 AA FF F3 9B 87 0E 4E 67 0F FF //Penultimate Row 00 FF FF FF FF FF FF FF 00 //Last Row
Note to review: there is no write support for OTA format in XnView
Despite the image format calls OTA as the mentioned it above, image files can only be viewable if the file extension is ".otb" if you have any ota bitmap files, to view them first you could change its extensions to ".otb"