Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

SoundinfoBiblioteka do obsługi dźwięków


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
2 odpowiedzi w tym temacie

#1 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 553
Godlike

  • Postów:11 976
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 04.08.2010 23:00

*
Popularny

Opis
Biblioteka która daje nam do rąk kilka fajnych funkcji do obsługi dźwięków
Napisana w prawie 100 % przez R3X ja stałem i się przyglądałem ^^

Funkcje
ścieżkę podajemy bez cstrike/ w ścieżce musi się zawierać rozszerzenie pliku
wszystkie funkcje same rozpoznają czy to jest plik wav czy mp3
  • sfile_get_duration(szFilename[])
    zwraca długość utworu jako float działa źle jeśli plik mp3 jest zakodowany z zmiennym bitrate (VBR)
    1 parametr ścieżka do pliku
  • get_duration(iData[SParam])
    także zwraca długość utworu jako float ale z tą funkcją jest więcej jazdy
    działa źle jeśli plik mp3 jest zakodowany z zmiennym bitrate (VBR)
    1 parametr podajemy to co zwróci nam sfile_loaddata()
  • sfile_is_valid(szFilename[])
    funkcja zwraca true jeśli plik jest obsługiwany przez cs'a czyli cs potrafi go odtworzyć
    false jeśli jest inaczej
  • sfile_type(szFilename[])
    zwraca SFILE_MP3 jeśli plik to mp3 lub SFILE_WAV gdy wav jeśli nie znajdzie pliku zwraca SFILE_UNKNOWN
    1 parametr ścieżka do pliku
  • sfile_loaddata(szFilename[], iData[SParam])
    ładuje informacje o pliku mp3 lub wav funkcja sama wybierze cóż to za plik jej dano ;D
    zwraca SRES_NOT_EXISTS jeśli nie znajdzie pliku
    dla pliku mp3
    SRES_BAD_PARAMETERS jeśli plik będzie miał złe parametry
    SRES_OK jeśli wszystko poszło dobrze
    dla wav
    SRES_BAD_SIGNATURE sygnatura pliku nie zgadza się z specyfikacją
    SRES_OK jak mp3
    1 Parametr ścieżka do pliku
    2 Tablica do której zostaną zapisane są informacje
    są to
    SOUND_FREQ - częstotliwość dźwięku
    SOUND_BYTERATE - byterate - ilość bitów na sekundę
    SOUND_CHAN_NUM - ilość kanałów
    SOUND_DURATION_F - czas float żeby ją poprawnie wyciągnąć używamy Float:iData[SOUND_DURATION_F]) lub get_duration(iData)
  • sfile_loaddata_mp3(szFilename[], iData[SParam])
    to samo co sfile_loaddata ale tylko dla plików mp3
  • sfile_loaddata_wav(szFilename[], iData[SParam])
    to samo co sfile_loaddata ale tylko dla plików wav

Enumy i return

  • SRES_BAD_PARAMETERS -2
  • SRES_BAD_SIGNATURE -1
  • SRES_NOT_EXISTS 0
  • SRES_OK 1

//Typ pliku
  • SFILE_UNKNOWN
  • SFILE_WAV
  • SFILE_MP3
//Informacje o utworze
//new iData[SParam];
  • SOUND_FREQ
  • SOUND_BYTERATE
  • SOUND_CHAN_NUM
  • SOUND_DURATION_F


Instalacja
plik soundinfo.inc wklejamy do folderu include kompilatora
w pluginie dopisujemy
#include <soundinfo>

Przykładowy kod
Spoiler


Download

Załączony plik  soundinfo.inc   8,29 KB  180 Ilość pobrań

Użytkownik DarkGL edytował ten post 05.08.2010 01:02

  • +
  • -
  • 5

#2 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 04.08.2010 23:20

od siebie dodam tylko, czym się różni get_duration of sfile_get_duration

funkcja sfile_loaddata() zwraca przez referencję tablicę intów, z których jeden jest tak naprawdę floatem ; get_duration wyciąga z tablicy odpowiednią wartość i dodaje tag Float:, dokładnie to samo można zrobić konstrukcją
Float:iData[SOUND_DURATION_F];

sfile_get_duration() odczytuje dane o pliku i zwraca tego Float:`a

więc używać należy albo sfile_loaddata() w połączeniu z get_duration(), albo wyłącznie sfile_get_duration()
  • +
  • -
  • 3

#3 GT Team

    Ten lepszy xD

  • Zbanowany

Reputacja: 321
Wszechpomocny

  • Postów:1 435
  • GG:
  • Imię:Tomasz i Grzegorz
  • Lokalizacja:Wojkowice
Offline

Napisano 14.10.2013 22:36

Niezłe, można przed precachowaniem dźwięków sprawdzić czy cs może go otworzyć, jak nie to zajebiaszcego loga wypisze ;3 ;D

Nowa wersja Tower Defense 0.2 Alpha | Inne Mody -> Nowości

 





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych