Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 23 lis 2024, o 11:51


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 
Autor Wiadomość
PostNapisane: 14 maja 2013, o 18:31 

Pomógł: 0

Witam,
mam takie małe pytanie, bo szukam i nigdzie znaleźć nie mogę. Jak dokładnie "wygląda" plik graficzny zapisany w Pixel Factory w formacie 16-bit (RGB 565)? Tzn. chodzi mi o to czy zawiera same dane o kolejnych pikselkach, czy jest też na początku jakiś nagłówek (nieśmiało przypuszczam, że tak i zajmuje 5B)?

Pozdrawiam, Wojtek



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2013, o 19:15 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27309
Lokalizacja: Szczecin
Pomógł: 1041

wwojtek napisał(a):
Witam,
mam takie małe pytanie, bo szukam i nigdzie znaleźć nie mogę. Jak dokładnie "wygląda" plik graficzny zapisany w Pixel Factory w formacie 16-bit (RGB 565)? Tzn. chodzi mi o to czy zawiera same dane o kolejnych pikselkach, czy jest też na początku jakiś nagłówek (nieśmiało przypuszczam, że tak i zajmuje 5B)?

Pozdrawiam, Wojtek


Z tego co pamiętam to tak jak piszesz - dodatkowo jest 5 bajtów, czyli dwa na szerokość, dwa na wysokość i ZERO jeśli nie ma nagłówka

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2013, o 20:22 

Pomógł: 0

Dziękuję za odpowiedź. Pobawiłem się trochę programem i "hex podglądaczem" i wszystko się z grubsza zgadza :) Jest szerokość i wysokość. W ostatnim bajcie nagłówka zawsze mam 0. Nie wiem jak powinna działać opcja "generuj dane bez nagłówka" ale u mnie nie ma różnicy czy jest "zaptaszona" czy nie.

Przy okazji - zauważyłem taki bały "bug" w programie: jako format pliku wybieram "16-bit (565)", gdy klikam na "save as RGB" to w oknie zapisywania wybrany jest typ pliku "RGB 888 (*.rg8)" zamiast *.rg5. Pomimo tego plik zapisuje się z rozszerzeniem rg5 :) Być może ma jakieś znaczenie, że program uruchamiam na linuksie (poprzez emulator wine).

Pozdrawiam, Wojtek



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2013, o 21:40 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27309
Lokalizacja: Szczecin
Pomógł: 1041

wiesz co kłopot polega na tym, że ja fizycznie na razie testowałem tylko rgb888 a nie miałem okazji 565 więc nie do końca powiem co i jak .... jeśli chodzi o fizyczne działanie i czy na 100% poprawnie się pokaże obrazek na LCD ... ale jak przetestujesz i dasz znać to będzie miło

------------------------ [ Dodano po: kilkunastu sekundach ]

co do buga - postaram się sprawdzić

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2013, o 22:12 

Pomógł: 0

Testowałem i działa bardzo dobrze :) Na początku tylko miałem problemy, bo założyłem, że plik nie zawiera nagłówka - przez co te nieszczęsne 5B było wczytywane jako "piksel" i wszystko się koncertowo rozjeżdżało i nabierało ciekawych kolorów :) Nie mogłem znaleźć błędu w funkcji wyświetlania obrazka na LCD, więc zacząłem podejrzewać plik .rg5 - zauważyłem, że jest o te 5B "za duży". Zmodyfikowałem więc funkcję tak, żeby opuszczała te kilka bajtów i wszystko działa. Ale cały czas ciekawiło mnie co tam siedzi na początku, opisu nigdzie nie udało mi się znaleźć - stąd post :) Jak znajdę trochę czasu wolnego to postaram się dopracować programik i pochwalę się wynikami :).

Jeszcze pozwolę sobie napisać, bo może ktoś kiedyś będzie szukał takiego "gotowca". Pierwsze pięć bajtów w pliku *.rg5 (wprowadźmy sobie oznaczenie pomocnicze AB CD EF GH IJ - zapis hex) wygląda następująco:
CDAB - szerokość w pikselach
GHEF - wysokość w pikselach
IJ - jak dotąd u mnie zawsze zero :)

Przykłady:
- plik o rozdzielczości 320x240:
40 01 f0 00 00 (0x0140 -> 320; 0x00f0 -> 240)

- plik o rozdzielczości 123x456:
7b 00 c8 01 00 (0x007b -> 123; 0x01c8 -> 456)

Mam nadzieję, że wyszło mi to w miarę czytelnie :)

Pozdrawiam, Wojtek



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2013, o 23:21 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27309
Lokalizacja: Szczecin
Pomógł: 1041

Tak bardzo czytelnie - praktycznie instrukcja do programu ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO