Próbuję zrobić aplikację WinForm w C# (VS2008), która może załadować mp3 (inne formaty byłyby ładne, ale mp3 na minimum) i być w stanie dostosować prędkość odtwarzania (tempo) bez wpływu na wysokość dźwięku. Naprawdę nie potrzebuję żadnych innych efektów dźwiękowych. Próbowałem używać DirectShow, ale wydaje się, że nie oferuje to możliwości rozciągnięcia czasu. Udało mi się wprowadzić irrklang, ale wydaje się, że nie ma również możliwości rozciągnięcia czasu. Teraz przeniosłem się na SoundTouch. To na pewno ma możliwości, ale jestem bardzo niejasny, jak zaimplementować w C#.C# Audio - Jak rozciągnąć czas (inne tempo, ten sam skok)
Po kilku dniach o tym wszystkim, co osiągnąłem, korzystam z DLLImport w bibliotece SoundTouch DLL i jestem w stanie z powodzeniem pobrać numer wersji. W tym momencie nie jestem nawet pewien, czy mogę zrobić to, co próbuję zrobić z SoundTouch. Czy każdy może zaoferować jakieś wskazówki dotyczące implementacji SoundTouch lub innej biblioteki z możliwościami, których szukam? Dziękuję Ci.
Pisałem komentarz w zasadzie mówiąc to samo. Uderzyłeś mnie w to;) –
To mi się przydarza przez cały czas. –
Dobrze, przynajmniej wiem, że schodzę właściwą drogą. Moim problemem jest to, że przykłady, które widzę (i na pewno może brakować czegoś ważnego) są w C++. Za pomocą DLLImport, mogę uzyskać to działa w języku C#: SOUNDTOUCHDLL_API const char * __ stdcall soundtouch_getVersionString(); Dla moich celów, będę musiał móc zadzwonić: SOUNDTOUCHDLL_API UCHWYTU __stdcall soundtouch_createInstance(); I SOUNDTOUCHDLL_API void __stdcall soundtouch_setTempoChange (UCHWYT h, float newTempo); I to tutaj całkowicie utknąłem. – heath