Klang und Qualität sind so etwas wie Religion. Niemals endende Geschichte.
Die Leute werden sagen, dass MP3 320kbps verlustfrei ist, während Experten sagen, dass MP3 Mist ist, aber am Ende wird niemand einen Unterschied im Ergebnis hören ... es sei denn, sie sind seit über 20 Jahren in der Musikindustrie.
Was wäre das beste Format für Videospiele und welche Eigenschaften sollten ausreichen (Hertz, Bitrate usw.), vorausgesetzt, 320 kbit / s MP3 sind "schwer"?
Vielleicht ein oder zwei Beispiele, wie einige AAA-Titel mit ihren Sounds arbeiten.
Antworten:
Update Juli 2017
Wenn Sie Unity oder eine andere große Engine mit einem Asset-Management-System verwenden, fordern Sie Ogg Vorbis nicht bei Ihren Sounddesignern und Komponisten an. Holen Sie sich WAVs oder AIFFs.
Unity und Unreal sind so strukturiert, dass sie mit qualitativ hochwertigen Bounces arbeiten und dann die Komprimierungseinstellungen pro Plattform anwenden. Wenn Sie das Quell-Asset als Ogg oder Mp3 haben, komprimieren Sie das Audio doppelt und fügen zusätzliche Artefakte hinzu, ohne dass dies von Vorteil ist.
Wenn du siehst, dass Ogg oder MP3 deine Build-Größe reduzieren, ist das kein guter Grund. Dies bedeutet wahrscheinlich, dass Sie vor dem Exportieren andere Komprimierungseinstellungen verwenden als in Unity / Unreal. Gibt es Hinrichtungen? Ja, aber Sie würden diese Antwort nicht nachschlagen, wenn Sie wüssten, wann diese Ausnahmen zutreffen.
Wenn Sie vorkomprimieren, um die Größe Ihres Repos zu verringern, verwenden Sie LFS, verwenden Sie ein zentrales Versionskontrollsystem oder grinsen und ertragen Sie es.
TL; DR
Die wahre Antwort
In MP3 codiertes Audio ist unabhängig von der Codierungsqualität immer verlustbehaftet. Es ist ein wahrnehmbarer Codec und codiert daher die Eigenschaften des Klangs über die Zeit in ~ 1152 Sample-Chunks in komprimierter Form, aus denen unkomprimierte Samples vom Decoder extrapoliert werden können. Ihr Ziel ist es, das Original-Audio nicht genau wiederzugeben, sondern nur ein Audio bereitzustellen, das "gut genug" ist.
Wie Sie sagten, klingt 320 kbit / s jedoch sehr gut. Es wird allgemein als genauso gut oder besser angesehen als die CD-Qualität. Es ist jedoch immer noch nicht möglich, die ursprünglichen Samples eines unkomprimierten WAV, das als MP3 mit 320 kbit / s codiert ist, perfekt wiederherzustellen.
Generell ist Ogg Vorbis ein besseres Format als MP3. Es ist allgemein üblich, eine bessere Qualität für Dateien gleicher Größe zu erzielen, und MP3 kann im Gegensatz zu MP3 problemlos nahtlos geloopt werden. Diese 1152-Sample-Chunks, die MP3 zum Codieren von Audio verwendet, lassen zu Beginn und am Ende eines Sounds häufig Stille. Nicht so wichtig für grundlegende Soundeffekte, aber ein massives Problem für Musik-Loops.
Die Flash-IDE umgeht dies während des SWF-Exports und entfernt die Stille manuell. Personen, die Streaming-Audio (oder reines mxmlc) verwenden, können Loops über das SampleDataEvent erstellen und Samples manuell ablegen oder die MP3-Datei vorverarbeiten (siehe Blog von Andre Michelle und das Dienstprogramm CompuPhase mp3loop ).
Außerdem müssen Sie für die technische Verwendung eines MP3-Decoders eine Patentlizenz erwerben (da das MP3-Patent Eigentum von Technicolor, Fraunhofer und anderen ist). Offensichtlich haben Unmengen von Leuten Freeware-Spiele veröffentlicht, die MP3 verwendet haben, aber es ist das Beste, sich damit nicht herumzuschlagen.
Das hängt davon ab: Was sind Ihre Zielplattformen, welche anderen Technologien verwenden Sie, wie verbreiten Sie Ihr Spiel und welchen Stil möchten Sie? Ich werde dies in einige Kategorien aufteilen, basierend auf Plattform, Technologie und Ästhetik.
High-End-PC- und Konsolentitel
AAA-Spiele stehen für erstklassige Produktionsqualität. Sie zeichnen also unkomprimierte Assets mit 24 Bit / 48 kHz auf und produzieren sie (auch der Standard für die Postproduktion von Filmen). Titel mit etwas geringeren Ambitionen als Battlefield 3 könnten in 16 / 44.1 aufgenommen und produziert werden, was der offizielle Standard für Audio in CD-Qualität ist.
Natürlich kann man mit einem Spiel keine 24/48 unkomprimierten WAVs ausliefern, es wäre zu groß. Letztendlich muss also eine Art Komprimierung stattfinden. Grundsätzlich gilt: Wenn es sich um einen schnellen Soundeffekt handelt, der einem Pistolen-Sound ähnelt (wie das Zischen der Portal 2-Pistole in Sprunths Antwort), ist es in Ordnung, ihn als WAV zu belassen und möglicherweise die Samplerate abhängig von der Frequenz zu verringern (siehe Nyquist-Theorem , Töne, die aus niederfrequenten Inhalten bestehen, können mit niedrigeren Abtastraten codiert werden. Bei Musik führt kein Weg an einer Komprimierung vorbei. Ogg Vorbis in CD-Qualität ist der richtige Weg (44,1 kHz, Qualität 5-6 oder höher).
Bei AAA-Spielen wird häufig ein zwischengeschaltetes Tool für die Komprimierung verwendet, entweder ein internes Tool oder Audio-Middleware wie FMOD oder Wwise. In FMOD und Wwise funktioniert dies so, dass Sie die meisten Dateien als 16 / 44.1- oder 24/48-WAV-Dateien importieren (oder, wenn der Sound nur aus niederfrequenten Inhalten besteht, mit einer niedrigeren Abtastrate importiert werden kann). Geben Sie dann FMOD ein ein Komprimierungsfaktor für jedes Asset, der eine Codierung wie ADPCM, MP3 oder Ogg Vorbis auswählt.
FMOD hat kürzlich die Unterstützung für die Codierung von Assets in den Soundbanks, die Sie aus FMOD Designer (.fsb-Dateien) als Ogg Vorbis exportieren, zugunsten eines neuen Codecs von Xiph namens CELT eingestellt . Ogg Vorbis kann die CPU etwas strapazieren, daher wird CELT entwickelt, um eine Alternative zu bieten. Sie können die Dateien direkt laden, sie jedoch nicht mehr für die Codierung aus der Designer-Anwendung verwenden.
Übrigens, hier ist ein cooler Link zu Battlefield Bad Companys Audio , der auch ein bisschen in Surround geht. DICE ist im Bereich der Audiotechnologie in Spielen so ziemlich an der Spitze, daher ist es eine gute Serie zum Lernen.
Bezogen auf Surround ist auch das Problem Mono vs Stereo. Nur für den Fall, dass Sie es nicht wussten, sollten alle Ihre Soundeffekte mono sein, es sei denn, einige von ihnen verwenden tatsächlich Panoramaeffekte. Es ist schwierig, Stereos räumlich in eine 3D-Umgebung umzuwandeln, und Sie können Sounds im Code schwenken, um sie in einer 2D-Umgebung zu platzieren.
Etwas weniger High-End-Titel, Indie-Spiele
Offensichtlich kann dies stark variieren. Ein kurzer Blick zeigt, dass Frozen Synapse ausschließlich Ogg Vorbis-Dateien für Soundeffekte und Musik verwendet. Dungeons of Dredmor hingegen folgen dem Schema von Ogg Vorbis für Musik und 16 / 44.1 WAV für Soundeffekte.
Der Dungeons of Dredmor-Ansatz ist vorzuziehen. Sogar als unkomprimierte WAVs gespeichert, sind die Soundeffekte im Allgemeinen so kurz, dass sie nicht so viel Platz beanspruchen, und Sie sparen eine Menge CPU-Zyklen, die sie nicht dekodieren müssen. Sie möchten in der Lage sein, einen Soundeffekt schnell in den Speicher zu laden und abzuspielen. Wenn Sie Ihre Soundeffekte in Ogg Vorbis kodieren, kann es zu einer geringfügigen Verzögerung kommen, bevor ein Player Ihren Soundeffekt zum ersten Mal hört.
Browsergames, HTML5 und Flash (mit einem Hauch von Mobile)
HTML5-Audio ist ein Chaos. Sie müssen sowohl Ogg- als auch MP3-Versionen Ihrer Sounds bereitstellen. Codieren Sie in höchster Qualität, ohne dass Ihr Benutzer bei der langen Ladezeit wütet. Bei MP3 sollten Sie 128k nicht unterschreiten, bei 128 ist das schon schlimm genug.
Flash akzeptiert nur 16-Bit / 44,1-kHz-MP3, es sei denn, Sie sind verrückt und schreiben Ihren eigenen Decoder für ein anderes Format (wie den experimentellen Ogg Vorbis-Decoder in den Alchemy-Labors). In der Vergangenheit hatte Flash Probleme mit MP3s mit variabler Bitrate, aber ich hatte nie ein Problem. Die Qualitätseinstellung, die Sie für Ihr Flash-Spiel auswählen, hängt davon ab, wie groß Ihre endgültige SWF-Datei sein soll.
Update: Wie Tetrad bereits erwähnt hat , müssen mobile Spiele in Bezug auf Speicher und Speicher berücksichtigt werden. Die Art und Weise, wie Sie Ihre Audiodaten für mobile Spiele codieren, ist der von Flash sehr ähnlich. Sie möchten eine möglichst hohe Qualität beibehalten, müssen jedoch letztendlich ein Speicher- und Speicherbudget bereitstellen. Tracker-Musik ist besonders gut, wenn Sie ein knappes Speicherbudget für Musik haben. Weisen Sie Ihren Komponisten an, seine Beispielpalette zu beschränken, und Sie können eine Tonne mehr Musik in das Spiel einfügen .
"8-Bit" - oder Chiptune-Soundeffekte und Musik
Die meisten Spiele werden genau das tun, was Frozen Synapse und Dungeons of Dredmor tun. Sie können jedoch wahrscheinlich mit einer Verringerung der Abtastrate und der Bittiefe davonkommen. Vielleicht passt es nicht nur zu Ihrer gewünschten Ästhetik, sondern spart Ihnen auch Platz.
Außerdem speichert Trackermusik Samples im Allgemeinen mit niedrigen Sampleraten. Lassen Sie es einfach geschehen.
quelle
Wie die Branche mit dem Sound umgeht, weiß ich nicht genau.
Aber wenn ich meine Spiele durchschaue, packen die meisten sie in eine dat-Datei oder auf andere Weise.
Hier sind ein paar Audiobits, die ich ziehen könnte:
Da ich keine der dat, etc-Dateien (mit Ausnahme von Portal 2's GCF) entpacken konnte, zeigen die Ergebnisse möglicherweise nicht das Spektrum auf dem Markt. Ich habe versucht, Ihnen eine Auswahl von Spielen zu geben, und diese, deren Audio nicht verpackt ist, scheinen ähnliche Ergebnisse zu liefern.
quelle
4000 Degrees Kelvin
ist vom ersten Portal, nicht vom zweiten.Nach meiner Erfahrung (meistens bei mobilen Titeln) sollte die Audioqualität so gering wie möglich sein, ohne dass offensichtliche negative Nebenwirkungen auftreten, damit Sie für andere Dinge mehr Speicherplatz haben.
Bedenken Sie, dass die Komprimierung nicht unbedingt bedeutet, dass Ihre Qualität zu niedrig ist. Ihr Publikum wird nicht nebeneinander Vergleiche mit den Basistönen anstellen, wie Sie es sind. Wenn es also durch die verlustbehaftete Komprimierung etwas verpasst, wird es im Allgemeinen nichts davon wissen.
Beispielsweise müssen Sie sich fragen, ob es einen Grund gibt, Stereoklänge oder Musik zu verwenden. Ist der Effekt, den Sie damit erzielen, fast doppelt so hoch? Je nachdem, wie Musik geschrieben wurde, lautet die Antwort möglicherweise "Ja". Einige Engines unterstützen nicht einmal Stereoquellen für Soundeffekte. So was.
Wo diese Linie ist, ist natürlich sehr subjektiv. Es gibt andere Antworten, die spezifischere Faustregeln enthalten.
Das Wichtigste ist, Standards zu haben, diese frühzeitig festzulegen und zu versuchen, sich daran zu halten. Wenn Sie Musik für ein Spiel erstellen und die Hälfte der Bitrate benötigen, um in den Speicher zu passen, wird es Ihnen viel schlechter gehen, als wenn Sie zunächst eine niedrige Qualitätsstufe einstellen.
quelle
Wenn Sie auf eine bestimmte Plattform (iPhone, Xbox 360, PS3) abzielen, sollten Sie prüfen, ob die Hardware über einen Audiodecoder verfügt. Wenn ja, sollten Sie es verwenden. Sie sparen CPU-Zeit (und Akkulaufzeit!), Indem Sie das Audio auslagern, und Sie können die APIs dieser Plattform voll ausnutzen. Noch wichtiger ist, dass die Hardwarebeschleunigung davon abhängt, dass Ihr Audio in einem bestimmten Format vorliegt - Ihre Wahl wird also bereits getroffen.
Wenn Sie jedoch auf einen PC abzielen, sind Ihre Optionen vielfältiger. Ich würde einfach das Format mit der kleinsten Dateigröße auswählen, die für Ihre Ohren immer noch gut klingt, und damit arbeiten.
quelle
Es hängt davon ab, was die verlustbehaftete Codierung „verdeckt“. Wenn Sie sich Sprunths Antwort ansehen, ist der allgemeine Trend für Musik eine hohe Qualität für das Menü und eine niedrige Qualität für In-Game-Musik. Der Grund ist wahrscheinlich, weil:
Schließlich ist ein weiterer Trend aus seinen Antworten, dass die meisten Effekte 44 kHz / 16 Bit sind; Bei einigen älteren Spielen war es jedoch möglich, mit 22 KHz / 16 Bit ("Klangqualität") zu arbeiten - für den Fall, dass Ihre Soundkarte die höhere Abtastrate nicht verarbeiten kann.
quelle