MultimediaW tym artykule postaram się omówić najważniejsze kwestie związane z odtwarzaniem, przetwarzaniem oraz edycją różnego typu danych multimedialnych (grafika, dźwięk i wideo). Grafika 3D i gryW programowaniu współczesnych gier bardzo istotnym elementem jest obsługa grafiki (zazwyczaj 3D aczkolwiek nadal można spotkać i zapewne zawsze będzie liczna grupa gier 2D). Rzadko graficzna część gry tworzona jest od podstaw z bezpośrednim wykorzystaniem mechanizmów takich jak OpenGL. Najczęściej gry korzystają z silników gier zawierających silniki graficzne lub bezpośrednio z tych drugich. Silnik gry różni się od silnika graficznego tym że dostarcza także mechanizmów służących do implementacji fizyki świata gry (w tym wykrywania kolizji), sztucznej inteligencji, obsługi wejścia (sterowania), dźwięku i sieci. Silnik graficzny dostarcza natomiast tylko wygodnych mechanizmów operowania obiektami graficznymi, maskując niżej poziomowe interfejsy takie jak SDL, czy jeszcze bardziej niskopoziomowy i ograniczony tylko do grafiki OpenGL. Wspomniany OpenGL jest API do obsługi grafiki 3D, najczęściej stosowany jest w zastosowaniach profesjonalnych, ale niekiedy także w grach - ze względu na otwartość specyfikacji oraz dostępność na wiele platform - zwłaszcza w grach z rodziny FLOSS). SDL jest z kolei biblioteką programistyczną zwalniającą programistę z konieczności operowania suchym OpenGL i jemu podobnymi mechanizmami, jednak jest dość niskopoziomowy i nie jest określany mianem silnika graficznego czy też silnika gry (dostarcza jednak mechanizmów obsługi wejścia itp). Do najbardziej zaawansowanych projektów silników na wolnych licencjach należą: Irrlicht (licencja typu BSD), OGRE (LGPL), Crystal Space (LGPL). Dość bogatą bazę silników (w tym tych z rodziny FLOSS) można przeglądać na devmaster. Zobacz też: przykładowe programy multimedialne w C/C++ (w tym związane z grafiką 3D), mój pomysł na silnik gry, portal o programowaniu gier, edytor shaderów dla KDE (łatka ułatwiająca kompilację w Debianie). Lista programów "multimedialnych"Przeglądarki multimedialne i odtwarzaczePrzeglądarki multimedialne i odtwarzacze audio/video są programami służącymi do wyświetlania / odtworzania plików w wielu formatach, odtwarzacze potrafią zapisywać tak zwane "playlisty" czyli listy plików które mają odtwarzać, przeglądarki oferują tworzenie podglądów katalogów, przeglądać w trybie pokazu slajdów oraz dokonywać prostych modyfikacji plików graficznych i zmian formatu zapisu.
Edytory graficzneProgramy do edycji graficzne dzielimy zasadniczo na trzy typy - programy do tworzenia grafiki rastrowej, grafiki wektorowej i animacji. Grafikę rastrową używa się do obrazków o nieregularnych kształtach, zdjęć, ..., umożliwia ona stosowanie licznych filtrów i efektów, w śród programów do jej edycji trzeba wymienić słynnego Gimpa. Z kolei podstawową zaletą grafiki wektorowej jest niezmienność jakości przy powiększaniu oraz zdolność do opisywania struktury (linia jest obiektem, a nie tylko zbiorem punktów), dlatego grafika ta jest używana głownie do tworzenia symboli i log oraz schematów. Z kolei animacje tworzone są jako sekwencyjnie wyświetlane pliki graficzne (z ewentualnymi efektami przejścia).
Edytory wideoProgramy te umożliwiają obróbkę i montaż cyfrowego wideo wraz z jego ścieżką audio, dodawanie efektów przejść, elementów animacji, a także kompresję i konwersję między formatami. posiadają również moduł umożliwiający przechwytywanie wideo (jego ucyfrawianie).
Edytory audioOprogramowanie to umożliwia montaż, doadawanie efektów, konwersję i kompresję oraz przechwytywanie audio.
Edycja audio-wideoCinelerraCinelerra jest programem do montażu wideo, umożliwia składanie filmu, dodawanie efektów itp. W przypadku problemów z uruchamianiem (biblioteki) polecam sprawdzenie wersji bibliotek faad i faac (najlepiej stosować z tego samego źródła co sama cinelerra). Efekty specjalne1) zaznaczamy interesujący nas fragment (w oknie głównym) Efekty przejśćWstawiamy je przeciągając wybrany efekt z okna efektów do okna głównego i umieszczając na połączeniu dwóch fragmentów. W menu prawego przycisku myszy mamy czas trwania i ustawienia. EksportNależy przewinąć film do początku (eksport zaczyna się od aktualnego czasu) następnie File -> Render ... . Polecam ustawić "File Format" na RawDV oraz "Insertion strategy" na "Insert nothing" (nie testowałem ustawień z eksportem audio). pakiet Transcode i inne narzędzia tekstoweaudiowydzielenie ścieżki audio z pliku wideo: wideodocinanie plików wideo: odzyskanie informacji o długosci filmu: kodowanie xvid: audio i wideołączenie plików wideo i pliku audio ze sobą: LinkiZobacz w Sieci: Linux i edycja dźwięku, Nagrywanie i edycja dźwięku w Linuksie Uwagi konfiguracyjne dotyczące multimediówTuner radiowo-telewizyjny i cyfrowa rejestracja wideoUruchomienie karty telewizyjnej wymaga zapoznania się z listą obsługiwanych kart i tunerów, odnalezienia na niej posiadanej pozycji bądź pozycji zbliżonej a następnie załadowaniu odpowiedniego modułu z odpowiednimi parametrami. W moim wypadku (karta PV-BT878P+ rev.2F z tunerem TPI8PSB02P) słuszne okazało się Do nagrywania cyfrowego wideo polecam program "transcode" (niestety nie ma go w oficjalnym Debianie) z następującymi parametrami Niekiedy na nagraniach w maksymalnej rozdzielczości PAL pojawia się problem przekłamanych linii (wynika to z emisji w PALu jednej klatki obrazu w postaci dwóch półklatek wyświetlanych jako jednej) warto wtedy w VLC z menu Stettings wybrać Prefernces - General settings - Obraz i ustawić Video filter module na "Deinterlacing video filter" (następnie zrestartować vlc). Zamieszczam również skrypt ułatwiający nagrywanie wideo - magnetowid.sh. Zobacz tez w Sieci: Television with Linux Wspomniany już VLC umożliwia także przechwytywanie i wysyłanie w sieć IP sygnału audio-wideo z naszej karty TV (oraz z pewnym wspomaganiem (program radio służący do nastrojenia odbiornika) także sygnału audio z tunera radiowego). Zamieszczam tutaj skrypt ułatwiający taką operację (składnia vlc służąca do tego nie jest łatwa i przyjemna, a wtaki sposób łatwiej wprowadzać parametry takie jak np. kanał. Niekiedy można spotkać się z problemem polegającym na braku sprzętowego sprzężenia wejścia liniowego z wyjściem głośnikowym - problem ten może rozwiązać program kopiujący wejście na wyjście karty dźwiękowej (wersja alsa), (wersja oss) oraz skrypt dla KDE uruchamiający cały zestaw aplikacji do słuchania radia / oglądania telewizji. Na koniec warto wspomnieć także o programie alevt, który umożliwia softwerowe dekodowanie teletextu (telegazety) z karty obsługiwanej przez bttv: Serwer dźwięku KDE oraz ALSAZ serwera dźwięku KDE potrafią korzystać też liczne programy nie stworzone specjalnie dla tego środowiska (jak VLC, XMMS, ...), aby było to możliwe konieczne jest zainstalowanie do nich wtyczki dla systemu dźwiękowego "arts" oraz wybranie tego systemu jako wyjścia dźwięku. Ma to tę zaletę że programy te nie blokują sobie wtedy wzajemnie oraz serwerowi dźwięku KDE dostępu do urządzenia dźwiękowego (co ma miejsce przy korzystaniu z /dev/dsp). Jeżeli korzystamy z sterowników alsa możemy pokusić się o wykorzystanie miksera wbudowanego w ten system dźwięku (dmix) do miksowania dźwięków z serwera arts oraz innych programów (jest to działanie domyślne tego sterownika). ALSA umożliwia także bardziej dziwne sztuczki z karta dźwiękową jak np. zamiana kanałów (np. prawego z lewym lub głośników tylnych z przednimi) - tutaj zamieszczam przykład stosownego pliku konfiguracyjnego. Jeżeli mamy więcej niż 1 kartę dźwiekową warto zainteresowac się parametrem modółów alsy | |
|
|
Copyright (c) 1999-2008, Robert Paciorek (http://www.opcode.eu.org/), BSD-type license
Redystrybucja wersji źródłowych i wynikowych, po lub bez dokonywania
modyfikacji JEST DOZWOLONA, pod warunkiem zachowania niniejszej informacji o
prawach autorskich. Autor NIE ponosi JAKIEJKOLWIEK odpowiedzialności za skutki
użytkowania tego dokumentu/programu oraz za wykorzystanie zawartych tu informacji.
This program is free software. Redistribution and use in source and binary
forms, with or without modification, ARE PERMITTED provided save this copyright
notice. This document/program is distributed WITHOUT any warranty, use at YOUR
own risk.
Dokument ten (URL: http://www.opcode.eu.org/multimedia)
należy do serwisu OpCode. Autorem tej strony jest Robert Paciorek,
wszelkie uwagi proszę kierować na adres e-mail serwisu: webmaster@opcode.eu.org.
Data ostatniej modyfikacji artykulu: 2008-07-15 18:03:12 (UTC) (data ta może być zafałszowana niemerytorycznymi modyfikacjami artykułu).