Kiepska jakość nagrywanych wav

problemy z tworzeniem aplikacji graficznych oraz audio i wideo

Kiepska jakość nagrywanych wav

Nowy postprzez Krzysiu555 » Å›roda, 5 listopada 2008, 19:23

Otóż problem jest specyficzny i nawet ciężko mi powiedzieć skąd się wziął.

Z miesiąc temu rozpocząłem pisanie programu. Zacząłem od nagrywania dźwięku do pliku wav. W zasadzie przepisałem poradę na ten temat z serwisu Cyfbar. Zmieniłem tak jak potrzebowałem. Wszystko działało ok. Wręcz byłem zaskoczony tak dobrą jakością plików. Czysty wyraźny dźwięk bez żadnych szumów czy czegoś podobnego.

I wtedy przeszedłem do innych funkcji programu. Dodałem kilkanaście komponentów (przeważnie jakieś Buttony itp.) nowe funkcje. Minimalizację do traya, autostart wraz z systemem, zapis ustawień do pliku ini i parę innych mało ważnych rzeczy.
Dodałem też uruchamianie niektórych funkcji w nowych wątkach, żeby zwiększyć wydajność. A tej części kodu która zajmuje się nagrywaniem wav nie ruszałem.

Potem gdy odpaliłem program (zawsze odpalam spoza Buildera) i znów nagrałem jakieś tam nagranie (czego nie robiłem długo) okazało się że jakość jest fatalna. Wszystko szumi, trzeszczy, i w ogóle jest strasznie ciche. Myślałem że to mikrofon ale gdy odpaliłem Rejestrator dźwięku Windows okazało się że nie bo jakość w nim jest tak samo zadowalająca jak w moim programie kiedyś. Potem pomyślałem że to może mój program źle odtwarza plik, który jest nagrany dobrze (bowiem mój program odtwarza nagrane przez siebie pliki), więc odtworzyłem plik przez Windows Media Playera i jakość też była bardzo słaba. Wynika z tego że problem leży w nagrywaniu przez program.

Tylko co się mogło popsuć że miesiąc wcześniej działało a teraz już nie, przy czym ja niczego nie ruszałem (w tej części kodu, która zajmuje się nagrywaniem)???
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Cyfrowy Baron » Å›roda, 5 listopada 2008, 20:10

Zanim przejdziesz do poszukiwań w błędzie kodu, napisz jeszcze raz program dokładnie tak jak za pierwszym razem bez tych wszystkich "dodatków" i nagraj jakiś plik. Jeżeli nagranie będzie dobre, to oznacza, ze włączyłeś do swojego pierwszego projektu jakąś bibliotekę, która powoduje błędy.



Pisząc program często go testuję, zawsze po dodaniu jakichś nowych funkcji sprawdzam czy wszystko działa prawidłowo, jeżeli nie to wiem, która część kodu wywołuje błędy. Ty najwyraźniej zrobiłeś najpierw nagrywanie, a potem hurtowo wrzuciłeś cała resztę i dopiero potem przetestowałeś nagrywanie, teraz nie wiesz co powoduje błędy.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Krzysiu555 » czwartek, 6 listopada 2008, 17:34

napisałem nowy program tylko do sprawdzenia tego nagrywania. W zasadzie przepisałem poradę z Cyfbara tylko skasowałem wyswietlanie statusu na SatusBarze.

I okazało się że jakość nagrywanych dźwięków jest również strasznie kiepska. Wynika z tego że przyczyną nie są też te wszystkie funkcje które dodałem po pierwszym testowaniu. Poza tym znalazłem na dysku pierwszą wersję mojego programu tą którą kiedyś testowałem i wtedy dźwięk był bardzo dobry. Od tamtego czasu nic w tym programie nie zmieniałem (bo kontynuowałem w oddzielnym), a pomimo to teraz jakość w tym starym też jest słaba, podobnie jak w tym nowym.

W czym może być w takim razie problem??
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Miroo_007 » czwartek, 6 listopada 2008, 17:43

Z jakich bibliotek korzystasz przy nagrywaniu?
Avatar użytkownika
Miroo_007
Intelektryk
Intelektryk
 
Posty: 160
Dołączył(a): sobota, 18 października 2008, 10:49
Lokalizacja: Rzeszów
PodziÄ™kowaÅ‚ : 0
OtrzymaÅ‚ podziÄ™kowaÅ„: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Cyfrowy Baron » czwartek, 6 listopada 2008, 18:12

Najwyraźniej masz coś źle skonfigurowane w systemie, żeby to sprawdzić wrzuć na forum ten Twój stary program, to sprawdzę jak nagrywa u mnie.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Krzysiu555 » piÄ…tek, 7 listopada 2008, 16:13

tu sÄ… obie wersje i stara i nowa:
http://rapidshare.com/files/161493213/n ... e.rar.html

1. Żeby nagrać wiadomość klikasz "Zaloguj".
2. W nowym oknie wpisujesz login i hasło i potwierdzasz "Ok".
3. Potem klikasz "Połącz".
4. Następnie "Nowa".
5. W uaktywnionym polu wpisujesz ID adresata, czyli np. siebie samego. Klikasz "Zatwierdź".
6. I wtedy uaktywniają się przyciski do nagrywania i odtwarzania wiadomości.
7. Żeby wysłać nagraną wiadomość do siebie samego kliknij "Wyślij" a jeśli nie chcesz jej wysyłać to "Anuluj".

login: 999
hasło: test
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Cyfrowy Baron » piÄ…tek, 7 listopada 2008, 16:39

Po pierwsze nie chciałem całego projektu, a tylko sam program.
Po drugie skompiluj te programy razem z bibliotekami gdyż teraz nie mogę uch uruchomić u siebie.
Po trzecie jeżeli zamieszczasz cały projekt to usuń z niego pliki tymczasowe, gdyż te pliki nie są potrzebne do prawidłowego działania projektu, kompilator tworzy je podczas kompilacji dla własnych celów, więc można je spokojnie usunąć, gdyż podczas kompilacji i tak zostaną przywrócone. Pliki tymczasowe jak. *.tds zajmują bardzo dużo miejsca i niepotrzebnie powiększają rozmiar pliku do pobrania:



Te pliki można spokojnie usunąć:

*.~??
*.~?
*.obj
*.tds

gdzie pytajnik to dowolny znak.

Najprościej jest utworzyć sobie w Notatniku plik z taką zawartością:

del *.~??
del *.~?
del *.obj
del *.tds



i zapisać go pod dowolną nazwą z rozszerzeniem BAT, np. Clean.bat. Następnie umieszczamy taki plik w katalogu z projektem i uruchamiamy go stamtąd, wszystkie zbędne pliki tymczasowe zostaną usunięte z projektu.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Krzysiu555 » sobota, 8 listopada 2008, 22:31

zawsze mnie ciekawiło i miałem się o to spytać które pliki można spokojnie wywalać bo zawsze robi się ich strasznie dużo.

z nowym programem zrobiłem wszystko tak jak mówiłeś. Odznaczyłem Build with Runtime, odznaczyłem Use dynamic RTL i odznaczyłem Use debug libraries. Zbuildowałem program i wszystko poszło ok.
Jest tutaj:
nowy.rar


Natomiast gdy zrobiłem to samo ze starym. To wyskoczył error: can not find "INDY60.LIB" (coś podobnego bo nie pamiętam).
Kliknąłem Project potem Add to Project, znalazłem plik indy60.lib i dodałem go do projektu. I gdy znów go zbuildowałem wyskoczył error:
[Linker Fatal Error] Fatal: Unable to open file 'INDY60.LIB'


I co teraz?

PS możesz ewentualnie powiedzieć mi chociaż jak działa u Ciebie ta nowsza wersja.. :?
Nie masz wystarczających uprawnień, aby zobaczyć pliki załączone do tego postu.
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Cyfrowy Baron » niedziela, 9 listopada 2008, 09:13

Co do błędu z linkierem nie potrafiącym odnaleźć ścieżki dostępu do plików pakietu INDY to poczytaj sobie w tym poście: viewtopic.php?f=16&t=202&p=1203&hilit=Options#p1203.

Co do Twojego programu to jest jeszcze niedopracowany. Po wprowadzeniu do programu numeru ID, który już istnieje i po ponownej zalogowania (bez restartu programu) otrzymałem komunikat następującej treści: Can't open users/990/12345.txt: No such file or directory.
Przypuszczam, że nie przewidziałeś takiego wyjątku. Twój błąd tutaj polega na tym, ze jeżeli użytkownik wprowadzi podczas rejestracji ID, który już istnieje, to otrzyma oczywiście komunikat, że nie może użyć tego ID, ale żeby podjąć nową próbę rejestracji musi ponownie uruchomić program, gdyż przycisk rejestracji pozostaje nieaktywny.
Sugerowałbym również nadać kontrolkom styl WinXP za pomocą manifestu lub komponentu WinXP.

Co do nagrywania to u mnie nagranie ma czysty dźwięk, więc to musi być błędne ustawienie Twojej karty dźwiękowej.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Krzysiu555 » niedziela, 9 listopada 2008, 18:21

Dziwne wydawało mi się że ten błąd z rejestracją już poprawiłem, ale widocznie nie - cóż popracuję nad tym.

A żeby program miał wygląd XP trzeba mieć TXpManifest a BCB 6 Personal go nie ma i nie wiem jak go dodać.

Co do tej biblioteki indy60.lib to poczytam później bo teraz nie mam dostępu do kompa, a piszę z telefonu. Ale dzięki.

Ciekawe co ja mogłem zrobić z ta karta że przestało działać. Ale grunt że u innych działa.

Serdecznie dziękuję za pomoc i rady:-)
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Cyfrowy Baron » niedziela, 9 listopada 2008, 19:12

A żeby program miał wygląd XP trzeba mieć TXpManifest a BCB 6 Personal go nie ma i nie wiem jak go dodać.


Odnoszę wrażenie, że wogóle nie zaglądasz do serwisu Cyfrowy Baron, bo gdybyś trochę poczytał to zauważyłbyś porady:

    porady | różne | Jak w Windows XP nadać kontrolkom odpowiedni wyglÄ…d?.
    porady | różne | WyglÄ…d kontrolek w Windows XP. Jak umieÅ›cić manifest w zasobach programu. - tÄ… polecam

Został tam opisany sposób utworzenia manifestu dla programu w Notatniku i dołączenia go do tegoż programu. Do tego celu, żadne komponenty nie są potrzebne. W zasadzie to wszystkie dostępne komponenty zawierają po prostu taki manifest, który po umieszczeniu komponentu na formularzu po prostu dołącza manifest do zasobów programu.

Może pobierz sobie wersję off-line serwisu w formacie PDF.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Krzysiu555 » piÄ…tek, 21 listopada 2008, 15:20

Okazało się że to jednak nie wina moich sterowników czy karty dźwiękowej. Bo program tak fatalnie nagrywa również u moich kolegów. Więc problem wraca.

Napisałem nowy (testowy) program - był identyczny jak ten w poradzie. I on również tak fatalnie nagrywa. Przypuszczam więc że coś mogło się stać albo z C++ Builderem albo z jakimiś bibliotekami, albo z czymś podobnym.

Może reinstalacja BCB pomoże? Albo może zainstaluje jakieś patche? Albo może ktoś ma jakiś inny pomysł?
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Cyfrowy Baron » piÄ…tek, 21 listopada 2008, 16:02

Ja nie wiem. Testowałem Twój program u siebie i nagrywa czysto i prawidłowo, więc nie rozumiem problemu. Być może coś z mikrofonem, Ja używam mikrofonu Tracer, taki za 60 PLN.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Krzysiu555 » sobota, 22 listopada 2008, 19:30

    :arrow: wykluczam mikrofon, bo mam jeszcze inne dwa i na wszystkich jest to samo, poza tym Rejestrator dźwięku Windows nagrywa bardzo dobrze tym samym mikrofonem
    :arrow: wykluczam kartę dźwiękową i jej sterowniki, bo przecież Rejestratorem dźwięku nagrywam i wszystko jest ok, poza tym mogę słuchać muzyki no i działają wszystkie inne programy związane z dźwiękiem
    :arrow: wykluczam to że mój program może źle odtwarzać nagrane lub pobrane pliki, bo gdy te same pliki odtworzy się Windows Media Playerem albo jakimkolwiek innym programem np. Winampem - to jest tak samo źle
    :arrow: wykluczam to że jest błąd w kodzie, bo przecież nawet gdy przepiszę poradę z Serwisu Cyfbar dotycząca nagrywania, która kiedyś u mnie na 100% była ok, to teraz również będzie nagrywała za cicho i kiepsko

Dodam że podobnie tj. słabo, cicho, z szumami, program nagrywa u moich kolegów, no i u mnie.
A kiedyś nagrywał perfekcyjnie.

Wspomnę też, że nie dawno (właśnie mniej więcej wtedy, kiedy odkryłem tę usterkę) zainstalowałem Microsoft SDK i DDK, które na pewno ingerują w biblioteki i sterowniki. Pomyślałem, że to one wywołały mój problem i usunąłem obydwa programy. Jednak błąd jest nadal. Co o tym myślicie? Może SDK i DDK pozostawiły po sobie jakieś biblioteki albo coś co mi popsuło program?
► 
Przypuszczam że coś jest albo z Builderem albo z jakimiś bibliotekami albo sterownikami.
Jednak najbardziej prawdopodobne są biblioteki albo sterowniki bo nawet najstarsza wersja programu, która buildowana była jeszcze przed usterką, a potem nie - też źle działa

Co o tym sądzisz CB i może ma ktoś jakiś pomysł?

Załączam przykładowe nagrania:
► 
Nie masz wystarczających uprawnień, aby zobaczyć pliki załączone do tego postu.
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Kiepska jakość nagrywanych wav

Nowy postprzez Cyfrowy Baron » sobota, 22 listopada 2008, 21:09

Usunięcie SDK nie przywraca bibliotek w których wprowadzone zostały zmiany, tutaj może pomóc tylko funkcja przywracania systemu (nie polecam - coś potem an pewno źle będzie działać), lub reinstalacja systemu.

Jeżeli masz taką możliwość, to spróbuj skompilować program w systemie, w którym nie instalowałeś tych dodatków.

Co do nagrać, to faktycznie źle działają.

Wrzuć tu jeszcze raz ten program, którym zrobiłeś te "złe" nagrania - tylko program, nie projekt. Nie zapomnij go skompilować razem z biblitekami.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Następna strona

Powrót do Aplikacje multimedialne, graficzne

Kto przeglÄ…da forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 1 gość