aspose.info
FI

Mikä on SMK-tiedosto? Kuinka avata, toistaa ja muuntaa Smacker-video

Päivitetty

Smackerin (.smk) ymmärtäminen: Klassinen videomuoto PC-pelaamisen kultakaudella

Jos pelasit PC‑videopelien parissa 1990‑luvun puolivälistä loppuun 1990‑luvun loppuun tai 2000‑luvun alkuun — kuten Diablo, StarCraft, Baldur’s Gate tai Warcraft II — olet törmännyt Smacker‑videomuotoon (.smk).

Ennen kuin laitteistopohjainen MPEG-purkukoodaus ja omistetut moniytimiset suoritinarkkitehtuurit tulivat standardiksi henkilökohtaisissa tietokoneissa, sujuvan, synkronoidun täysliikekuvan (FMV) toistaminen moniraitaista digitaalista ääntä käyttäen oli valtava laskennallinen haaste. Standardi CD-ROM-asemat siirsivät dataa vaatimattomalla 150–300 KB/s (1x–2x nopeus), eikä tavallinen 486- tai varhaisen Pentium-prosessori pystynyt käsittelemään laskennallisesti raskaita muunnoskoodekkeja.

Ratkaistakseen tämän, RAD Game Tools kehitti Smackerin, korkean tehokkuuden videorakenteen, joka on optimoitu erityisesti pelkästään ohjelmistopohjaiseen purkuun. Raakat tai kapseloidut videotiedostot, jotka on tuotettu tällä putkella, käyttävät .smk-tiedostopäätettä.

1. Mikä on SMK-tiedosto?

An .smk-tiedosto on proprietaarinen multimedia­kontti ja videovirta, jonka on luonut RAD Game Tools (nykyään osa Epic Gamesia). Noin vuonna 1994 esitelty Smacker mahdollisti kehittäjille 256‑väristen täyden liikkeen elokuvien suoratoiston suoraan yksinopeuksisista CD-ROMeista ilman ruutujen pudottamista tai järjestelmän jumiutumista.

Toisin kuin nykyaikaiset interframe‑koodekit, jotka luottavat voimakkaasti liukuluku‑laskentaan ja diskreettiin kosinimuunnokseen (DCT), Smacker suunniteltiin toimimaan lähes kokonaan kokonaislukuoperaatioiden, hakutaulukoiden ja matalan tason x86‑assembly‑rutiinien avulla. Se hallitsi 1990‑luvun pelielokuvia, kunnes RAD Game Tools esitteli sen 24‑bittisen todellisen värin seuraajan, Bink Video (.bik), vuonna 1999.

2. Smacker-koodekin keskeiset ominaisuudet

Smackerin kestävä tekninen perintö johtuu sen räätälöidystä tasapainosta alhaisen laskennallisen monimutkaisuuden ja visuaalisen tarkkuuden välillä indeksoidulla väri­laitteistolla:

8-bittinen indeksoitu paletin kvantisointi

1990‑luvun puolivälissä suurin osa PC‑näytöistä toimi 256‑värisissä VGA- tai SVGA-tiloissa (8‑bittinen paletti). Smacker omaksui tämän rajoituksen. Sen sijaan, että tallennettaisiin 24‑bittisiä RGB‑arvoja ja pakotettaisiin käyttöjärjestelmä suorittamaan hidas dithering lennossa, Smacker pakasi videokehykset suoraan dynaamisia 256‑värisiä paletteja vastaan.

Kehys kerrallaan tapahtuva paletin muuntelu ja kierrätys

Smacker tuki saumattomia palettipäivityksiä kehysten välillä. Jos pelin leikkauskohtaus siirtyi kirkkaasta päivänvalosta pimeään luolaan, .smk-tiedosto saattoi tuoda paikallisia palettimuutoksia tai kokonaisia palettinvaihtoja tietyissä avainkehyksissä, välttäen väriraittoja ja värivirheitä.

Vektorikvanttaus & Lohkojen hajotelma

.smk-virran kehykset jaetaan $4 \times 4$ pikselin lohkoihin. Smacker käyttää vektorikvanttausmenetelmiä yhdistettynä tiiviiseen joukkoon toimintatiloja per lohko:

  • Skip: Säilytä edellisen kehyksen pikselit.
  • Solid/Single Color: Täytä koko $4 \times 4$ -lohko yhdellä palettinumerolla.
  • Two-Color / Bitmask: Määritä kaksi palettimerkintää ja käytä 16-bittistä maskia jokaisen pikselin kartoittamiseen.
  • Full Data: Tallenna suoraan yksityiskohtaiset pikselijonot, kun tapahtuu monimutkaista liikettä.

Tämä lohkotasoinen luokittelu mahdollisti staattisten taustojen ja paikallisen toiminnan (kuten puhuvien hahmojen tai vierittävien valikoiden) sisältävien kohtauksien pakkaamisen lähes merkityksettömiin tiedonsiirtonopeuksiin.

Natiivi moniraita-äänimultipleksaus

Smacker oli yksi ensimmäisistä pelikeskeisistä formaateista, jotka tukivat integroitua monikanavaista, moniraitaa äänentoistoa. Kehittäjät pystyivät lomittamaan pakattua mono- tai stereosoundia suoraan videopätkien viereen. Tämä arkkitehtuuri tuki:

  • Alkuperäinen pakkaamaton PCM-ääni.
  • RAD:n omaa adaptiivista DPCM-pohjaista äänenpakkausta (pakkaa äänen 4-bittiseen esitykseen minimaalisella CPU-kuormituksella).
  • Itsenäiset kieliradat kansainvälisiä pelien lokalisointeja varten ilman, että taustavideorataa täytyy monistaa.

Epäsymmetrinen suunnittelu (nopea purku nopeampaa pakkausta)

Smackerin pakkausalgoritmit olivat tarkoituksellisesti epäsymmetrisiä: koodaus vaati merkittävää aikaa ja matemaattista optimointia, mutta purku vaati vain vähäisimpiä CPU-syklejä. Kohtuullinen 33 MHz 486 -tietokone pystyi purkamaan 15–30 FPS Smacker‑videon reaaliajassa säilyttäen äänen synkronoinnin.

3. Keskeisten ominaisuuksien yhteenveto

AttribuuttiMäärittely
KehittäjäRAD Game Tools (Hankittu Epic Gamesin toimesta vuonna 2021)
Alkuperäinen Julkaisu1994
Tiedostopääte.smk
JatkajaBink-video (.bik, .bk2)
Värisyvyys8-bittinen indeksoitu (256 valittavissa olevaa väriä per ruutu)
MuunnosmenetelmäSpatiaalinen vektorikvanttaus ($$4 \times 4$$ lohkojen jakaminen)
Aikapohjainen pakkausKehysvälinen lohkojen vastaavuus paletin syklistä seurannalla
ÄänimuotoLineaarinen PCM, Smacker 4-bittinen DPCM, moniraita kanavat
Ensisijainen teollisuuden käyttöVideopelien leikkauskohtaukset, introelokuvat, animoidut logot
Dekoodauksen tukiSisäänrakennettu FFmpegin, Libavcodec:n ja RAD Video Toolsin avulla

4. Kuinka avata ja toistaa .smk‑videotiedostot

Koska nykyaikaiset mediasoittimet eivät enää tarjoa valmiina tukea vanhoille 8‑bittisille pelivideoille, tavalliset sovellukset kuten Windows Media Player tai QuickTime eivät pysty avaamaan .smk‑tiedostoja. Voit toistaa ne luotettavasti seuraavilla työkaluilla:

Menetelmä 1: VLC Media Player (monialustainen)

VLC sisältää natiivin dekoodaus tuen Smacker‑videolle ja -äänelle FFmpeg:n libavcodec-kirjaston kautta:

  1. Lataa ja käynnistä VLC Media Player.
  2. Vedä ja pudota .smk‑tiedosto suoraan VLC‑ikkunaan.
  3. Huomautus: Jos värit vaikuttavat liian kylläisiltä tai siirtyneiltä, VLC:n laitteistopohjainen videokiihdytys voidaan tilapäisesti poistaa käytöstä kohdassa Tools > Preferences > Input / Codecs, jotta ohjelmistopohjainen värikartoitin renderöi 8‑bittisen paletin suoraan.

Menetelmä 2: FFplay (komentorivi)

Jos sinulla on FFmpeg-paketti asennettuna, mukana tuleva ffplay-apuohjelma on nopein ja tarkin tapa renderöidä .smk-virtoja:

ffplay cutscene.smk

Menetelmä 3: RAD Video Tools (Windows)

RAD Game Tools jatkaa The RAD Video Tools -apuohjelmistopaketin tarjoamista:

  1. Lataa ja asenna The RAD Video Tools viralliselta Epic Games / RAD -verkkosivustolta.
  2. Käynnistä apuohjelma ja selaa tiedostojärjestelmääsi korostaaksesi kohde .smk -tiedoston.
  3. Napsauta Play-painiketta katsellaksesi elokuvan alkuperäisellä, aidoilla skaalaus- ja palettiajoituksilla.

5. Kuinka luoda ja muuntaa .smk‑videotiedosto

Voitko edelleen luoda natiivisia .smk-tiedostoja?

Nykyaikaiset kehittäjät luovat harvoin alkuperäisiä .smk-tiedostoja, koska nykyaikainen laitteisto dekoodaa helposti 4K 10-bittisen HEVC:n tai AV1:n. Jos kuitenkin kehität kotitekoista ohjelmistoa, muokkaat klassisia pelejä tai rakennat retro-PC-projekteja,:

  • The RAD Video Tools sisältää perinteisen “Smack”-pakkaimen. Voit ladata pakkaamattoman .avi-tiedoston tai kuvasekvenssin ja koodata sen .smk-muotoon.
  • Huom: FFmpeg sisältää natiivin Smacker-dekooderin, mutta se ei sisällä natiivia Smacker-enkooderia, koska formaatti on proprietaarinen ja vanhentunut.

.smk-tiedoston muuntaminen nykyaikaiseen MP4:ään (H.264 / AAC)

Jotta voit säilyttää vintage-leikkauskohtaukset tai ladata ne nykyaikaisille alustoille (kuten YouTube tai verkkoselaimet), muunna ne MP4-muotoon FFmpegillä:

# Convert classic Smacker video to modern universally compatible MP4
ffmpeg -i intro.smk -c:v libx264 -pix_fmt yuv420p -crf 18 -c:a aac -b:a 192k intro_restored.mp4

Vinkki: Koska .smk käyttää indeksoituja väripaletteja, pakottamalla -pix_fmt yuv420p varmistetaan, että nykyaikaiset mobiililaitteet ja verkkoselaimet toistavat videon ilman mustan näytön toistovirheitä.

6. Usein kysytyt kysymykset (FAQ)

**Q1: Mikä oli pääasiallinen syy, miksi pelinkehittäjät käyttivät SMK-tiedostoja? Smacker mahdollisti sujuvan, synkronoidun videotoiston hitailla CD-ROM-asemilla ja vähävirtaisilla suoritinilla ilman laitteistopurkuohjelmien tarvetta.

**Q2: Mikä on ero SMK-tiedoston ja BIK-tiedoston välillä? Smacker (.smk) on rajoitettu 256 väriin (8-bittinen), kun taas sen seuraaja, Bink Video (.bik), tukee täyttä 24-bittistä todellista väriä ja korkeampia resoluutioita.

**Q3: Voivatko nykyaikaiset verkkoselaimet toistaa .smk-tiedostoja natiivisti? Ei, nykyaikaiset verkkoselaimet eivät tue Smacker-koodekkia, ja tiedostot on ensin muunnettava MP4- tai WebM-muotoon.

**Q4: Tukeeko SMK-tiedosto useita äänikieliä samanaikaisesti? Kyllä, Smacker-säiliö mahdollistaa useiden itsenäisten ääniraitojen sisällyttämisen videon rinnalle paikallistetuille leikkauskohtauksille.

**Q5: Kuka omistaa Smacker-videoteknologian nykyään? Epic Games omistaa Smackerin sen jälkeen, kun se hankki RAD Game Toolsin tammikuussa 2021.

7. Lähteet ja hyödylliset resurssit