Мне нужно было создать небольшое программное обеспечение для удаленного рабочего стола в 'C', которое компилируется на разных платформах (linux, freebsd, windows ...). Я некоторое время изучал различные форматы изображений, но все еще не мог прийти.с хорошей идеей использовать их, прямо сейчас, вот что я делаю:
1. Convert All Formats into Windows Bitmap (XImage,...etc)
2. Do a byte-to-byte comparion and replace the identical bytes with zeros
3. Preform a RLE (Run Length Encoding) on the Resulted data.
4. Transmit the Packet to the Server
5. Inverse the Operation on the Server by Reconstructing the Image through the previous image (Comparing Last Image with the New one Discarding Zero Bytes after RLE)
, но это имеет тенденцию быть очень медленным, так как формат растрового изображения уже имеет очень большие файлы, потому что он не содержит сжатияи на платформах, таких как Mac OS X, размер растрового изображения слишком велик из-за очень высокого разрешения.
Есть ли более быстрый и лучший способ для потоковой передачи на рабочем столе?