decoration Wpisy na blogu decoration

decoration
decoration
29.11 2009
17:13

Komentarze: 0

Calumma Player dostępny

Calumma Player - ikonaW końcu postanowiłem opublikować odtwarzacz multimedialny, nad którym pracowałem już ponad rok. Co prawda tą premierę miałem po cichu zaplanowaną gdzieś na początek września, jednak z różnych powodów powstało dość duże przesunięcie. Sporo się pozmieniało biorąc pod uwagę początkowe plany, oraz sam wygląd odtwarzacza. Wcześniejszą wersję odtwarzacza można zobaczyć w galerii.

Może wspomnę teraz coś o historii Calumma Player. Sam pomysł narodził się jeszcze kilka lat temu, jednak do realizacji zabrałem się około września 2008r. Pierwsze screeny z działania opublikowałem około grudnia 2008. Pierwsza publiczna notka o tym odtwarzaczu została dodana 14 grudnia 2008. Również jeszcze pod koniec grudnia dostałem swój identyfikator od Last.FM dla tego odtwarzacza i od tego momentu był rozpoznawany oficjalnie przez ten serwis.

 

Odtwarzacz był cały czas rozwijany z różna intensywnością. Jednak parę rzeczy ciągle nie dawało mi spokoju, rzeczy które chciałem wprowadzić, ale bieżący projekt mi na to nie pozwalał. Zaplanowałem te zmiany dla następnej wersji odtwarzacza. W końcu jednak coś we mnie pękło i postanowiłem przebudować to co zrobiłem do tej pory. Nastąpiło to gdzieś na początku lipca tego roku. I tak zaczęła powstawać wersja 0.6. Zrezygnowałem tutaj z Java Swing na rzecz SWT (używanego m.in. przez Eclipse). Zmiany graficzne, to jednak nie wszystko. Zmieniła się cała struktura odtwarzacza – w końcu zaimplementowałem jedną z najbardziej upragnionych przeze mnie rzeczy – rozszerzalna funkcjonalność pluginami. Rozwiązanie takie pozwoli na ewentualne zbudowanie w przyszłości małej społeczności wokół odtwarzacza, a także przyśpieszy jego działanie, gdyż użytkownicy będą mogli zrezygnować z nieużywanych funkcjonalności, oraz dodać nowe.


Jak na razie nie udało mi się dodać całej funkcjonalności, która była dostępna w nieopublikowanej wersji 0.5 tego odtwarzacza. Jednak przyszedł czas, by pokazać, że coś z tym odtwarzaczem się dzieje, że nie umarł przed „wyjściem na świat”.

 

Calumma Player w akcji


W Calumma Player, pewnie jeszcze wiele ulegnie zmianie. Mam jeszcze parę pomysłów do wprowadzenia. Cały czas nie jestem pewien nazwy. W tej chwili to ciągle jest nazwa kodowa, ale chyba trzeba by wymyślić inną – ta nie jest łatwa do zapamiętania.
A... nie będę narzekał na brak czasu (każdy go nie ma, więc nie warto) i będę się starał, co jakiś czas opublikować uaktualnioną wersję odtwarzacza. Zapraszam do obejrzenia galerii i przetestowania.



21.11 2009
12:14

Komentarze: 1

Jak napisać własny miernik baterii?

Exquisite-battery_charged_light.png on GPLProblem stworzenia własnego miernika baterii, nie jest specjalnie skomplikowany. Opiera się na odczycie kilku plików tekstowych i odpowiedniej analizie znajdujących się tam danych. Co jest potrzebne? Przede wszystkim Linux z obsługą ACPI (jeżeli inne mierniki działają, to na pewno masz już dobrze przygotowane jądro). Przyda się również znajomość jakiegoś języka programowania. Całość powinna zająć maksymalnie kilka godzin, zależnie od sposobu prezentacji.

Do stworzenia takiego miernika przyjrzyjmy się dwóm plikom:

cat /proc/acpi/battery/BAT0/info
cat /proc/acpi/battery/BAT0/state


Struktura obu plików jest taka sama, więc wystarczy prosta klasa wczytująca dane w postaci:

etykieta ":" *\t wartość


Plik info wyświetla informacje ogólne o baterii. Tutaj przydatna dla nas będzie informacja o możliwie maksymalnym załadowaniu baterii – przechowywana jest w „last full capacity”, możemy od razu zauważyć, że wartość ta już się pewnie nie równa „design capacity”, czyli fabrycznej pojemności baterii.

W pliku state znajdziemy informacje o aktualnym stanie baterii. Te poniżej są dla nas niezbędne:

charging state ← pozwala określić, czy bateria jest w użyciu
present rate ← pozwala określić szybkość rozładowywania baterii
remaining capacity ← pozostała pojemność


Podstawowy miernik baterii musi mieć trzy podstawowe funkcje: wykrycie, czy aktualnie korzystamy z baterii, lub z zasilania, wyświetlenie dostępnej pojemności, oraz wyświetlenie czasu do całkowitego rozładowania baterii.

Realizacja pierwszej jest najprostsza – sprawdzamy, czy „charging state” zawiera status „discharging”, oznacza to, że bateria jest rozładowywana.
Dostępna pojemność wyświetlana jest procentowo. Potrzebujemy więc tutaj informacji o maksymalnym naładowaniu baterii, który pobraliśmy z pliku info.

poziom_baterii = (remaining_capacity*100/last_full_capacity);


Pozostały czas do całkowitego rozładowania baterii obliczymy w taki sposób:

time = remaining_capacity/present_rate;


Otrzymamy w ten sposób liczbę reprezentującą czas w systemie dziesiętnym (np. 1.571 – oznacza około 1h 30min). Pozostaje to tylko proste przeliczenie na system godzinowy.

Całość przydałoby się ubrać w jakieś GUI i umieścić np. w Tray'u. Aby miernik wyglądał ładnie graficznie dobrze jest znaleźć, lub przygotować ikony reprezentujące różne poziomy naładowania baterii.

 

Miernik baterii


A tak się prezentuje przykładowy napisany przeze mnie miernik baterii (Java+SWT), po najechaniu kursorem.



11.11 2009
17:20

Komentarze: 0

Zmiany na stronie

tom000 - Logo stornyOsoby, które od czasu do czasu odwiedzają moją stronę pewnie zauważyły, że trochę się pozmieniało na stronie. Pierwsze co się rzuca w oczy, to całkiem nowa grafika i dwukolumnowy układ strony. Zmiany graficzne to jednak nie wszystko. Zmianie uległ również system CMS strony, który został napisany całkiem od nowa.

Ograniczyłem trochę funkcjonalność serwisu. Całkiem zrezygnowałem z anglojęzycznej wersji bloga. Dostępna jest tam tylko moja wizytówka w postaci portfolio i galerii. Zmianie uległ również sposób adresowania stron. Polska wersja znajduje się teraz pod główną domeną, a angielska jest w subdomenie „en”. Wszystkie adresy ze starszej wersji powinny zwracać status 301 i przekierowywać na właściwą stronę w nowej wersji. Serwis działa na razie w wersji próbnej i pewne rzeczy mogą ulec zmianie.

Dla tych co nie widzieli, lub nie pamiętają starszej wersji witryny, poniżej screen.

Stara wersja strony



18.09 2009
13:06

Komentarze: 0

Telewizja przez Internet

LiveStation & TuxTemat nie jest jakiś szczególnie nowy. Już od kilku lat się słyszy o możliwości oglądania TV przez internet, Sam tym tematem się nie interesowałem, jednak ostatnio natknąłem się na ciekawy program umożliwiający przeglądanie sporej ilości kanałów TV za darmo. Mimo że powstało już wiele programów agregujących stacje telewizyjne transmitujące przez internet, postanowiłem wspomnieć o tym programie, ponieważ znacznie rzadziej można spotkać coś takiego działającego w systemie Linux.

 

Program dostarczony jest przez serwis LiveStation.com i działa na interfejsie QT3. Aby móc oglądać stacje telewizyjne musimy się w pierwszej kolejności zarejestrować w tym serwisie. Można to zrobić bezpośrednio z programu – zajmuje to około 3 sekund.

LiveStation - okno programu

LiveStation - okno programu

Aktualnie do bazy dodanych jest ponad 3 tysiące programów. Na początku na liście naszych ulubionych kanałów znajduje się około 20 pozycji, z czego większość są to kanały informacyjne i często w języku trudno zrozumiałym (czytaj – nieanglojęzyczne). W bardzo łatwy sposób możemy wyszukać również nowe stacje i dodać je do listy. Ja zacząłem od przeglądnięcia kanałów muzycznych i parę z nich dodałem do swojej listy. Oglądając kanały telewizyjne możemy również komunikować się z innymi użytkownikami oglądającymi to co my w danej chwili przez chat wbudowany w program.
Z opcji, których mi brakuję mogę wymienić możliwość nagrywania, robienia screenu, czy dodawania nowych kanałów/strumieni bezpośrednio w programie, nie przez stronę www. Mimo wszystko zachęcam do samodzielnego sprawdzenia programu.



02.09 2009
17:28

Komentarze: 0

Jak zidentyfikować plik bez rozszerzenia?

TrID - ikona programuCzasem zdarza się że w systemie, lub w naszych dokumentach natrafiamy na plik, który nie posiada rozszerzenia. Ze względu, że 'siedzi' on u nas już od niepamiętnych czasów to i jego typ może być już dla nas nieznany. Osoby bardziej obyte z różnymi typami plików mogą za pomocą polecenia cat przejrzeć zawartość pliku i po pierwszych linijkach odkryć, że jest to obrazek PNG, lub dokument Open Office'a. Dla tych, którzy nie wiedzą – istnieje prostszy sposób.

W celu identyfikacji takich plików może posłużyć nam program TrID autorstwa Marca Pontello. Rozpoznawanie plików za pomocą tego narzędzia jest bardzo proste. Należy zacząć od pobrania pliku programu i pliku bazy z definicjami typów. Po rozpakowaniu archiwów zmieniamy nazwę pliku bazy w ten sposób, aby wszystkie znaki były małymi literami (w innym przypadku program nie znajdzie bazy). Następnie z poziomu konsoli wpisujemy:

./trid plik


Dla przykładowo zidentyfikowanego pliku triddefs.trd otrzymujemy rezultat w postaci procentowej – jakiego typu jest wybrany plik:

TrID/32 - File Identifier v2.00/Linux - (C) 2003-06 By M.Pontello
Definitions found:  3820
Analyzing...
 
Collecting data from file: triddefs.trd
 61.1% (.TRD) TrID defs package (22009/2/8) 27.7% (.AOS) AOS File Format (10000/1/3) 11.1% (.) Generic RIFF container (4000/1)


Więcej informacji na temat działania programu można znaleźć na stronie autora.



Copyleft (C) tom000.info 2004-2009. Some rights reserved.