I'm trying to guess which compression scheme is encoding a 14 bits picture, based on observing data samples. The same algorithm (with different parameters) is likely used to compress lossy and lossless.
Here is an example of header data for lossless version of a 1624x1080 picture. Observations: each ff01 contains 4 ff02 parts. With lossless, each ff02 parts have one ff03 part. The first 32 bytes of compressed data, just after each ff03 header are displayed b'...' below:
ff01 0013af80 0
ff02 0004e390 0 8 000000
ff03 0004e390 0 020 0003
b'0000000000203ac9468260a5227468805f222b9394520c955401bb7b119bd223'
ff02 0004ee40 1 8 000000
ff03 0004ee40 0 020 0007
b'000000000020394f44420d500a990c6d4124091826b2a102225205b0dd3448da'
ff02 0004ee50 2 8 000000
ff03 0004ee50 0 020 0007
b'00000000002039474c4c62120251158e691d184643522002ba2625002a8a00d4'
ff02 0004ef60 3 8 000000
ff03 0004ef60 0 020 0007
b'00000000002038d30347c8722c369121109530a2dc85440004852e04acc1a200'
for lossy compression, each ff02 parts has 10 ff03 :
ff01 00084fe0 0
ff02 00020328 0 8 000000
ff03 00001918 0 020 0006
b'0000000000203ac318425ef6a542510989082c844a24481516268485b225d0a8'
ff03 00001538 0 020 0003
b'00ef1e8849731d5028b2248b391413212c401b04595d7d65018054ad899137a8'
ff03 000016b0 0 020 0006
b'67ac484c922e025e55034962865cc8168e0b2636db2efa9341cb403a227bea08'
ff03 00001610 0 020 0007
b'01fde185a0795dd7b0d0906d0400e2a1272113c64072af1a0423259919531043'
ff03 00003308 0 080 0005
b'575d1afb5a4fdb3999ac9249a7a724dcdbe6c7ac550a8849158fa42a0a8f3f05'
ff03 000037f8 0 080 0000
b'f65dfb9eddf5ebc65fda716792792f13236f93ab9d0da2a66fe4e37673ecc360'
ff03 00002a10 0 0b0 0004
b'fdc31c95bc733fbcea678e9bdaf96ce7cf19361939cffb935c924eceb35c9cd9'
ff03 00006878 0 0d0 0004
b'faff6f8ff667774f2f87aaf3efb70f0f971dfb93fa4e1ff1e5ddefc3d5aaf4e7'
ff03 00007688 0 0d0 0006
b'ffd370f971feb3d5fb7cf9bd5cbabc5e2f470f7f272ede5efe3cb4de5d3d387c'
ff03 00003408 1 100 0004
b'fffffe50e39d0b80fce7d0be73aa736749784ffef5cdb85765fe99f00e45c238'
ff02 00021928 1 8 000000
ff03 00001af0 0 020 0006
b'000000000020394b00104132249729a435ef6b9ef72443204463319422958ac5'
ff03 00001678 0 020 0005
b'0a6883f1002cd95ea0b644ff25597844d9312c0bcf70c05d7feb07285981cbda'
ff03 00001820 0 020 0006
b'00f93726075a4b4284883e90b12e9a22143f4408b91614214dea400001639382'
ff03 00001740 0 020 0003
b'002de326c64264414fb83118876cb201de47caa376ed291305ee4e1548d8ea64'
ff03 00003690 0 080 0006
b'95e725faa7c12e1993d7e39f3939e35f32d796553992e4cbe96c936536ef3abf'
ff03 00003ca8 0 080 0001
b'33b997a9dff5d57a73a59c7fa4a6d6f32c4d37114ba4fc6755d6f19c0ce76a4e'
ff03 00002d20 0 0b0 0007
b'edb3f1bcb3cb93ee79af1b7c4fbc4deb9e279fae7dd9f59c717533dd79c61834'
ff03 000066f0 0 0d0 0007
b'fffc9ff0d38df31e139d78de0707f0e4e2b85d0b4cb877543a5594dc93a73e6f'
ff03 00008188 0 0d0 0006
b'fff1fd3f43cbe77673be0eddbbbbe9febf97d5e47074e3272e539e926950a293'
ff03 00002f90 1 100 0001
b'fffff11fba78cff627067f8f7fe3f75d7ed9e08e4eff06200c825f8d7abf017f'
ff02 00021878 2 8 000000
ff03 00001ae0 0 020 0003
b'00000000002039450031e3050925ef6bdc42c52086731d22773282408eec6675'
ff03 000016a0 0 020 0001
b'0303a6926222416e0a16ef0f448cc9280244a838795211adef21410902410f44'
ff03 000017f8 0 020 0007
b'0f0847a34b510ea230507509694082b2500e44dc89620fd02f4a9000001676a0'
ff03 00001758 0 020 0007
b'2184092c1524802557c35145ec92e1ad7c278157ec7821524c2068288864c81b'
ff03 00003770 0 080 0000
b'76be79adf829cbc5249e46c6ee554cd61ae93395366d52b855f1727fa8603648'
ff03 00003ba8 0 080 0005
b'cf3ef79fd9f9c5c96f32f19cfce3ccaf5f9e671ecbc56cca052673f3dc438548'
ff03 00002cd8 0 0b0 0005
b'3ff85e2bdf1f0db3caf869d752ef971cb357bf5cf12d278f8f8df33bc5c08b29'
ff03 000072b0 0 0d0 0007
b'93fff0cffa3cbe37667d4de2e7fc77073789e273e7cdecdd72f454f387a2d39c'
ff03 000075f0 0 0d0 0002
b'ffff27f71753e8389ecf87d4e773f4868b924e1d0a53964ace3664c22d2ac14b'
ff03 00002f18 1 100 0007
b'fffffea1cc7fa7711cff0c38d383b85ff38712771fea4fe3a70fb9c705c27e56'
ff02 00021b18 3 8 000000
ff03 00001a28 0 020 0004
b'00000000002038d300018e0c284d871320c61443d8531a5a920944208ce410a8'
ff03 00001628 0 020 0003
b'101a7072049100699b0bf6f07111d1319234c4d1027a301a7b55040e947a7f13'
ff03 000017b0 0 020 0000
b'401a1c148c285383109a5a6a23f96255445880f6729d64256555a40de8070337'
ff03 00001710 0 020 0004
b'091016173981b2c822ac2d19824e284551db0c67f976cecc266924c287c3faae'
ff03 00003770 0 080 0006
b'db26f3691fb0d252f46721e37cf45f07a49f0c4eb24e7037a8f43323a7524909'
ff03 00003c60 0 080 0001
b'65bf936d8f21d725d395d6ab2b6948f2afe569c62308e9a734062c518b18d165'
ff03 00002d60 0 0b0 0001
b'dd5a5368dd995fae79362f4d62d6490a9b7ec9ce79269cee993d242b8bacda78'
ff03 00006f70 0 0d0 0004
b'ff37eddbd7b79efe3f79f0de5f9a9c39f8a759ce1be6e4f05b5dbcf299b2693e'
ff03 00007e50 0 0d0 0002
b'f3ff8e9f0f4efe1edf833f1757074d9dbf17bbacf9f83e2bc386f87a73f17b67'
ff03 00002d18 1 100 0005
b'fffff8d7e1efcddf2a704736fe73fe02725734e45f117f09738783386ce67baf'
Could it be wavelet (because of 10 "ff03" subparts for lossy instead of 1 for lossless) with Rice coding (no huffman like tables)?
Kind regards
Laurent (lclevy@free.fr)