Linux Sound Playing HOWTO
Linux Sound Playing HOWTO
Autor: Yoo C. Chung
wacko@laplace.snu.ac.kr
v1.5, 7 Listopada 1997
Wersja polska: Leszek Urbański
tygrys@fidonet.org.pl
v 1.0, 28 Marca 1998
Ten dokument opisuje aplikacje dla Linuxa, służące do odgrywania
dźwięku w różnych formatach.
Dokument ten został napisany w standardzie ISO-8859-2.
Oryginał tego dokumentu znajduje się pod adresem http://laplace.snu.ac.kr/~wacko/howto/
1. Wprowadzenie
To jest Sound Playing HOWTO. Opisuje wiele formatów dźwięku i aplikacje,
które mogą być użyte do ich odtwarzania. Opisuje także pare trików i rad
dotyczących tych aplikacji. Jest tu też trochę innych interesujących
programów związanych z dźwiękiem, nie związanych bezpośrednio z odtwarzaniem.
Jednakże ten dokument nie opisuje, jak ustawić obsługę dźwięku w
Linuxie. Zobacz Linux Sound HOWTO autorstwa
Jeff'a Tranter'a, dla
uzyskania instrukcji konfiguracji obsługi dźwięku i obsługiwanego sprzętu.
Ten dokument opisuje tylko normalne aplikacje użytkownika. Znaczy to, że
tłumaczy tylko to, co średnio zaawansowany użytkownik powinien wiedzieć o
stronie programowej dźwięku, a nie egzotyczne tematy typu synteza dźwięku
lub sprzęt - jest on opisany w Sound HOWTO.
1.1 Prawa autorskie tego dokumentu
Ten dokument może być dowolnie dystrybuowany i modyfikowany (byłbym wdzięczny,
gdybym był zawiadamiany o zmianach), dopóki są zachowane wiadomości o prawach
autorskich. Jednakże nie może posiadać żadnych innych ograniczeń, a
zmodyfikowany dokument musi mieć te same prawa autorskie, co ten. Musi być
także podany autor zmian.
1.2 Prawa autorskie opisanych aplikacji
Jeżeli nie ma informacji o prawach autorskich, aplikacja jest pod Licencją
Publiczną GNU (GNU General Public License).
1.3 Gdzie można zdobyć ten dokument
Najnowsza oficjalna wersja tego dokumentu może być ściągnięta z
http://sunsite.unc.edu/LDP/.
Najnowsza nieoficjalna wersja znajduje się na
http://laplace.snu.ac.kr/~wacko/howto/.
Koreańska wersja tego dokumentu (bardzo nieaktualna) znajduje się na
http://laplace.snu.ac.kr/~wacko/howto/Sound-Playing-HOWTO.ks.
Japońska wersja tego dokumentu jest dostępna na
http://jf.gee.kyoto-u.ac.jp/JF/JF-ftp/euc/Sound-Playing-HOWTO.euc.
1.4 Kontakt z autorem
Nie jestem ominescentny i nie używam wszystkich aplikacji opisanych tutaj
(kilku nawet nie wypróbowałem), więc mogą być błędy. Programy także
ewoluują, więc dokumentacja ciągle się przedawnia. Jeżeli więc znajdziesz
jakieś błędy,
wyślij mi
poprawki. Sugestie i dodatki będą także mile widziane.
1.5 Podziękowania
dla wszystkich autorów aplikacji opisanych w tym HOWTO. Także Hannu
Savolainenowi za świetny sterownik dźwięku i Linusowi Torvaldsowi za świetny
system operacyjny.
Chciałbym też podziękować Raymondowi Nijssenowi (raymond@es.ele.tue.nl),
Jeroenowi Ruttenowi (jeroen@es.ele.tue.nl), Antonio Perezowi
(aperez@arrakis.es), Ianowi Jacksonowi (ijackson@gnu.org)
i Peterowi Amstutzowi (amstpi@freenet.tlh.fl.us) za informacje i pomoc.
2. Odtwarzanie różnych formatów dźwięku
Istnieje wiele rodzajów formatów dźwięku (WAV, MIDI, MPEG itp.).
Poniżej opisuję różne formaty i aplikacje używane do ich odtwarzania.
2.1 MIDI
MIDI znaczy Musical Instrument Device Interface (Interfejs urządeń i instrumentów
muzycznych). Pliki MIDI mają zazwyczaj rozszerzenie .mid. Zawierają
informacje sekwencerowe, to znaczy informacje kiedy odtworzyć jaki instrument
w jaki sposób itp. Zależnie od Twojego sprzętu (i może oprogramowania, którego
używasz) dźwięk może być świetny, albo niewyraźny i charczący.
"Adagio package"
Ten pakiet zawiera mp (odtwarzacz MIDI obsługiwany z linii komend)
i xmp (odtwarzacz MIDI oparty na XView, nie mylić nazwy z odtwarzaczem
modułów także nazywanym xmp). Do używania xmp będziesz potrzebował
rozszerzeń SlingShot. Pakiet zawiera także inne programy do odtwarzania utworów
Adagio.
Jeżeli jesteś posiadaczem GUS'a, mpmoże także odtwarzać pliki MOD
(zobacz sekcję
Moduły, żeby
uzyskać więcej informacji o modułach).
Jeden mały, ale denerwujący błąd (w wersji 0.5 na niektórych kartach) - dźwięk
urywa się przy końcu. Zamiast zakończenia utworu w sposób, który opisuje plik MIDI,
kończy się on na przydługim odegraniu przedostatniej nuty. Nie przeszkodziło mi to
w używaniu mp, ale może kogoś zniechęcić do używania go do ,,prawdziwej''
pracy. Uruchamia się dosyć wolno.
W pakiecie nie ma notatki o prawach autorskich (przynajmniej nie mogłem takiej
znaleźć), więc przyjmuję, że może być dowolnie dystrybuowana i modyfikowana. (W
dokładnej interpretacji przepisów o prawach autorskich, nie wolno tego robić, ale
sądzę, że taka była intencja autora).
To jest wersja CMU MIDI Toolkit pod Linuxa (ale tak dużo zostało dodane, że można
to zakwestionować) autorstwa Grega Lee (lee@uhunix.uhcc.hawaii.edu).
Można go ściągnąć z
anonimowego ftp z tsx-11.mit.edu z katalogu /pub/linux/packages/sound/adagio05.tar.gz.
Binaria tu załączone są w formacie a.out (z dołączonymi archaicznymi bibliotekami),
a binaria xmp działają w środowisku X11R6 (XFree86 3.1.1, libc 4.7.2).
Binaria mp działają dobrze w środowisku a.out.
Do skompulowania tego będzie potrzebne trochę sztuczek. Właściwie niewiele -
wszystko, co musisz zrobić, to załączyć przełącznik -lfl na koniec
SHROBJ i XMPOBJ w pliku Makefile. Jest to potrzebne do
dołączenia biblioteki flex, co nie jest standardowo zrobione. Dalej
postępuj zgodnie z instrukcją instalacji. I nie zapomnij, żeby mieć zainstalowane
XView i rozszerzenia SlingShot, jeżeli chcesz skompilować xmp
TiMidity
Niektórzy ludzie polecają ten eksperymentalny program z powodu dobrej
jakości dźwięku (co jest prawdą, brzmi znacznie lepiej niż mp na Sound
Blaster'rze 16, jednak nie będzie brzmiał o wiele lepiej na karcie z syntezą
wavetable, jak np. GUS). Jednakże jego problemem jest duże obciążanie procesora.
Odgrywa MIDI przez skonwertowanie go do WAV i odtworzenie WAV (możesz także
skonwertować MIDI do WAV bez odtwarzania). To tłumaczy obciążanie CPU.
Ma także opcjonalny interfejs ncurses, SLang, Tcl/Tk lub Motif.
Potrzebujesz plików z instrumentami Gravis'a Ultrasound do używania tego programu.
Zobacz FAQ załączony z TiMidity.
Autorem jest Tuukka Toivonen (tt@cgs.fi).
Najnowsza wersja TiMidity znajduje się na
stronie domowej TiMidity.
Ta strona zawiera też odnośnik do małej biblioteki instrumenów GUS'a.
playmidi
To jest odtwarzacz MIDI obsługujących syntezę FM, GUS'a i zewnętrzny interfejs MIDI.
[po odpowiednim "załataniu" także AWE32/64 - przyp. tłum.] Uruchamia się szybciej
niż inne odtwarzacze MIDI. Może także odgrywać pliki Creative Music Files, pliki
Microsoft RIFF i duże archiwa MIDI z gier takich jak Ultima 7.
Posiada interfejs X i SVGA. Posiada także opcję śledzenia nut na każdym kanale
i zegar odtwarzania (dołączony automatycznie z xplaymidi i
splaymidi).
Powinieneś napisać coś takiego:
$ splaymidi foo.mid; stty sane
jeżeli chcesz używać interfejsu SVGA, jednak nie przywraca on trybu tty poprawnie.
Tryb SVGA może być usunięty w bliskiej przyłości.
Ten program był napisany przez Nathan'a Laredo (laredo@gnu org lub
laredo@ix.netcom.com). Znajduje się na
anonimowym ftp
- sunsite.unc.edu w katalogu /pub/Linux/apps/sound/players/playmidi-2.3.tar.gz.
2.2 Moduły
Moduły (w muzyce komputerowej) to pliki z muzyką cyfrową, stworzone ze zbioru
próbek (sampli) i informacji sekwencerowych, mówiących odgrywarce kiedy odtworzyć
jaką próbkę (instrument) na jakiej ścieżce i z jaką wysokością, opcjonalnie
wytwarzając efekt, taki jak np. vibrato.
Ma zaletę nad MIDI - może zawierać prawie każdy rodzaj dźwięku (łącznie z głosem
ludzkim). Po drugie, brzmi prawie tak samo na każdej platformie, ponieważ próbki
są w module. Wadą jest, że moduły mają znacznie większy od MIDI rozmiar, a także
to, że nie ma prawdziwego standardowego formatu (jedynym ,,prawdziwym'' jest
ProTracker, z którym wiele modułów nie jest kompatybilnych). Pochodzi z Amigi.
Najczęściej spotykany format to .mod. Jest wiele rozszerzeń, zależenie
od formatu.
tracker
Ten bardzo elastyczny program (został napisany na wiele platform) odtwarza
moduły muzyczne Soundtracker'a i Protracker'a. Używa wyjścia stereofonicznego
16-bitowego, jakość uważam za bardzo dobrą. Jeżeli potrzebujesz prostego
sposobu na zredukowanie obciążenia procesora, użyj opcji -mono.
To jest program "giftware" (cytując autora). Jest nim Marc Espie
(Marc.Espie@ens.fr).
Wersja z plikiem Makefile dostosowanym pod Linuxa może być sciągnięta z
anonimowego ftp
z sunsite.unc.edu z katalogu /pub/Linux/apps/sound/players/tracker-4.3-linux.tar.gz
gmod
Gmod to odtwarzacz modułów muzycznych dla Gravisa. Obsługiwane formaty to
4/6/8 kanałowy MOD,
8 kanałowy 669, MultiTracker (MTM), UltraTracker (ULT), FastTracker (XM)
i ScreamTracker III (S3M).
Gmod wymaga wersji 3.0 lub późniejszej sterownika dźwięku. Oraz, oczywiście,
GUS'a. Możliwe, że będziesz musiał zmodyfikować jądro żeby kontrola głośności
działała tak, jak sobie tego życzysz.
Gmod posiada interfejs X'owy. Używa bibliotek QT (wersja 0.99 lub wyższa).
Sprawdź
stronę domową QT, żeby
uzyskać informacje o QT.
Program może być darmowo rozpowszechniany. Był początkowo napisany przez Hannu
Savolainen'a, a teraz jest nadzorowany przez Andrew J. Robinson'a
(robinson@cnj.digex.net).
Można go ściągnąć z
anonimowego FTP z sunsite.unc.edu
(katalog /pub/Linux/apps/sound/players/gmod-3.1.tar.gz.
MikMod
Ten podręczny odtwarzacz modułów odtwarza formaty XM, ULT, STM, S3M,
MTM, MOD i UNI. (Format UNI jest wewnętrznym formatem używanym przez MikMod.)
Posiada obsługę spakowanych (zipped) plików z modułami. Używa jakości 16bit
stereo. Użyj opcji -m (m jak mono) jeżeli potrzebujesz prostego
sposobu obniżenia obciążenia procesora.
Wersja unixowa może używać bądź to ncurses, bądź to Tcl/Tk jako swój
interferjs użytkownika. Może być także użyta jako biblioteka, a nie tylko
niezależny program.
MikMod był początkowo napisany przez Jean-Paul Mikkers'a (mikmak@via.nl). Teraz jest nadzorowany przez Jake'a Stine'a (dracoirs@epix.net).
Jest to shareware, które musi być zarejestrowane, jeżeli chcesz używać je
komercyjnie. Potrzebne jest też zezwolenie na dystrybucję komercyjną
(niekomercyjne rozpowszechnianie nie wymaga zezwolenia).
Program można znaleźć na
stronie domowej MikMod.
xmp
Ten odtwarzacz modułów (nie mylić z xmp Adagia) może odtwarzać
moduły MOD, S3M, STM, 669 i XM (inne formaty są też obsługiwane, ale ciągle
eksperymentalnie lub niecałkowicie) na kartach z syntezą WaveTable
(GUS albo SoundBlaster AWE 32) i na systemach z SoftOSS (sterownik miksujący
programowo). W bardzo bliskiej przyszłości zwykły DSP będzie też obsługiwany.
Wersja pod X jest też dostępna.
Program jest napisany przez Claudio Matsuoka'ę (claudio@brasil.enemy.org) i H. Carraro Jr.
Znajduje się na
stronie domowej xmp
s3mod
S3mod odtwarza 4/6/8 ścieżkowe moduły MOD i Scream Tracker 3. Używa
standardowo jakości 8 bit mono, 22000Hz. Użyj opcji -s, żeby włączyć
stereo, -b, żeby włączyć jakość 16 bitową i -f, żeby
ustawić częstotliwość. Jednakże jakość dźwięku jest gorsza od tracker'a
(szumy), więc polecałbym tracker'a zamiast s3mod do
odtwarzania zwykłych plików MOD (chyba, że masz maszynę o małej mocy).
S3mod obciąża procesor znacznie mniej niż tracker.
Prawa autorskie należą do Daniela Marks'a i David'a Jeske'a
(jeske@uiuc.edu), ale możesz zrobić z tym co chcesz (poza
twierdzeniem, że to ty go napisałeś).
Można go zdobyć przez
anonimowe FTP z sunsite.unc.edu (katalog
/pub/Linux/apps/sound/players/s3mod-v1.09.tar.gz.
mod
Ten program (wersja beta) odtwarza MOD'y (15/31 instrumentowe, do
32 głosów), MTM'y, ULT'y i S3M'y na Gravisie Ultrasound. Może też używać
spakowane moduły, jeżeli masz gzip'a, lharc'a,
unzip'a i unarj'a. Nie potrafi odtwarzać modułów spakowanych
Powerpacker'em lub modułów spakowanych niektórymi programami do komponowania na
Amigę (sygnatura "PACK").
Program wymaga wersji 3.0 sterownika dźwięku. Nie będzie działać
z wersją 2.90-2 lub wcześniejszą. Interfejs tekstowy wymaga ncurses.
Jest także załączony interfejs X'owy, który używa Tcl/Tk.
Mod jest napisany przez Mikael'a Nordqvist'a
(mech@df.lth.se lub d91mn@efd.lth.se).
Można go znaleźć na
anonimowym FTP
z sunsite.unc.edu z /pub/Linux/apps/sound/players/mod-v0.81.tgz.
nspmod
Nspmod to odtwarzacz modułów w wersji alpha, który może odtwarzać
moduły MTM, S3M i MOD. Jest przeznaczony dla kart dźwiękowych bez DSP
(nie mylić z tym co Creative Labs nazywa DSP). Obciąża procesor porównywalnie
z tracker'em
Posiada możliwość zapętlenia modułów, jeżeli są tak zaprogramowane. Ilość
zapętleń może być limitowana opcją -l. Używa tylko wyjścia 8 bitowego.
(jeżeli chodzi o wersję 0.1).
Został napisany przez Toru Egashira'ę (toru@jms.jeton.or.jp).
Można go ściągnąć z
anonimowego FTP
(sunsite.unc.edu, katalog /pub/Linux/apps/sound/players/nspmod-0.1.tar.gz).
yampmod
Ten program (wersja alfa) był zaprojektowany do odtwarzania 4
kanałowych modułów, minimalnie obciążając procesor. Nie był
zaprojektowany do odtwarzania dźwięku wysokiej jakości. A więc jedyna jakość
to 22kHz, mono. Dźwięk nie jest też tak czysty jak powinien, co wyjaśnia status
alfa programu.
Został napisany przez David'a Groves'a (djg@djghome.demon.co.uk).
Można go znaleźć na
anonimowym FTP
z sunsite.unc.edu w katalogu
/pub/Linux/apps/sound/players/yampmod-0.1.tar.gz.
2.3 MPEG audio
MPEG jest standardem specyfikującym kodowanie wideo i towarzszącego mu dźwięku
w celu cyfrowej archiwizacji. MPEG jest zazwyczaj kojarzony z obrazem, ale
część dźwiękowa może być używana oddzielnie. Część dźwiękowa standardu
definiuje trzy powłoki (ang. layers), Layer I, II i III. Odtwarzacze mogące
dekodować wyższe powłoki mogą także dekodować niższe. (np. odtwarzacze
Layer III mogą odtwarzać pliki Layer II). Pliki audio MPEG Layer I mają
zwykle rozszerzenie .mpg (więc jeżeli plik z tym rozszerzeniem nie
może być odtworzony odtwarzaczem MPEG wideo, to jest to prawdopodobnie strumień
audio), Layer II zazwyczaj ma rozszerzenie .mp2, a Layer III
.mp3. Kompresja dźwięku nie jest najgorsza. Dwumegabajtowy Layer II
zajmie 25 megabajtów jako czysty PCM o tej samej jakości
mpg123
Ten program (wersja beta) jest wydajnym odtwarzaczem MPEG audio,
z obsługą powłok I, II i III. Jest oparty na kodzie z wielu źródeł.
Może odtwarzać w czasie rzeczywistym strumień przez HTTP (tzn. można
odtwarzać strumień MPEG bezpośrednio przez World Wide Web).
Głównym autorem jest Michael Hipp
(Michael.Hipp@student.uni-tuebingen.de). Może być używany i
rozpowszechniany w niezmodyfikowanej formie darmowo, przeznaczony do
zadań niekomercyjnych. Załączenie w kolekcji darmowego oprogramowania
(takiej jak CD-ROM'y lub serwery FTP) jest dozwolone.
Najnowszą wersję można znaleźć na
stronie mpg123 Oliver'a Fromme'a.
maplay 1.2
Ten odtwarzacz MPEG audio obsługuje tylko Layer I i II. Obsługuje 16 bitowe
karty dźwiękowe pod Linuxem.
Złużywa dosyć dużo czasu procesora, ok. 55% na Pentium 60MHz. Dźwięk jest
niemożliwy do słuchania na 486 66MHz, ponieważ procesor nie może nadążyć
z dźwiękiem. Jeżeli to ci się zdarzy, spróbuj odtwarzać tylko jedną stronę
strumienia audio (opcją -l lub -r), zamiast domyślnego
stereo.
Mała zmiana w jednym z plików może być potrzebna do skompilowania programu.
Musisz dodać taką linię na początek pliku configuration.sh.
#! /bin/sh
Autorem jest Tobias Bading (bading@cs.tu-berlin.de).
maplay 1.2 można znaleźć na
anonimowym FTP na
ftp.cs.tu-berlin.de z /pub/multimedia/maplay1.2/maplay1_2.tar
maplay 1.3b
To jest nieoficjalna modyfikacji (tzn. nie przez oryginalnego autora)
maplay'a 1.2, może działać z o wiele mniejszym obciążeniem procesora.
Udaje się jej to głównie przez używanie wyjścia u-law na innych platformach
poza SPARC'em. Zauważ, że używa wyjścia u-law domyślnie, więc jakość dźwięku
jest niższa.
Modyfikacje były przeprowadzone przez Orlando Andico
(orly@gibson.eee.upd.edu.ph).
Program można znaleźć na
anonimowym FTP
na sunsite.unc.edu z katalogu
/pub/Linux/apps/sound/players/maplay-1.3b-Linux.tar.gz.
maplay3
To jest kolejny krewny maplay'a 1.2. Dodaje obsługę formatu MPEG
Layer 3. W tej chwili ma pewne błędy w odtwarzaniu (możesz słyszeć
skrzeczące odgłosy). Możesz pobawić się opcjami żeby to zmienić.
Modyfikacje były przeprowadzone przez Timo Jantunen'a
(timo.jantunen@hut.fi lub jeti@cc.hut.fi. Mówi, że może
być używany darmowo, ale zarabianie nim pieniędzy nie jest dozwolone.
Jakkolwiek nie jestem całkowicie przekonany o poprawności praw autorskich,
ponieważ oryginalny maplay jest na Licencji Publicznej GNU
(GNU General Public License), która nie pozwala zmodyfikowanym pracom mieć
innych praw autorskich.
Program może być znaleziony na
anonimowym FTP
na sunsite.unc.edu z katalogu /pub/Linux/apps/sound/players/maplay3.tar.gz.
splay
Ten odtwarzacz (wersja beta) jest kolejnym krewnym
maplay'a 1.2 (właściwie jest krewnym maplay'a 1.2+,
który jest Windows'owym krewnym maplay'a 1.2).
Dodaje obsługę strumieni MPEG Layer 3. Może też odtwarzać pliki WAV.
Może także odtwarzać strumienie audio przez połączenie HTTP.
Inna opcja splay'a, to możliwość używania go jako biblioteki
(na licencji GPL), więc może być używany w innych programach. Próbuje też
polepszyć wydajność przez używanie grupowania (threading) (potrzebujesz
pthread, żeby używać tą opcję) i trochę assemblera w kodzie.
Splay używa interfejsu linii komend i opcjonalnego X'owego (który
używa QT).
Jeżeli nie działa po kompilacji (np. zwraca błąd segmentacji), spróbuj
skompilować go jeszcze raz bez grupowania (threading).
Autorem jest Jung Woo-jae (jwj95@eve.kaist.ac.kr).
Program można znaleźć na
stronie domowej splay'a.
Sajber Jukebox
Ten program jest odtwarzaczem MPEG z graficznym interfejsem użytkownika.
Jest oparty na splay'u, więc obsługuje powłoki MPEG do III.
Może też odtwarzać strumienie MPEG w czasie rzeczywistym, ze strumieniem
podawanym przez HTTP. Jest także łatwy do skonfigurowania.
Używa bibliotek
QT toolkit
(w wersji 1.2<). Używa też
LinuxThreads
(załączone binaria działają tylko z wersją 0.5).
Autorem jest Joel Lindholm (wizball@kewl.campus.luth.se).
Najnowszą wersję można znaleźć na
anonimowym FTP
na kewl.campus.luth.se z katalogu /pub/jukebox.
amp
Ten odtwarzacz MPEG audio (wersja beta) obsługuje tylko MPEG
Layer 3. Może odtwarzać bezpośrednio do karty dźwiękowej i do plików
PCM lub WAV. Daje też dosyć duży ładunek dla procesora (około 60% na
Pentium 133MHz).
Został napisany przez Tomislav'a Uzelac'a (tuzelac@rasip.fer.hr).
Może być darmowo używany i rozpowszechniany, dotąd, dokąd nie będzie
sprzedawany komercyjnie bez zezwolenia (załączanie go na CD-ROM'ach z
darmowym oprogramowaniem jest dozwolone).
Można go znaleźć na
anonimowym FTP
na ftp.rasip.fer.hr z katalogu /pub/mpeg/amp-0.7.3.tgz.
XAudio
Ta biblioteka (alfa) została napisana jako szybka implementacja
bibliotek dekodowania MPEG audio, do użycia w różnych interfejsach GUI.
Obsługuje powłoki I, II i III. Może losowo pobierać dane ze strumieni.
Interfejs linii komend jest załączony. Wersja Motif (Lesstif) jest też
załączona w wersji pod Linuxa.
Autorzy to Gilles Boccon-Gibod, Alain Jobart i inni.
Wykończenia (front-ends) biblioteki mogą być darmowo pobierane.
Biblioteka sama w sobie musi być licencjonowana (dostępna jest licencja
źródłowa i binarna).
Wykończenia tej biblioteki mogą być ściągnięte ze
strony domowej XAudio.
Layer 3 Shareware Encoder/Decoder
Właściwie jest to konwerter, który przekształca strumienie audio MPEG Layer 3
w WAV, AIFF, SND, AIFC lub po prostu czyste PCM. Wersja pod Linuxa nie
kieruje wyjścia bezpośrednio do karty dźwiękowej. Trzeba najpierw skonwertować
plik do innego formatu.
Jakkolwiek, jeżeli spróbjesz odtworzyć skonwertowany plik używając
sox'a, otrzymasz prawdopodobnie tylko szum, poniewać porządek słów
(to taki rodzaj "liczby" komputerowej - przyp. Tygrys) w próbkach PCM nie
jest poprawny (przynajmniej na platformach Intelowych). Musisz odpalić
sox'a z opcją -x, żeby pozbyć się tego problemu. Ale
niektóre odtwarzacze nie muszą być zawiadomione, że porządek słów jest zły,
więc nie musisz się o to martwić.
Jeżeli masz naprawdę szybki komputer (prawdopodobnie co najmniej Pentium
100MHz), możesz spróbować odtwoezyć strumienie MPEG Layer 3 bezpośrednio,
bez potrzeby skonwertowania dźwięku na inny format, tak jak w następującym
przykładzie (przyjmuje on, że używasz sox'a i odtwarzasz
próbkę 44.1kHz stereo).
$ l3dec foo.mp3 -sto | play -t raw -x -u -w -c 2 -r 44100 -
Liczba po -r jest częstotliwością próbkowania strumienia audio,
a liczba po -c zależy od tego, czy to ma być mono, stereo, czy nawet
kwadro. Jeżeli to wygląda zbyt skomplikowanie, możesz użyć skryptu lub aliasu.
To jest shareware z prawami autorskimi Fraunhofer-IIS. Wersja demo
pod Linuxa na systemy x86 może być ściągnięta z
anonimowego FTP
na ftp.fhg.de z katalogu /pub/layer3. Wersja demo konwertuje
tylko strumienie Layer 3.
2.4 WAV
Cytując ze strony podręcznika man sox'a:
Wydają się być podobne do plików IFF, ale nie takie same.
Są oryginalnym formatem dźwiękowym Windows 3.1. Oczywiście
Windows 3.1 jest tak ważne dla przemysłu komputerowego,
że musiało mieć własny format plików dzwiękowych.
Mają zazwyczaj rozszerzenie .wav
wavplay
Ten program obsługuje odtwarzanie i nagrywanie w formacie WAV.
Używa blokowania (locking), więc tylko jeden dźwięk może być odtwarzany w danej
chwili. Jego możliwości blokowania mogą też być użyte oddzielnie od jego
możliwości odtwarzania dźwięku.
Jako dodatek do interfejsu linii komend, ma także interfejs Motif, który
może być używany z Lesstif'em.
Był początkowo napisany przez Andre Fuechsel'a
(af1@irz.inf.tu-dresden.de), ale został całkowicie przepisany przez
Warren'a W. Gay'a (bx249@freenet.toronto.on.ca lub
wwg@ica.net).
Można go znaleźć na
anonimowym FTP
z sunsite.unc.edu w katalogu /pub/Linux/apps/sound/players/wavplay-1.0.tar.gz.
2.5 Inne rzeczy
Ta sekcja opisuje rzeczy, które odtwarzają formaty dźwięku nie zasługujące
na oddzielną sekcję (np. formaty mające tylko jeden odtwarzacz), lub
odtwarzacze obsługujące kilka formatów.
sox
Ten program jest właściwie konwerterem, zamienia jednen format dźwięku na
drugi. Jakkolwiek, niektóre wersje sox'a, przywoływane komendą
play, odtwarzają dźwięk. (Aplikacja play w Sound HOWTO
prawdopodobnie odnosi się do tego). Obsługuje czyste (bez nagłówka) binaria
i dane tekstowe , Pliki Dźwiękowe IRCAM, .voc Sound Blaster'a,
.au SPARC'a (z nagłówkiem), HCOM Mac'a .voc PC/DOS,
formaty Sndtool'a i Sounder'a, .snd NeXT'ta RIFF/WAV Windows 3.1,
.smp Turtle Beach'a, CD-R i formaty AIFF i 8SVX Apple/SGI.
Gdzieś w kernelu 1.3.6x, musisz dokonać małej zmiany w jednym pliku, żeby
dźwięk był odtwarzany bezpośrednio. Musisz zmienić linię 179 w pliku
sbdsp.c z
if (abuf_size < 4096 || abuf_size > 65536) {
na
if (abuf_size < 1 || abuf_size > 65536) {
Ale może nie będziesz musiał tego robić. Jednak zrobienie tego nic nie
zepsuje.
Został napisany przez wielu ludzi i może być użyty w każdym przeznaczeniu.
Można go znaleźć na
anonimowym FTP
na sunsite.unc.edu w katalogu
/pub/Linux/apps/sound/convert/Lsox-linux.tar.gz.
Nowsza wersja, której autorem jest Chris Bagwell
(cbagwell@sprynet.com) (oparta na najnowszej wesji gamma oryginalnego
sox'a, z załączoną powyższą poprawką) może być ściągnięta przez
anonimowe FTP
na sunsite.unc.edu z katalogu
/pub/Linux/apps/sound/convert/sox-11gamma-cb3.tar.gz.
bplay
Ten program (wersja beta) odtwarza czyste audio, WAV i VOC. Może też
nagrywać takie pliki. Używa różnych technik do osiągnięcia najwyższej możliwej
prędkości, a więc może chodzić przystępnie nawet na wolnych maszynach.
Jedna z tych technik wymaga, żeby zainstalowane programy miały identyfikator
setuid root. Jeżeli koniecznie chcesz tego używać, możesz użyć paczki Debiana,
której autorem jest Ian Jackson (ijackson@gnu.org), która wyłącza
funkcję potrzebującą bitu setuid.
Autorem jest David Monro (davidm@gh.cs.usyd.edu.au).
Można go znaleźć na
anonimowym FTP
na sunsite.unc.edu w katalogu
/pub/Linux/apps/sound/players/bplay-0.96.tar.gz.
SIDPLAY
Ten program emuluje układ SID (Sound Interface Device, MOS 6581) i MPU
(Micro Processor Unit, MOS 6510) Commodore'a 64. Jest więc w stanie
załadować i uruchomić programy w kodzie maszynowym C64 wydające dźwięki lub
muzykę. Głównie są to fragmenty kodu i danych, które zostały wyciągnięte
(ripped) z gier i programów demonstracyjnych i przesłane bezpośrednio z C64.
Standardowo używa linii komend. Są też interfejsy Tk i QT, dostępne oddzielnie
z głównej paczki.
Sidplay jest nadzorowany przez Michael'a Schwendt'a
(sidplay@geocities.com).
Jest dostępny ze
strony domowej SIDPLAY'a.
RealAudio Player
Pozwala ci słuchać dźwięku, zapisanego w odpowiednim formacie, w czasie
rzeczywistym przez Internet bez pobierania całego pliku. Może być użyty
oddzielnie, ale tak naprawdę jest przeznaczony do użytku z przeglądarką
web (najlepiej obsługiwane są Mosaic i Netscape). Nie może być używany
bez X'ów (nie możesz używać go z Lynxem na konsoli tekstowej).
Autorem jest firma Progressive Networks, Inc. Program nie może być
rozpowszechniany, modyfikowany itp. Zajrzyj do licencji, żeby uzyskać
dokładne informacje o tym, co możesz robić. Program można ściągnąć
ze
strony domowej RealAudio.
cat
Ktoś może pomyśleć co cat, czasami nadużywane narzędzie wypisujące,
może mieć wspólnego z odgrywaniem dźwięku. Pokażę jak można to zużytkować na
przykładzie.
$ cat sample.voc > /dev/dsp
$ cat sample.wav > /dev/dsp
$ cat sample.au > /dev/audio
Wykonanie cat'a pliku .au na urządzenie /dev/audio
będzie zwykle działać, a jeżeli będziesz miał szczęście, porządek bajtów
w pliku będzie odpowiedni do twojej platformy itp., uda się nawet "zcatowanie"
pliku PCM (takiego jak /dev/audio czy /dev/dsp) na
urządzenie /dev/dsp.
To wcale nie jest bezużyteczny sposób wykorzystania cat'a.
Może być przydatny np. jeżeli masz plik dźwiękowy nie rozpoznawany przez twoje
programy, a wiesz, że używa próbek PCM, możesz mieć przybliżone wyobrażenie
tego, jak plik brzmi (jeżeli będziesz miał szczęście).
(kurczę, nie pisze skąd to wziąć ;-) - przyp. Tygrys)
3. Inne przydatne narzędzia dźwiękowe
Ta sekcja nie ma bezpośrednio nic wspólnego z odtwarzaniem plików dźwiękowych.
Jest to raczej kolekcja narzędzi, które mogą być przydatne.
3.1 volume
To jest prosty interfejs linii komend, który kontroluje głośność (co innego
mogłoby to być?). Ma też oddzielny program z interfejsem Tcl/Tk załączonym
w paczce, służącym do kontrolowania głośności i odtwarzania plików .au.
Jest też załączony bardzo prosty odtwarzacz CD Tcl/Tk.
Jest to Freeware napisany przez Sam'a Lantinga'ę
(slouken@cs.ucdavis.edu).
Można go znaleźć na
anonimowym FTP
na sunsite.unc.edu w katalogu
/pub/Linux/apps/sound/soundcard/volume-2.1.tar.gz.
3.2 Sound Studio
To jest aplikacja Tcl/Tk zapewniająca odtwarzanie, nagrywanie i edycję
cyfrowego dźwięku używając sox'a. Zawiera sox'a w swojej
dystrybucji, żeby uniknąć problemów z kompatybilnością.
Program został napisany przez Paul'a Sharpe'a i N. J. Bailey'a
(N.J.Bailey@leeds.ac.uk).
Może być darmowo używane i rozpowszechniane, jeżeli zostanie wysłana
kartka pocztowa. (greetsy i widoczek dla autorów :-) - przyp. Tygrys)
Można go znaleźć na
stronie domowej Sound Studio.
3.3 Tickle Music
Ta (wersja beta, Tcl/Tk) przeglądarka plików muzycznych pozwala
odtwarzać różne formaty dźwięku dotąd, dokąd odpowiednie programy odtwarzające
są zainstalowane na twoim systemie. Standardowo moduły odtwarza gmod,
a pliki MIDI mp (możesz zmienić źródła, żeby używać innych
programów).
Został napisany przez Shannon Hendrix
(shendrix@pcs.cnu.edu lub shendrix@escape.widomaker.com).
Można go ściągnąć przez
anonimowe FTP
na sunsite.unc.edu z katalogu
/pub/Linux/apps/sound/players/tmusic-1.0.tar.gz.
4. Odnośniki
Dokumentacja załączona z aplikacjami opisanymi w tym dokumencie
Linux Sound HOWTO. Można je znaleźć w
Linux Documentation Project.
(Polska wersja znajduje się w
Projekcie JTZ.)
Strony MIDI i dźwięku w Linuxie
MPEG Audio Layer 3 FAQ
Programmer's Guide to OSS
Strona domowa SoX
5. Od tłumacza
Zdaję sobie sprawę, że jest tu mnóstwo mniejszych lub większych błędów.
Jest to dopiero wersja 1.0 - vis major, błędy muszą być... :-)
Jeżeli jakieś znajdziesz, daj mi znać.
Prawa autorskie tłumaczenia - (C)1998 tygrys@fidonet.org.pl.
Wyszukiwarka
Podobne podstrony:
sound playing howto plsound playing howto pl 4Sound Playing HOWTO plsound playing howto pl 5sound playing howto pl 2sound playing howto pl 3sound playing howto pl 1sound playing howto 1 763flvuug7njx7rzommfomyfervsbwv76uzb6sa 763flvuug7njx7rzommfomyfervsbwv76uzb6ssound playing howto 3 35biik4xajo4rudone7wh4vbkdlqsapjynl72xy 35biik4xajo4rudone7wh4vbkdlqsapjynl72xsound playing howto 4pnvhs6n73xtxtvaeve26ai2milaxt4jlabfavy 4pnvhs6n73xtxtvaeve26ai2milaxt4jlabfavysound howto pl 8Sound HOWTO plsound howto pl 6sound howto pl 3sound howto pl 4sound howto pl 7sound howto plsound howto pl 5więcej podobnych podstron