Dźwięk i jego jakość przypomina religię. Niekończąca się opowieść.
Ludzie powiedzą, że MP3 320kbps jest bezstratny, podczas gdy eksperci powiedzą, że każdy MP3 to bzdura, ale ostatecznie nikt nie usłyszy różnicy w wyniku ... chyba że będzie w branży muzycznej od ponad 20 lat.
Jaki byłby najlepszy format gry wideo i jakie właściwości powinny wystarczyć (herc, bitrate itp.), Zakładając, że MP3 320 kb / s jest „ciężkie”?
Może przykład lub dwa, jak niektóre tytuły AAA działają z ich dźwiękami.
Odpowiedzi:
Zaktualizuj lipiec 2017 r
Jeśli korzystasz z Unity lub innego dużego silnika z systemem zarządzania aktywami, nie proś Ogg Vorbis od projektantów dźwięku i kompozytorów. Uzyskaj WAV lub AIFF.
Unity i Unreal są skonstruowane do pracy z wysokiej jakości odbiciami, a następnie stosują ustawienia kompresji dla poszczególnych platform. Posiadanie źródła jako Ogg lub Mp3 oznacza, że podwójnie kompresujesz dźwięk i wprowadzasz dodatkowe artefakty bez żadnej korzyści.
Jeśli widzisz, że rozpoczęcie od ogg lub mp3 zmniejsza rozmiar kompilacji, to nie jest dobry powód. Prawdopodobnie oznacza to, że eksportujesz z innymi ustawieniami kompresji niż w Unity / Unreal. Czy są egzekucje? Tak, ale nie szukałbyś tej odpowiedzi, gdybyś wiedział, kiedy mają zastosowanie te wyjątki.
Jeśli kompresujesz wstępnie w celu zmniejszenia rozmiaru repozytorium, użyj LFS, użyj scentralizowanego systemu kontroli wersji lub uśmiechnij się i zrób to.
TL; DR
Prawdziwa odpowiedź
Dźwięk zakodowany w formacie MP3, niezależnie od jakości kodowania, jest zawsze stratny. Jest to kodek percepcyjny, a zatem działa poprzez kodowanie właściwości dźwięku w czasie w ~ 1152 fragmentach próbek w postaci skompresowanej, z której dekompresowane nieskompresowane próbki mogą być ekstrapolowane. Jego celem nie jest dokładne odtworzenie oryginalnego dźwięku, wystarczy zapewnić taki, który jest „wystarczająco dobry”.
Jednak, jak powiedziałeś, 320kbps brzmi bardzo dobrze. Jest ogólnie uważany za dobry lub lepszy niż jakość CD. Jednak nadal nie jest możliwe idealne odtworzenie oryginalnych próbek nieskompresowanego pliku WAV zakodowanego jako plik MP3 320 kb / s.
Ogólnie Ogg Vorbis jest lepszym formatem niż MP3. Ogólnie uzgodniono, aby zapewnić lepszą jakość pliku o tym samym rozmiarze, a w przeciwieństwie do MP3 można go łatwo zapętlić. Te fragmenty z 1152 próbkami, których MP3 używa do kodowania dźwięku, często pozostawiają ciszę na początku i na końcu dźwięku. Nie jest to wielka sprawa dla podstawowych efektów dźwiękowych, ale ogromny problem dla pętli muzycznych.
Flash IDE omija to podczas eksportu .swf, ręcznie usuwa ciszę. Osoby używające strumieniowego przesyłania audio (lub czystego mxmlc) uzyskują zapętlanie za pośrednictwem SampleDataEvent i ręcznie upuszczają próbki lub przetwarzają wstępnie plik MP3 (patrz blog Andre Michelle i narzędzie mp3loop CompuPhase )
Korzystanie z dekodera MP3 wymaga również uzyskania licencji patentowej (ponieważ patent MP3 jest własnością Technicolor, Fraunhofer i innych). Oczywiście mnóstwo ludzi wypuściło darmowe gry, które korzystały z MP3, ale najlepiej tego nie robić.
To zależy: jakie są twoje platformy docelowe, jakich innych technologii używasz, jak dystrybuujesz swoją grę i jaki styl wybierasz? Podzielę to na kilka kategorii w oparciu o platformę, technologię i estetykę.
Wysokiej klasy tytuły na komputery PC i konsole
Gry AAA dążą do najwyższej jakości produkcji, więc nagrywają i produkują zasoby nieskompresowane 24 bity / 48 kHz (również standard postprodukcji filmu). Tytuły z nieco mniejszymi ambicjami niż mówią, że Battlefield 3 może nagrywać i produkować w formacie 16 / 44,1, który jest oficjalnym standardem dla jakości dźwięku CD.
Oczywiście nie można wysłać gry 24/48 nieskompresowanych plików WAV w grze, byłoby to zbyt duże. Tak więc ostatecznie musi dojść do pewnego rodzaju kompresji. Ogólnie rzecz biorąc, ogólna zasada jest taka, że jeśli jest to szybki efekt dźwiękowy podobny do dźwięku pistoletu (np. Sapnięcie pistoletu Portal 2 w odpowiedzi Spruntha), można pozostawić go jako WAV, prawdopodobnie zmniejszając częstotliwość próbkowania w zależności od częstotliwości (patrz Twierdzenie Nyquista , dźwięki składające się z treści o niskiej częstotliwości mogą być kodowane przy niższych częstotliwościach próbkowania). W przypadku muzyki naprawdę nie ma możliwości obejścia kompresji. Najlepszym rozwiązaniem jest Ogg Vorbis w jakości CD (44,1 kHz, jakość 5-6 lub wyższa).
Ponadto gry AAA często używają narzędzia pośredniczącego do kompresji, albo narzędzia wewnętrznego, albo oprogramowania pośredniego audio, takiego jak FMOD lub Wwise. W FMOD i Wwise działa to tak, że importujesz większość rzeczy w formacie WAV 16 / 44,1 lub 24/48 (lub, jeśli dźwięk jest treścią o niskiej częstotliwości, może być importowany z niższą częstotliwością próbkowania), a następnie podaj FMOD współczynnik kompresji dla każdego zasobu, wybierając kodowanie takie jak ADPCM, MP3 lub Ogg Vorbis.
FMOD zrezygnował ostatnio z obsługi kodowania zasobów w zestawach dźwiękowych eksportowanych z FMOD Designer (pliki .fsb) jako Ogg Vorbis na rzecz nowego kodeka Xiph o nazwie CELT . Ogg Vorbis może być trochę trudny na CPU, więc CELT jest rozwijany, aby zapewnić alternatywę. Pliki można ładować bezpośrednio, ale nie można ich już używać do kodowania z aplikacji Designer.
Nawiasem mówiąc, oto fajny link na temat dźwięku z Battlefield Bad Company, który również trochę się zmienia. DICE jest w czołówce technologii audio w grach, więc jest to dobra seria do nauki.
Z dźwiękiem przestrzennym związany jest również problem mono-stereo. Na wypadek, gdybyś nie wiedział, wszystkie twoje efekty dźwiękowe powinny być monofoniczne, chyba że niektóre z nich faktycznie korzystają z efektów panoramowania. Stereo jest niewygodne do przestrzennego umieszczenia w środowisku 3D, a można przesuwać dźwięki w kodzie, aby umieścić je w środowisku 2D.
Nieco mniej wysokiej klasy tytuły, gry niezależne
Oczywiście może się to znacznie różnić. Szybki rzut oka pokazuje, że Frozen Synapse wykorzystuje całkowicie pliki Ogg Vorbis, zarówno do efektów dźwiękowych, jak i do muzyki. Z drugiej strony Dungeons of Dredmor jest zgodny ze schematem Ogg Vorbis dla muzyki i 16 / 44,1 WAV dla efektów dźwiękowych.
Preferowane jest podejście Dungeons of Dredmor. Nawet zapisane jako nieskompresowane pliki WAV, efekty dźwiękowe są na ogół wystarczająco krótkie, aby nie zajmowały tyle miejsca, a zaoszczędzono wiele cykli procesora bez konieczności ich dekodowania. Chcesz mieć możliwość szybkiego załadowania efektu dźwiękowego do pamięci i odtworzenia go. Jeśli zakodujesz swoje efekty dźwiękowe w Ogg Vorbis, istnieje możliwość niewielkiego opóźnienia, zanim gracz usłyszy twój efekt dźwiękowy po raz pierwszy.
Gry przeglądarkowe, HTML5 i Flash (z odrobiną Mobile)
Dźwięk HTML5 to bałagan. Musisz dostarczyć zarówno ogg, jak i wersje MP3 swoich dźwięków. Koduj w najwyższej możliwej jakości bez szaleństwa użytkownika przy długim czasie ładowania. W przypadku plików MP3 nie schodź poniżej 128k, jest wystarczająco zły na 128.
Flash akceptuje tylko pliki MP3 16bit / 44,1 kHz, chyba że zwariujesz i nie napiszesz własnego dekodera dla innego formatu (takiego jak eksperymentalny dekoder Ogg Vorbis w laboratoriach Alchemy). W przeszłości Flash miał problemy z plikami MP3 o zmiennej przepływności, ale nigdy nie miałem problemu. Ustawienie jakości, które wybierzesz dla gry Flash, będzie zależeć od tego, jak duży ma być końcowy plik .swf.
Aktualizacja: Jak wspomniał Tetrad , gry mobilne należy rozpatrywać z pamięcią i pamięcią. Sposób kodowania dźwięku w grach mobilnych jest podobny do Flasha, chcesz zachować jak najwyższą jakość, ale ostatecznie musisz dopasować budżet pamięci i pamięci. Muzyka z trackera jest szczególnie dobra, jeśli masz ograniczony budżet na przechowywanie muzyki. Należy poinformować kompozytora ograniczyć swoją przykładową paletę i można dopasować ton więcej muzyki w grze.
„8-bit” lub efekty dźwiękowe typu Chiptune i muzyka
Większość gier robi po prostu to, co robią Frozen Synapse i Dungeons of Dredmor. Prawdopodobnie można jednak uniknąć ograniczenia częstotliwości próbkowania i głębokości bitów. Może nie tylko pasować do estetyki, której szukasz, ale może także zaoszczędzić trochę miejsca.
Ponadto muzyka trackera zazwyczaj przechowuje próbki z niską częstotliwością próbkowania, po prostu pozwól, aby tak się stało.
źródło
Jak branża działa z dźwiękiem, nie jestem pewien.
Ale przeglądając moje gry, większość z nich pakuje je w jakiś plik danych lub w inny sposób.
Oto kilka bitów audio, które mógłbym wyciągnąć:
Ponieważ nie mogłem rozpakować żadnego z plików danych itp. (Z wyjątkiem GCF z Portal 2), wyniki mogą nie pokazywać widma na rynku. Próbowałem dać ci próbkę gier, a te, które nie pakują dźwięku, wydają się mieć podobne wyniki.
źródło
4000 Degrees Kelvin
pochodzi z pierwszego portalu, a nie z drugiego.Z mojego doświadczenia (głównie tytułów mobilnych), jakość dźwięku powinna być tak niska, jak to możliwe, bez jawnych negatywnych skutków ubocznych, abyś miał więcej pamięci na inne rzeczy.
Należy pamiętać, że sam fakt kompresji niekoniecznie oznacza, że jakość jest zbyt niska. Twoi odbiorcy nie będą przeprowadzać porównań z dźwiękami podstawowymi takimi jak ty, więc jeśli czegoś brakuje podczas kompresji stratnej, to na ogół nie będą o tym wiedzieć.
Na przykład musisz zadać sobie pytanie, czy jest jakiś powód, aby używać dźwięków stereo lub muzyki. Czy efekt, który daje, jest wart prawie dwa razy więcej kosztów ogólnych? W przypadku muzyki, w zależności od tego, jak jest tworzona, odpowiedź może brzmieć „tak”. Niektóre silniki nawet nie obsługują źródeł stereo dla efektów dźwiękowych. Tego typu rzeczy.
Oczywiście ta linia jest bardzo subiektywna. Istnieją inne odpowiedzi, które dotyczą bardziej szczegółowych zasad.
Ważne jest, aby mieć standardy, ustalić je wcześniej i starać się ich przestrzegać. Jeśli tworzysz muzykę do gry i musisz zmniejszyć jej przepływność o połowę, aby zmieściła się w pamięci, to będzie ci gorzej, niż jeśli ustawisz niski poziom jakości w pierwszej kolejności.
źródło
If you're targeting a specific platform -- iPhone, Xbox 360, PS3 -- you should look into whether the hardware has an audio decoder. If so, you should use it. You'll save CPU time (and battery life!) by offloading the audio, and you'll be able to take full advantage of that platform's APIs. More importantly, that hardware acceleration will be contingent on your audio being in a specific format -- so your choice will already be made.
However, if you're targeting PC, then your options are more varied. I'd just pick the format with the smallest file size that still sounds good to your ears, and run with it.
źródło
It depends on what's going to be 'obscuring' the lossy encoding - if you look at Sprunth's answer the general trend for music is high quality for the menu, and low quality for in-game music. The reason is probably because:
Finally another trend from his answers is that most effects are 44KHz/16bit; but some older games allowed you to run at 22KHz/16bit ('Sound quality') - in the event your sound card couldn't handle the higher sample rate.
źródło