Portable Games 1. Geluid - Hoe een Game 90% kleiner te maken.

Door ObAt op maandag 25 april 2011 16:35 - Reacties (21)
Categorie: Geluid, Views: 4.184

Inleiding
Portable Games zijn erg handig, het zijn games die op een andere manier zijn ingepakt zodat je niet meer een oneindig lange installatie uit hoeft te voeren. Ook zijn sommige Direct Play RIPs vele malen kleiner dan het origineel. In deze post wil ik is wat algemene info geven over games.

Direct Play RIP's/Portable Games zijn vaak illegaal omdat deze een crack bevatten, in deze blog gaat het niet om het downloaden of verkrijgen van deze illegale bestanden maar om de technische inhoud van z'n RIP. Mocht BREIN deze post toch niet leuk vinden dan hebben ze pech kunnen ze zich bij mij melden :)

Opbouw van een spel
Vrijwel alle spellen verschillen gigantisch van elkaar, dit heeft te maken met de Engine van het spel (de manier hoe het spel in elkaar is gezet). Sommige spellen (Age of Mythology, Left4Dead2 ect) passen geen (extra) compressie toe op het spel, alle geluiden vind je gewoon terug als een .wavje ,ook alle models e.d. zijn allemaal los te vinden. Het voordeel hiervan is dat je in principe de hele game kunt veranderen en heel makkelijk mods en extra maps kan maken. Het nadeel hiervan is dat er meer dan 40.000 bestanden nodig zijn om Left4Dead2 werkend te krijgen. Ook is de game nogal groot (11.8GB). De vraag is, moet dat zo groot? Je hebt nu 3 DVD's nodig om het spel te installeren (of 1 dure DVD9 en een DVD5), dit is te gek voor woorden.

Nut van Compressie
Stel Left4Dead2 wordt 'maar' 10 Miljoen keer verkocht. Als we een spel hebben van 11.8GB en we verkopen het alleen via Steam dan is er dus 11.800.000GB=11.800TB! bandbreedte nodig om alleen al om het spel te kunnen downloaden! Ikzelf heb de game tot 2.45GB kunnen comprimeren, dat is een afname van 80%, en 80% is veel op 11.800TB. 9.440TB kon bespaard worden als de ontwikkelaars verder keken dan hun neus lang is. Ook voor spellen die steam nooit zullen zien is het handig. Zoals hierboven gezegd is een afname van 3 DVD's naar 1 DVD'tje ook de moeite waard om na te kijken.

Het enige probleem was dat lang niet alle computers zo krachtig waren om deze zware berekeningen te doen. Compressie is een vrij tijdrovend en zwaar proces als je het niet goed doet. Als je echt goed wilt 'inpakken' heb je toch wel 2GB RAM nodig. Dit klinkt allemaal zeer ernstig en heftig, maar de minimale systeemeisen van een nieuw spel zijn vaker gelijk of nog hoger! Dit probleem is dus ook opgelost!

Kwaliteit vs Grootte
Het gebruik van WAV bestanden is ongelooflijke overkill en niet nodig, deze manier van het opslaan van geluid heeft veel te veel schijfruimte nodig. MP3 bestanden worden vrijwel nooit toegepast in games omdat MP3 toch kwalitatief een stuk minder is en MP3 kent een heel aantal patenten. Zou het niet ideaal zijn als er nou een compressietechniek zou zijn die patentloos is en een veel betere compressie heeft dan Wav'jes? Dat zou inderdaad erg handig zijn, gelukkig bestaat zoiets ook nog! Ogg Vorbis is gemaakt door de Xiph.Org Foundation en is vrij van patenten! Ook is de compressie vele malen beter dan Wave.

Maar

Praktijk testje
Om te testen als wat ik allemaal uitkraam wel waar is heb ik een 1:1 CD gedownload. De download bestaat uit 15 Wave bestanden met een totale grootte van 576MB. Nadat ik deze met een command line programmaatje (oggenc2) heb gedecodeerd tot Ogg Vorbis bestanden bleef er nog maar 46,0 MB van over (=wtf!). Ook heb ik de Wave bestanden gedecodeerd tot MP3'tje (320Kbps) (De Call of Duty reeks maakt gebruik van MP3 compressie) en dit zijn de resultaten:

Wave: 576 MB (604.424.676 bytes)
MP3: 130 MB (137.019.375 bytes)
Ogg Vorbis: 46,0 MB (48.304.268 bytes)

Terug naar Left4Dead2, hier zitten 4.929GB aan Wave bestanden in!!! Dat is bijna de halve game! Nadat ik deze gedecodeerd heb na Ogg Vorbis bestanden en heb ingepakt met de simpele tool FreeARC is er nog maar 504MB van over! Dat is een afname van bijna 90%!! En dat al alleen met het inpakken van de muziek! Dan hebben we het nog niet over de models e.d.

Conclusie
Op gebied van compressie kunnen we nog veel leren, in deze kleine blogpost wil ik graag laten zien wat we op dit moment al kunnen maar niet doen. In deze post heb ik het alleen over muziek gehad, ik ga het hierna nog over andere bestanden houden. Ook zal ik het nog is goed hebben over de verschillende manieren om iets te comprimeren.

Voor alle duidelijkheid
Na een aantal reacties wil ik graag het volgende toevoegen, ik heb deze post gemaakt om te laten zien wat nu mogelijk is, zonder rare dingen te hoeven te gebruiken. Voor ontwikkelaars is het ook niet veel werk om Ogg Vorbis toe te voegen aan de game aangezien het gewoon een 'Dll-bestandje' is wat ze moeten toevoegen (hetzelfde als bij MP3 en WAV, of voor video Bink bestanden). Het is misschien nog wel minder werk omdat er geen gezeur meer is over patenten e.d. Het decoderen van een Wave bestand naar Ogg Vorbis duurt ongeveer net zolang als van Wave naar MP3. Het afspelen van Ogg'jes slaat er ook niet in, vrijwel niets is er voor nodig (net als de andere formaten).

Q: Wav/Wave ~OMG~ wat is het verschil?
A: Een Wave bestand heeft als extentie .wav het zijn dus de zelfde bestanden.
Q: Kan ik Ogg Vorbis nu ook al gebruiken?
A: Jup, gratis te downloaden via http://www.vorbis.com/ :)
Q: En Direct Play en Portable dan? Wat is daar het verschil tussen.
A: In principe wordt er hetzelfde mee bedoelt :D

KPN Chatheffing nu al onderuit gehaald?

Door ObAt op maandag 25 april 2011 11:55 - Reacties (17)
Categorie: Frontpage Reloaded, Views: 3.888

Inleiding
Iedereen heeft er nu wel van gehoord, de Chatheffing van KPN. Deze gevaarlijke (en als ik de Poll van Tweakers moet geloven bijna fatale) gok van KPN heeft nu al de nodige woede vrijgemaakt. Maar houdt de Chatheffing eigenlijk in?

Geschiedenis
In de steentijd hadden we beschikking over twee mobiele communicatie mogelijkheden (als men rooksignalen niet meerekent), genaamd Bellen en SMS'en. Dit heeft opzicht altijd goed gewerkt, maar natuurlijk was het vrij prijzig. Een aantal jaren later zagen de telecombedrijven een nieuwe manier om manier om geld uit onze beurzen te krijgen, Internet!

Rond 2007 begon KPN (en de andere telecombedrijven) met het aanbieden van Internet op je mobiel voor een betaalbare prijs. 10 euro per maand moest er toen voor worden neergelegd, iets wat veel mensen deden. Maar toen kwam een grote prijsoorlog, en in 2010 was het zelfs mogelijk om voor §2.50 in de maand aan te schaffen! Dit zorgde natuurlijk dat een heleboel extra mensen Internet aanschafte.

Tot nu toe klinkt nog alles positief, maar sinds vorige jaar zijn door de prijsoorlog 2 problemen ontstaan. Tegenwoordig is er een capaciteitsprobleem en een afname van SMS'jes en Belminuten. We zullen ons vooral focussen op het tweede probleem, maar eerst gaan we toch kort in op het capaciteitsprobleem.

Capaciteitsprobleem
Het probleem is mooi te vergelijken met de volgende vergelijking: Stel je hebt een 120Mbit verbinding van Ziggo en je hebt zin om een LAN-party te houden. Jullie zijn eerst met 10 man en spelen een bepaalde MMORPG die 3Mbit nodig heeft per persoon. Alles moet in principe soepel werken, maar je nodigt nog wat vrienden uit en uiteindelijk zijn er 50 mensen! 30 Personen spelen de MMORPG (90mbit in totaal), 10 mensen surfen wat op het internet (~5mbit) en de andere 10 mensen willen wat downloaden (80Mbit).

Je zal zien dat dit niet gaat werken, je wilt van een 120mbit verbinding 175mbit gebruiken. Dit werkt niet en iedereen zal langzamer internet krijgen, de games gaan hakkelen, het laden van websites duurt heel lang en het downloaden is niet meer de moeite waard.

Ditzelfde probleem heeft KPN nu, er zijn in principe (bijna) teveel mensen op het netwerk van KPN. Het probleem is, dat iemand die een aantal emails leest via 3G (Mobiel Internet) net zo veel moet betalen als iemand die constant Youtube zit te kijken. Om goede vergelijkingen te maken zijn hier een aantal getallen:

Email lezen: 10-30kb
Foto kijken: 300kb-5MB
MP3 downloaden: 5MB
Youtube Video kijken: 30mb-150mb (!!!)
KPN Download Limiet: 1GB

Omdat Youtube steeds populairder werd en er dus steeds meer Youtube werd gekeken moest KPN nieuwe regels maken om te voorkomen dat een iemand half Usenet leeg download via zijn mobiel. De uitkomst daarvan is de FUP, deze regel zegt in principe dat jij als klant niet meer mag gebruiken als 10x het verbruik van een gemiddelde klant. Het enige nadeel aan dit systeem is dat KPN nooit bekent heeft gemaakt wat nou het gemiddelde verbruikt was, dus je wist nooit hoeveel je mocht verbruiken!

Afname van SMS'en en Bellen
Om te beginnen stellen we onszelf de vraag "Waarom neemt het SMS'en en Bellen eigenlijk af?"

Nadat Smartphones erg populair werden in 2009 en 2010 (en bijna gratis worden weggeven bij een kilo suiker) werd ook Internet op Mobiel erg populair. Het voordeel van Smartphones is dat je Apps kunt maken (programma's voor de telefoon). Twee beruchte Apps zijn WhatsApp en Scydo. De ontwikkelaars van WhatsApp waren erg slim. Ze bedachten dit:

Iedereen vindt SMS'en erg handig, maar wel duur. Ook heeft tegenwoordig bijna iedereen een internet verbinding. Als het sturen van een 140byte tellend SMS'je meer dan 20 cent kost, en je tegenwoordig een paar Gigabyte internet mag verbruiken voor §2.50 waarom SMS'en we dan niet via internet? WhatsApp maakt dit mogelijk, hij stuurt de berichten via Internet waar je dan niets extra's voor betaald. Het enige nadeel is, is dat de verzender en ontvanger moet beschikken over WhatsApp (en dus een mobiel met Android, iOS, Blackberry OS of Symbian) met mobiel internet. Het zelfde geld voor Scydo, alleen kun je daar niet via SMS'en maar Bellen!

Monopolie?
KPN ziet een grote afname van SMS'jes en Belminuten omdat wij fijn met z'n alle elkaar WhatsAppen en Scydo'en. KPN wilt dus eigenlijk stiekem de diensten het liefst blokkeren zodat iedereen wel weer moet gaan SMS'en en bellen via KPN. Uiteindelijk mag je dan wel WhatsApp en Scydo gebruiken als je extra gaat betalen, en voor het kijken van Youtube vragen telecomaanbieders Google zelfs om extra te betalen (=wtf?). Eens een vergelijking maken:

Stel je verkoopt toetsenborden van Logitech via internet en verzend ze via TNT post. Je verkoopt zo veel toetsenborden dat je eigenlijk gek wordt van de verzendkosten en gaat dus Logitech vragen als ze niet wat willen meebetalen aangezien het hun toetsenborden zijn.

Nee dat werkt zo niet, en hetzelfde geld voor extra abonnementen aanschaffen om WhatsApp te kunnen gebruiken. Dat is gewoon gebruikmaken van een monopolie! (het blokkeren van je concurrenten) Dat kunnen we vergelijken (yes weer een vergelijking!) met deze situatie:

Stel je koopt een doos lege frietzakjes bij de Sligro (een universeel product, lees: internet), maar je moet wel 5 euro extra betalen omdat je er niet de frieten van C1000 (lees: KPN's eigen SMS'jes) in wil doen maar van de Aldi (WhatsApp).

Als dat zal gebeuren dan gooi je toch ook de doos met frietzakjes naar de verkopers zijn/haar hoofd. Als ik iets van Merk X koop betekend dat toch niet dat ik verplicht ben om bij een andere aankoop ook Merk X te kiezen. Als ik Merk Y koop krijg ik geen extra rekening thuisgestuurd van Merk X, waarom nu wel?

Valsspelen
Dan komt de vraag nog, hoe KPN het wil controleren dat jij WhatsApp gebruikt. Dit is opzicht niet moeilijk, als jij naar www.google.com gaat dan stuurt KPN jou de site door. Alles gaat via KPN zelf, ze kunnen dus heel makkelijk iets blokkeren (net zoals in een Firewall). Als KPN google.com blokkeert kun je er gewoon niet meer naar toe navigeren. Doe je dat wel dan krijg je een mooie grote error.

Maar niet getreurd, we kunnen valsspelen!

http://img219.imageshack.us/img219/2366/kpn1.jpg
Zo werkt KPN tegenwoordig, als jij WhatsApp gebruikt geeft KPN netjes alle informatie door.

http://img192.imageshack.us/img192/3006/kpn2r.jpg
Als KPN WhatsApp gaat blokkeren ziet het er zo uit, een schokkend beeld! Het is nu dus niet meer mogelijk om WhatsApp te gebruiken :(

http://img40.imageshack.us/img40/9887/kpn3.jpg
(Klik op de afbeelding om hem helemaal te zien)
Zo werkt een Proxy, je doet net alsof je een andere website bezoekt, en die website stuurt stiekem alle informatie door van een geblokkeerde site. KPN kan dit niet voorkomen omdat KPN geen proxy site´s mag blokkeren en daar Łberhaupt geen beginnen aan is aangezien er duizenden van z´n site´s zijn.

Conclusie
WhatsApp heeft op dit moment nog geen Proxy opties, maar ikzelf heb de ontwikkelaars al gemaild en ze willen in een volgende versie van WhatsApp wel een proxy functionaliteit toevoegen. Oftewel, voert KPN de chatheffingen in dan krijgen ze nog heel wat problemen! Het wordt dan meer een kat-en-muis spel zoals Sony ook heeft met de Playstation. Het is eigenlijk technisch onmogelijk om een website volledig te blokkeren aangezien we tegenwoordig over zeer goede encryptie beschikken.

Dus KPN succes, we horen nog van je!