public class Zvuk extends Object
Táto trieda dovoľuje programátorovi podrobnejšie pracovať so zvukom,
ktorý prečítal pomocou metódy čítajZvuk
.
Príklad:
Zvuk
môjZvuk =Svet
.čítajZvuk
("zvuk.wav"
); môjZvuk.prehraj
();// …
Poznámka: Programovací rámec obsahuje aj
nástroje na generovanie zvukov (resp. tónov). Ich implementácia je
realizovaná v rámci skupiny podporných tried rámca, ku ktorým nie je
priamo vyhotovená dokumentácia, ale základ je sprístupnený
prostredníctvom skupiny metód v triede Svet
. Príklady na
generovanie zvukov (resp. tónov) sa nachádzajú v opisoch metód Svet.otvorSúborNaUloženieTónu(názov, prepísať)
a Svet.generátorTónov()
.
Svet.priečinokZvukov(String)
,
Svet.priečinokZvukov()
,
Svet.čítajZvuky(Object[])
,
Svet.čítajZvuky(String[])
,
Svet.čítajZvuk(String)
,
Svet.zvuk(String)
,
Svet.zvukNaPozadí(String)
,
Svet.zastavZvuky(Object[])
,
Svet.hlasitosťPreZvuky(double, Object[])
,
Svet.váhaPreZvuky(double, Object[])
,
Svet.zastavZvuky(String[])
,
Svet.hlasitosťPreZvuky(double, String[])
,
Svet.váhaPreZvuky(double, String[])
Modifikátor a typ | Metóda a opis |
---|---|
static Zvuk |
citaj(String súbor)
Alias pre
čítaj . |
static Zvuk |
citaj(String súbor,
boolean unikátny)
Alias pre
čítaj . |
void |
cyklickyOpakovat()
Alias pre
prehrávaťDookola . |
void |
cyklickyOpakovať()
Alias pre
prehrávaťDookola . |
static Zvuk |
čítaj(String súbor)
Prečíta a uloží do vnútornej pamäte programovacieho rámca
(metaforicky sveta) zadaný zvuk zo súboru a vráti ho ako inštanciu
tejto triedy (
Zvuk ). |
static Zvuk |
čítaj(String súbor,
boolean unikátny)
Prečíta a uloží do vnútornej pamäte programovacieho rámca
(metaforicky sveta) zadaný zvuk zo súboru a vráti ho ako inštanciu
tejto triedy (
Zvuk ). |
double |
hlasitost()
Alias pre
hlasitosť . |
double |
hlasitosť()
|
void |
hlasitost(double miera)
Alias pre
hlasitosť . |
void |
hlasitosť(double miera)
|
boolean |
hlasitostNepodporovana()
Alias pre
hlasitosťNepodporovaná . |
boolean |
hlasitosťNepodporovaná()
Zistí, či je (resp. nie je) týmto objektom podporovaná schopnosť
zmeny hlasitosti.
|
void |
opakovatDookola()
Alias pre
prehrávaťDookola . |
void |
opakovaťDookola()
Alias pre
prehrávaťDookola . |
void |
pauza()
Alias pre
pozastav . |
void |
pokracuj()
Alias pre
pokračuj . |
void |
pokračuj()
Spustí pozastavené prehrávanie zvuku.
|
double |
poloha()
Zistí polohu prehrávania zvuku v sekundách (vzhľadom od
začiatku).
|
void |
poloha(double poloha)
Nastaví polohu prehrávania zvuku v sekundách (vzhľadom od
začiatku).
|
void |
pozastav()
Pozastaví prehrávanie zvuku.
|
static Zvuk |
precitaj(String súbor)
Alias pre
čítaj . |
static Zvuk |
precitaj(String súbor,
boolean unikátny)
Alias pre
čítaj . |
static Zvuk |
prečítaj(String súbor)
Alias pre
čítaj . |
static Zvuk |
prečítaj(String súbor,
boolean unikátny)
Alias pre
čítaj . |
void |
prehraj()
Spustí prehrávanie zvuku.
|
boolean |
prehravaSa()
Alias pre
prehrávaSa . |
boolean |
prehrávaSa()
Zistí, či sa zvuk práve prehráva alebo nie.
|
void |
prehravatDookola()
Alias pre
prehrávaťDookola . |
void |
prehrávaťDookola()
Spustí prehrávanie zvuku v nekonečnom cykle.
|
static String |
priecinokZvukov()
Alias pre
priečinokZvukov . |
static void |
priecinokZvukov(String priečinok)
Alias pre
priečinokZvukov . |
static String |
priečinokZvukov()
Vráti reťazec s aktuálnym priečinkom, z ktorého sú zvuky čítané.
|
static void |
priečinokZvukov(String priečinok)
Ak sú všetky zvuky uložené v spoločnom priečinku, môžeme pre
nich touto metódou nastaviť zdrojový priečinok čítania.
|
double |
trvanie()
Zistí trvanie zvuku v sekundách.
|
double |
vaha()
Alias pre
váha . |
double |
váha()
|
void |
vaha(double miera)
Alias pre
váha . |
void |
váha(double miera)
|
boolean |
vahaNepodporovana()
Alias pre
váhaNepodporovaná . |
boolean |
váhaNepodporovaná()
Zistí, či je (resp. nie je) týmto objektom podporovaná schopnosť
zmeny stereováhy (to jest určenie vyváženia prehrávania v ľavom
alebo pravom kanáli).
|
void |
zastav()
Zastaví prehrávanie zvuku.
|
public static void priečinokZvukov(String priečinok)
Ak sú všetky zvuky uložené v spoločnom priečinku, môžeme pre
nich touto metódou nastaviť zdrojový priečinok čítania.
Priečinok by sa mal nachádzať v hlavnom priečinku projektu alebo by
k nemu mala viesť systémovo nezávislá relatívna cesta. Zadaním
prázdneho reťazca alebo hodnoty null
používanie
priečinka zrušíme.
priečinok
– názov priečinka, relatívna cesta, prípadne
prázdny reťazec alebo null
Svet.priečinokZvukov()
,
Zvuk
public static void priecinokZvukov(String priečinok)
Alias pre priečinokZvukov
.
public static String priečinokZvukov()
Vráti reťazec s aktuálnym priečinkom, z ktorého sú zvuky čítané.
Reťazec je obohatený o oddeľovací znak priečinkov java.io.File.separatorChar
(/
alebo
\
– záleží na type operačného systému), ktorý automaticky
pridáva metóda priečinokZvukov(priečinok)
. Rovnako všetky oddeľovacie znaky
priečinkov v relatívnej ceste sú nahradené podľa typu operačného
systému.
Svet.priečinokZvukov(String)
,
čítaj(String)
,
čítaj(String, boolean)
public static String priecinokZvukov()
Alias pre priečinokZvukov
.
public static Zvuk čítaj(String súbor)
Prečíta a uloží do vnútornej pamäte programovacieho rámca
(metaforicky sveta) zadaný zvuk zo súboru a vráti ho ako inštanciu
tejto triedy (Zvuk
). (Zvuk nie je prehraný.) Táto
metóda funguje rovnako ako metóda sveta Svet.čítajZvuk(súbor)
(v jej opise sa dá
nájsť o niečo viac informácií – najmä odkazy na súvisiace
metódy sveta).
Táto metóda funguje tak, že podľa potreby vytvára nové unikátne inštancie zvuku identifikovaného názvom súboru. Nová inštancia vznikne vždy, ak sa vo vnútornej pamäti sveta nenájde taká inštancia určeného zvuku, ktorá práve nie je prehrávaná (to znamená, že metóda musí nájsť zvuk, ktorý je ticho). Takto fungujú všetky metódy sveta pracujúce so zvukom. Ak by sa takto nesprávali, tak by vznikalo nežiaduce správanie – vždy pri pokuse o prehranie toho istého zvuku (identifikovaného názvom súboru) počas jeho prehrávania, by sa tento reštartoval. (Nebolo by možné prehrať sériu rovnakých zvukov, ktoré sa časovo prekrývajú (hoci niekedy len mierne). To by pôsobilo neprirodzene – každé reštartovanie zvuku by bolo počuteľné tak, ako keby sa zo zvuku zrazu časť „odsekla.“)
súbor
– názov súboru so zvukomZvuk
GRobotException
– ak súbor so zvukom nebol nájdenýčítaj(String, boolean)
,
Svet.priečinokZvukov(String)
,
Svet.čítajZvuk(String)
,
Svet.čítajZvuk(String, boolean)
public static Zvuk čítaj(String súbor, boolean unikátny)
Prečíta a uloží do vnútornej pamäte programovacieho rámca
(metaforicky sveta) zadaný zvuk zo súboru a vráti ho ako inštanciu
tejto triedy (Zvuk
). (Zvuk nie je prehraný.) Ak je
parameter unikátny
rovný false
, tak táto metóda
funguje rovnako ako metóda čítaj(súbor)
.
V prípade, že je parameter unikátny
rovný true
, tak táto metóda vždy vráti unikátny objekt zvuku,
čiže aj v prípade, že jestvuje aspoň jedna kópia tohto zvuku, ktorá
sa práve neprehráva.
Všetky kópie zvuku môžu byť v prípade potreby (napríklad ak sa
obsah zvukového súboru na disku zmenil) z vnútornej pamäte
odstránené metódou Svet.uvoľni(názovZdroja)
.
súbor
– názov súboru so zvukomunikátny
– určuje, či objekt vrátený touto metódou musí
byť unikátnyZvuk
GRobotException
– ak súbor so zvukom nebol nájdenýčítaj(String)
,
Svet.priečinokZvukov(String)
,
Svet.čítajZvuk(String)
,
Svet.čítajZvuk(String, boolean)
public void zastav()
Zastaví prehrávanie zvuku.
public void prehraj()
Spustí prehrávanie zvuku.
public void prehrávaťDookola()
Spustí prehrávanie zvuku v nekonečnom cykle.
public void prehravatDookola()
Alias pre prehrávaťDookola
.
public void opakovaťDookola()
Alias pre prehrávaťDookola
.
public void opakovatDookola()
Alias pre prehrávaťDookola
.
public void cyklickyOpakovať()
Alias pre prehrávaťDookola
.
public void cyklickyOpakovat()
Alias pre prehrávaťDookola
.
public void pozastav()
Pozastaví prehrávanie zvuku.
public void pauza()
Alias pre pozastav
.
public void pokračuj()
Spustí pozastavené prehrávanie zvuku.
public void pokracuj()
Alias pre pokračuj
.
public double trvanie()
Zistí trvanie zvuku v sekundách.
public void poloha(double poloha)
Nastaví polohu prehrávania zvuku v sekundách (vzhľadom od začiatku).
poloha
– poloha zvuku v sekundáchpublic double poloha()
Zistí polohu prehrávania zvuku v sekundách (vzhľadom od začiatku).
public boolean prehrávaSa()
Zistí, či sa zvuk práve prehráva alebo nie.
true
– zvuk sa prehráva;
false
– zvuk sa neprehrávapublic boolean prehravaSa()
Alias pre prehrávaSa
.
public boolean hlasitosťNepodporovaná()
Zistí, či je (resp. nie je) týmto objektom podporovaná schopnosť
zmeny hlasitosti. (Za normálnych okolností by metóda mala vracať
hodnotu false
. To znamená, že hlasitosť zvuku je
podporovaná.)
true
– vlastnosť nie je podporovaná;
false
– vlastnosť je podporovanápublic boolean hlasitostNepodporovana()
Alias pre hlasitosťNepodporovaná
.
public double hlasitosť()
Vráti aktuálnu mieru hlasitosti prehrávania tohto zvuku.
Príklad:
Zvuk
môjZvuk =Svet
.čítajZvuk
("zvuk.wav"
); môjZvuk.hlasitosť
(2.0
);Svet
.vypíšRiadok
("Hlasitosť "
+ (int
)(môjZvuk.hlasitosť
() *100
) +"%"
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
); môjZvuk.hlasitosť
(0.5
);Svet
.vypíšRiadok
("Hlasitosť "
+ (int
)(môjZvuk.hlasitosť
() *100
) +"%"
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
); môjZvuk.hlasitosť
(-1.0
);Svet
.vypíšRiadok
("Hlasitosť "
+ (int
)(môjZvuk.hlasitosť
() *100
) +"%"
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
);
0.0
; 100 % – 1.0
public double hlasitost()
Alias pre hlasitosť
.
public void hlasitosť(double miera)
Upraví mieru hlasitosti pri prehrávaní
tohto zvuku. Metóda prijíma reálne číslo vyjadrujúce mieru
hlasitosti v percentách, pričom 100 % zodpovedá hodnote
1.0
.
Príklad:
Zvuk
môjZvuk =Svet
.čítajZvuk
("zvuk.wav"
);Svet
.vypíšRiadok
("Hlasitosť 75%"
); môjZvuk.hlasitosť
(0.75
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
);Svet
.vypíšRiadok
("Hlasitosť 50%"
); môjZvuk.hlasitosť
(0.5
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
);Svet
.vypíšRiadok
("Hlasitosť 25%"
); môjZvuk.hlasitosť
(0.25
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
);
miera
– miera hlasitosti v percentách – 0 % zodpovedá hodnote
0.0
, 100 % hodnote 1.0
public void hlasitost(double miera)
Alias pre hlasitosť
.
public boolean váhaNepodporovaná()
Zistí, či je (resp. nie je) týmto objektom podporovaná schopnosť zmeny stereováhy (to jest určenie vyváženia prehrávania v ľavom alebo pravom kanáli).
true
– vlastnosť nie je podporovaná;
false
– vlastnosť je podporovanápublic boolean vahaNepodporovana()
Alias pre váhaNepodporovaná
.
public double váha()
-
1.0
(ľavý kanál)
po +
1.0
(pravý kanál) vyjadrujúce mieru
stereovyváženiapublic double vaha()
Alias pre váha
.
public void váha(double miera)
Upraví mieru stereovyváženia prehrávania
tohto zvuku vzhľadom na ľavý a pravý kanál. Metóda prijíma reálne
číslo vyjadrujúce mieru vyváženia v rozsahu od
-
1.0
(ľavý kanál) po
+
1.0
(pravý kanál).
Príklad:
Zvuk
môjZvuk =Svet
.čítajZvuk
("zvuk.wav"
);Svet
.vypíšRiadok
("Prehraj"
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
);Svet
.vypíšRiadok
("Vľavo 50%"
); môjZvuk.váha
(-0.5
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
);Svet
.vypíšRiadok
("Vpravo 50%"
); môjZvuk.váha
(0.5
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
);Svet
.vypíšRiadok
("Vľavo 100%"
); môjZvuk.váha
(-1.0
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
);Svet
.vypíšRiadok
("Vpravo 100%"
); môjZvuk.váha
(1.0
); môjZvuk.prehraj
();Svet
.čakaj
(1.0
); môjZvuk.váha
(0.0
);// na stred
miera
– miera stereovyváženia – reálne číslo od
-
1.0
(ľavý kanál) po
+
1.0
(pravý kanál)public void vaha(double miera)
Alias pre váha
.