allegro/sdl/jakakolwiek prosta bilbioteka - dźwięk
Ostatnio zmodyfikowano 2008-11-29 14:58
nnick Temat założony przez niniejszego użytkownika |
allegro/sdl/jakakolwiek prosta bilbioteka - dźwięk » 2008-11-29 10:56:53 Witam! Próbuję zrobić prosty program w allegro z obsługą dźwięku, ale napotkałem na pewien problem. Mianowicie potrzebuję żeby program wyświetlał aktualną głośność dźwięku(coś a'la wizualizacja). Niestety nie doszukałem się w dokumentacji allegro funkcji która by zwracała aktualną siłę głosu odtwarzanego pliku (wav), jedynie globalne ustawienie głośności. Da się jakoś to w prosty sposób zrobić? |
|
DejaVu |
» 2008-11-29 14:38:03 W dokumentacji allegro http://www.allegro.cc/manual/api/sound-init-routines/ jedyne co widzę to cztery funkcje: set_volume - Alters the global sound output volume. set_hardware_volume - Alters the hardware sound output volume. get_volume - Retrieves the global sound output volume. get_hardware_volume - Retrieves the hardware sound output volume.
|
W praktyce nie zajmowałem się dźwiękiem tak więc niestety nie mogę Ci powiedzieć więcej niż to co da się wyczytać z dokumentacji... /edit: Znalazłem jeszcze coś takiego http://www.allegro.cc/manual/api/digital-sample-routines/. voice_get_volume - Returns the current volume of the voice. voice_set_volume - Sets the volume of the voice |
|
|
nnick Temat założony przez niniejszego użytkownika |
» 2008-11-29 14:42:27 Wlasnie probowalem ich uzyc, ale set_volume/voice_set_volume/set_hardware_volume zmieniają globalne ustawienie głośności, a get_volume odczytuje tą wartość. Potrzebuje czegoś co mi na bierząco będzie odczytywać głośność odtwarzanego w tym momencie pliku. |
|
DejaVu |
» 2008-11-29 14:53:46 Może trzeba w jakiś sposób rozbić dźwięk na 'składowe'? Dźwięk generalnie zapisany jest w postaci jednej liczby w zakresie 0..65535. Ten jeden dźwięk zawiera w sobie zarówno tony niskie, średnie jak i wysokie. Weźmy przykładowo takiego WinAMP'a. Ma on tam takie słupki które skaczą jak muzyka leci. Jest to przykład rozłożenia pojedyńczego dźwięku na różne częstotliwości - myślę, że może w ten sposób można spróbować podejść do szukania rozwiązania Twojego problemu. Coż, może ktoś zabierze głos, kto zna obsługę dźwięku w praktyce. Wieczorem spróbuję coś wygooglać jeszcze - może coś znajdę.
/edit: Warto zauważyć, że zmieniając głośność dźwięku w WinAMP'ie nie zmieniasz wysokości skakania słupków <= co jest właśnie wynikiem tego, że ścieżka odtwarzanego dźwięku się nie zmienia. |
|
nnick Temat założony przez niniejszego użytkownika |
» 2008-11-29 14:58:29 Tak tez mogloby być, spędziłem pół dnia w googlach szukając czegoś takiego w allegro, sdl'u, nawet patrzyłem OpenAL i DirectSound, ale nic nie znalazłem co by się sprawdziło. Nawet pojedyńczej funkcji :(
EDIT: jakby co to tutaj jest nieukonczony program razem z kodem: http://www.sendspace.com/file/btm49o (klawisze A i S symulują działanie sprawdzanie aktualnej głosności odtwarzania, funkcja ktora ten poziom głośności przyjmuje zakłada maks wartość 255). Moze tak będzie łatwiej komuś wymyśleć jak sobie z tym poradzić.
EDIT2: Zamykam temat, znalazlem bibliotekę zapewnijącą mi potrzebną funkcjonalność (WMp3) |
|
« 1 » |