Válí se ti projekty v šuplíku? Dostaň je mezi lidi a získej cool tričko a body na profi IT kurzy v soutěži ITnetwork summer 2017!
Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)

Diskuze: Export programu s hudbou

Java Java Export programu s hudbou

Aktivity (1)
Avatar
Vilém Zouhar
Redaktor
Avatar
Vilém Zouhar:17.8.2013 10:18

Potřeboval bych pomoct s jedním programem. Používám tuto metodu pro přehrávání zvuku:

void Prehraj() {
        try {
                Clip clip = AudioSystem.getClip();
                AudioInputStream inputStream = AudioSystem.getAudioInputStream(Hudba.class.getResourceAsStream("/cz/resources/medievalMusic1.wav"));
                clip.open(inputStream);
                clip.start();
                clip.setLoopPoints(0, 1);
        } catch (Exception e) {
                System.err.println(e.getMessage());
        }
}

Všechno krásně funguje, i přes debug/run v Eclipse. Ovšem jakmile to exportuji, tak program sice funguje, ovšem zvuk se neozývá. V čem tkví problém?

 
Odpovědět 17.8.2013 10:18
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Vilém Zouhar
David Čápka:17.8.2013 10:22

Asi nemáš ten zvuk ve složce s JARem.

Nahoru Odpovědět 17.8.2013 10:22
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:17.8.2013 10:24

... nebo v JARu.

Nahoru Odpovědět 17.8.2013 10:24
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Samuel Kodytek
Redaktor
Avatar
Samuel Kodytek:17.8.2013 10:25

... Skontroluj taky velky a maly pismena

Nahoru Odpovědět  +1 17.8.2013 10:25
Programming is thinking, not typing.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Vilém Zouhar
David Čápka:17.8.2013 10:25

Teď koukám že to bereš ze streamu. Měl jsem ve SWINGu problém s třídou AudioSystem a MidiSystem, nahradil jsem to Applet.getAudioClip nebo tak nějak, je tu na to tutoriál.

Nahoru Odpovědět 17.8.2013 10:25
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Vilém Zouhar
Redaktor
Avatar
Vilém Zouhar:17.8.2013 10:48

Pořád ale nechápu, proč to funguje, když to debuguju/spouštím a nefunguje po exportu. A ve složce to mám. Mám to v balíčku.

Editováno 17.8.2013 10:51
 
Nahoru Odpovědět 17.8.2013 10:48
Avatar
Kit
Redaktor
Avatar
Odpovídá na Vilém Zouhar
Kit:17.8.2013 10:55

Protože po exportu máš jinak nastavené cesty. Nebo jsi ty zvuky prostě neexportoval.

Nahoru Odpovědět 17.8.2013 10:55
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Vilém Zouhar
Redaktor
Avatar
Vilém Zouhar:17.8.2013 11:00

Používám tam např. obrázky a ty mi fungují i po exportu.

 
Nahoru Odpovědět 17.8.2013 11:00
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Vilém Zouhar
David Čápka:17.8.2013 11:02

Ono je hlavně divné že program funguje, možná tam máš jen nějaký vygenerovaný catch o kterém ani nevíš, dej si tam nějaký MessageBox nebo něco, co uvidíš když ta chyba nastane.

Nahoru Odpovědět 17.8.2013 11:02
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Vilém Zouhar
Kit:17.8.2013 11:02

Ty obrázky také mají cestu /cz/resources/?

Nahoru Odpovědět 17.8.2013 11:02
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Vilém Zouhar
Redaktor
Avatar
Vilém Zouhar:17.8.2013 11:04

Ty obrázky mají cestu /cz/graphic/, ale mohu ten zvuk dát k nim a vyzkoušet to.

 
Nahoru Odpovědět 17.8.2013 11:04
Avatar
Kit
Redaktor
Avatar
Odpovídá na Vilém Zouhar
Kit:17.8.2013 11:05

Ještě mě napadla velikost písmen. To, co snese souborový systém Windows, nesnese JAR.

Nahoru Odpovědět 17.8.2013 11:05
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Homo
Člen
Avatar
Odpovídá na Vilém Zouhar
Homo:17.8.2013 11:06

V jave ze zahadneho duvodu blbne getResourceAs­Stream

AudioInputStream inputStream = AudioSystem.getAudioInputStream(Hudba.class.getResourceAsStream("/cz/resources/medievalMusic1.wav"));

Tohle prepis na

AudioInputStream inputStream = AudioSystem.getAudioInputStream(Hudba.class.getResource("/cz/resources/medievalMusic1.wav"));

Pak by to melo fungovat.

Nahoru Odpovědět  +1 17.8.2013 11:06
1010011 1000101 1011000
Avatar
Vilém Zouhar
Redaktor
Avatar
Vilém Zouhar:17.8.2013 11:12

Dal jsem si:

JOptionPane.showMessageDialog(o, e.getMessage());

Při debugu/run v pohodě, ale po exportování a při následném spuštění se zobrazil MessageBox s: "mark/reset not supported"

 
Nahoru Odpovědět 17.8.2013 11:12
Avatar
Vilém Zouhar
Redaktor
Avatar
Vilém Zouhar:17.8.2013 11:14

Fugiczek na to přišel, moc děkuji.
(místo getResourceAs­Stream, getResource)

 
Nahoru Odpovědět 17.8.2013 11:14
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Vilém Zouhar
David Čápka:17.8.2013 11:15

No a jsme doma, použij buffer, řeší se to zde: http://stackoverflow.com/…ot-supported :P

Nahoru Odpovědět 17.8.2013 11:15
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Vilém Zouhar
Redaktor
Avatar
Vilém Zouhar:17.8.2013 11:19

Děkuji všem za pomoc.

 
Nahoru Odpovědět 17.8.2013 11:19
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 17 zpráv z 17.