Page 1 of 1

Switcher image compression

PostPosted: Thu Nov 03, 2016 1:15 am
by haknikor
Hi!
Does anyone know, what kind of image compression is used between ATEM TVS and ATEM Software Control to upload/download stills?

My test is the following:
Image: 1280x720, 24bpp => 1280x720x3 Byte/px + 44 Byte header/footer = 2.764.844 Byte TGA
Fill this image with color #00FF00 (green), and save it as PNG (best compression): 3757 Byte
Upload this file to the ATEM TVS with ATEM Software Control: 24 Byte!!! How?! :)
This is the content of the one and only FTDa packet (thx to wireshark):
Code: Select all
fe fe fe fe fe fe fe fe 00 00 00 00 00 07 08 00 3a c2 ba b2 3a c1 ca b2

Maybe the flif format can be such small like this, but this is not in flif format.
What is this format and how can I encode/decode this?
I would appreciate any tip/suggestion/idea...
Thanks in advance!

Re: Switcher image compression

PostPosted: Sat May 12, 2018 9:54 pm
by Eddy Briere
Hi,

I'm working on this same point. Have you got more information ?

best regards


Eddy

Re: Switcher image compression

PostPosted: Thu May 17, 2018 8:05 am
by Eddy Briere
hello everybody,

I am going to post on this post my researchs about the tranfers of images towards a Switch ATEM here.

I analysed data between AYEM Software Control of BlackMagic and a ATEM Studio Tv HD with WireShark.

I written this memo :

eddy-briere.com/tmp/Protocol%20extention%20info%20ATEM.pdf

I saved data from WireShark.

I got data from all tags of cmd FTDa to build a binary file :

eddy-briere.com/tmp/RAW%20IMAGE%20ATEM.bin

Image in png format I transfered :

eddy-briere.com/tmp/test3.png

Today impossible to get RGBA data from this file. Compressed/Image format ??? I tried zip/gzip no success.

Re: Switcher image compression

PostPosted: Fri May 25, 2018 7:59 am
by uli peters
I guess it's native "10bit UYUVA" (v210 + alpha) format in active picture resolution and color range. You have to convert it first before upload or download and save as well known image file format.
Of course you also have to process the alpha channel correctly (premultiply/unmultiply). The last is what BMD fails to do on their own when reading and writing PNG which have a straight alpha channel but they always assume it is premuliplied (not allowed/possible in PNG!)

Re: Switcher image compression

PostPosted: Fri May 25, 2018 8:35 pm
by Eddy Briere
Hi,

I thought of this type of format at one time. Thank you for your help. Have a nice week end

Ed

Re: Switcher image compression

PostPosted: Sat May 26, 2018 12:10 pm
by Peter Schuster
It might be some kind of run length encoding. I gave up on it, but recently Julusian seems to have figured it out: https://github.com/LibAtem/LibAtem/blob/master/LibAtem/Util/Media/FrameEncodingUtil.cs

Re: Switcher image compression

PostPosted: Thu Jan 25, 2024 5:43 am
by vilashneha
It employs a unique encoding format, achieving remarkably small file size like 24 Bytes for a 1280x720 image. The specific encoding details are unclear but this efficient compression surpasses traditional formats like PNG and for the detail information you can check ATEM documentation for encodeing, decoding and for checking your compressed png and compressing manually you can use online application such as jpeg compressor it compress png as well as other file format too.

Thank you.