Tehokkaita videon kompressointimetodeja?

Tallensin erään kompressoimattoman videotiedoston (uncompressed RGB/YCbCr), seuraavin asetuksin valiten containerformaatiksi AVI:n :

VIDEO

MPEG-4 ASP (Xvid)

Constant Quantiser (Single Pass) = 1

Motion estimation: High

Rate distortion optimization: Wide Search

Rate distortion optimization for B-frames = Yes

Chroma motion estimation = Yes

Quarter pixel motion estimation = Yes

Global motion compensation = Yes

Frame encoding; chroma optimizer = Yes

Four motion vectors per macroblock = Yes

Quantisation matrix = MPEG Matrix

AUDIO

Audio = MP3 (lame); quality = 2; Bitrate = 128


Tuo kompressoimaton (uncompressed RGB/YCbCr) AVI-tiedosto vie aivan tuhottomasti tilaa, mutta tämä tuosta
MPEG-4 ASP (Xvid) -AVI:stakin tuli aivan tolkuttoman iso, useita gigoja.

Toki nuo asetukset, joita käytin, ovat varmaan parhaat mitä MPEG-4 ASP (Xvid) -AVI-tiedostoille ylipäänsä saa ja karsisin niistä hieman, mutta sitä ennen kuitenkin olisi hyvä tietää pari asiaa:

Onko jokin containerformaatti (AVI, MP4, OGM jne.) selvästi parempi kuin muut? Käsittääkseni containerformaatilla ei niinkään pitäisi olla väliä, vaan ennemminkin sillä, mitä kompressointimetodia käyttää (MPEG-4 ASP [Xvid], MPEG-4 ASP [lavc], VCD [lavc], SVCD [lavc], DVD [mpeg2-enc], MPEG-2 requant, MJPEG, FLV1, MPEG-1 [avcodec] jne.) Kuitenkin sen verran pitää sanoa, että olen huomannut joitakin uskomattoman hyvin pakattuja MKV-videita (Matroska) mutta omat videoneditointityökaluni (Avidemux & VirtualDub) eivät tuota Matroskaa tue.

Millä asetuksilla näitä videoita kannattaisi tallentaa, jotta laatu säilyisi mahdollisimman hyvänä mutta tiedoston koko verrattain pienenä? Paras laatu/koko -suhde siis. Onko esim. kehitetty joitakin uusia pakkausmetodeja, jotka pystyvät säilyttämään laadun tekemättä tiedostosta tolkuttoman isoa?

Huom! Tiedostoa ei tarvitse pystyä toistamaan millään standalone -soittimella kuten DVD- tai Bluray-soittimella!
8230
Äänestä

Muut lukivat myös

Vastaukset 8

Vanhimmat

Sori virheestä avausviestissäni ----> kyllä tuo Avidemux tukee Matroskaa!

Äänestä

H.264 AVC pakkaa paremmin. Avidemuxissa näkyy x264. Pakkausta voi tietysti parantaa kun tekee two-pass:lla haluttuun kokoon tai bitrateen, ja käsittelemällä materiaalia ensiksi esimerkiksi poistamalla kohinaa.

Tietysti laatu kärsii aina kun pakataan häviöllisesti.

Äänestä
  • Valitettavasti mulla ei näy tuota Avidemuxissa! Sen sijaan ffdshow on käytettävissä VirtualDubissa. Jos valitsen sen ja laitan encoderiksi "H.264" niin päästään kaiketi oikeille jäljille. Siitä mulla ei sen sijaan ole mitään hajua, mikä kannattaisi valita FOURCC-kohtaan: H264, X264, AVC1 vai CCV1? Sama ongelma monien muidenkin ffdshow:n enkoodausta koskevien asetusten kanssa.

    En edes löytänyt kunnon manuaalia ffdshow:lle... siis sellaista, joka kertoisi, miten eri asetukset vaikuttavat videon laatuun ja kokoon. Juuri sellaista tarvitsisin tähän hätään!

    Äänestä

  • KebukaiGeriNoKoumon kirjoitti:

    Valitettavasti mulla ei näy tuota Avidemuxissa! Sen sijaan ffdshow on käytettävissä VirtualDubissa. Jos valitsen sen ja laitan encoderiksi "H.264" niin päästään kaiketi oikeille jäljille. Siitä mulla ei sen sijaan ole mitään hajua, mikä kannattaisi valita FOURCC-kohtaan: H264, X264, AVC1 vai CCV1? Sama ongelma monien muidenkin ffdshow:n enkoodausta koskevien asetusten kanssa.

    En edes löytänyt kunnon manuaalia ffdshow:lle... siis sellaista, joka kertoisi, miten eri asetukset vaikuttavat videon laatuun ja kokoon. Juuri sellaista tarvitsisin tähän hätään!

    Eli siis peruskäyttäjän tyypillinen ongelma: siitä on hyvin rajallisesti videon editoinnissa hyötyä jos selitetään hankalatajuisella jargonilla, mikä on "uggabugga" mikäli samalla ei mainita, miten se vaikuttaa laatuun ja kokoon sekä anneta aiheesta havainnollistavia esimerkkejä. Kuva kun kertoo usein enemmän kuin tuhat sanaa.

    FFdshown käyttö ei ole niitä maailman helpoimpia asioita mikäli termit eivät ole hallussa:
    http://sourceforge.net/dbimage.php?id=6908

    Äänestä

OK. Kokeilen ehdottamaasi H.264 AVC:ta.

Jos kuitenkin havaitsen sen huonoksi ja pysyttäydyn MPEG-4 ASP (Xvid):issä, niin kannattaako aina käyttää Trellis quantizationia? Toisin sanoen huonontaako Trellis quantization laatua siinä määrin, että omin silminkin sen pystyy havaitsemaan? Entäs quantization matrix, onko H.264:n ja MPEG:in välillä silmin havaittavia laadullisia eroja?

Jos katsot videota osoitteessa http://blip.tv/play-value/commodore-64-4824234 , saat tuon pätkän ladattuakin (mm. JDownloaderilla ja Firefoxin DownloaderHelperillä pitäisi onnistua) ja vilkaiset videon ominaisuuksia esim. MediaInfolla, niin paljastuu seuraavaa:

Format : MPEG-4
Format profile : Base Media
Codec ID : isom
File size : 348 MiB
Duration : 8mn 0s
Overall bit rate : 6 069 Kbps
Writing application : Lavf52.68.0

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : [email protected]
Format settings, CABAC : Yes
Format settings, ReFrames : 2 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 8mn 0s
Bit rate mode : Variable
Bit rate : 5 911 Kbps
Nominal bit rate : 6 000 Kbps
Width : 1 280 pixels
Height : 720 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 23.976 fps
Resolution : 24 bits
Colorimetry : 4:2:0
Scan type : Progressive
Bits/(Pixel*Frame) : 0.268
Stream size : 339 MiB (97%)
Writing library : x264 core 98 r1643 0cd5d69
Encoding settings : cabac=1 / ref=2 / deblock=1:0:0 / analyse=0x1:0x111 / me=hex / subme=6 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=0 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / constrained_intra=0 / bframes=3 / b_pyramid=0 / b_adapt=1 / b_bias=0 / direct=3 / weightb=1 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=abr / mbtree=1 / bitrate=6000 / ratetol=0.7 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / ip_ratio=1.41 / aq=1:1.00
Language : English

VLC Media Player taas väittää seuraavaa:

Type: Video
Codec: H264 - MPEG-4 AVC (part 10) (avc1)
Language: English
Resolution: 1280x720
Frame rate: 23.976000

Kun taas Avidemux lukee videon ominaisuudet seuraavasti:

Codec 4CC: H264
Image Size: 1280 x 720
Aspect Ratio: 1:1 (1:1)
Frame Rate 23.976 fps
Frame Count: 11518 frames
Total Duration: 00:08:00.397

Extra Video Properties
Global Motion Compensation: No
Packed Bitstream: No
Quarter Pixel: No

Ei mielestäni laadullisesti lähelläkään parhaita asetuksia mutta silti video näyttää hienolta. En esim. huomannut minkäänlaisia compression artefacteja ja koko on säilytetty pienenä isosta resoluutiosta huolimatta. Onko noiden videoiden kanssa siis kikkailtu jotenkin muutenkin kuin mitä nuo asetukset kertovat? Voiko siis lopulliseen tiedostokokoon vaikuttaa muutenkin kuin containerformaattia ja codecia valitsemalla?

Äänestä
  • "Jos kuitenkin havaitsen sen huonoksi ja pysyttäydyn MPEG-4 ASP (Xvid):issä, niin kannattaako aina käyttää Trellis quantizationia? Toisin sanoen huonontaako Trellis quantization laatua siinä määrin, että omin silminkin sen pystyy havaitsemaan? Entäs quantization matrix, onko H.264:n ja MPEG:in välillä silmin havaittavia laadullisia eroja?"

    Trellis kvantisointi parantaa laatua jos bitrate pysyy samana. Matriiseihin en ole koskenut mutta se riippuu videomateriaalista.

    x264:llä saa vastaavalla laadulla videon puolet pienempään kokooon kuin Xvid:llä.

    Äänestä

  • m-kar kirjoitti:

    "Jos kuitenkin havaitsen sen huonoksi ja pysyttäydyn MPEG-4 ASP (Xvid):issä, niin kannattaako aina käyttää Trellis quantizationia? Toisin sanoen huonontaako Trellis quantization laatua siinä määrin, että omin silminkin sen pystyy havaitsemaan? Entäs quantization matrix, onko H.264:n ja MPEG:in välillä silmin havaittavia laadullisia eroja?"

    Trellis kvantisointi parantaa laatua jos bitrate pysyy samana. Matriiseihin en ole koskenut mutta se riippuu videomateriaalista.

    x264:llä saa vastaavalla laadulla videon puolet pienempään kokooon kuin Xvid:llä.

    Kiitos tiedoista!

    "x264:llä saa vastaavalla laadulla videon puolet pienempään kokooon kuin Xvid:llä."

    Onko Xvidin ainoa vahvuus x264:än verrattuna siis parempi yhteensopivuus esim. standalone-soitinten kanssa?

    Äänestä

  • KebukaiGeriNoKoumon kirjoitti:

    Kiitos tiedoista!

    "x264:llä saa vastaavalla laadulla videon puolet pienempään kokooon kuin Xvid:llä."

    Onko Xvidin ainoa vahvuus x264:än verrattuna siis parempi yhteensopivuus esim. standalone-soitinten kanssa?

    Ei. H.264 AVC:tä kun käyttää niin videokamerat kuin soittimet. Ainoa etu Xvid:ssä on se, että vaatii vähemmän tehoa koneelta pyörittämiseen jos purku tehdään prosessorilla. Tämä tietysti koskee vain jos on vanha kone ja haluaa teräväpiirtoa. Myös pakkaus käy Xvidillä nopeasti.

    Äänestä

Kommentoi aloitusta


KebukaiGeriNoKoumon kirjoitti:

Tallensin erään kompressoimattoman videotiedoston (uncompressed RGB/YCbCr), seuraavin asetuksin valiten containerformaatiksi AVI:n :

VIDEO

MPEG-4 ASP (Xvid)

Constant Quantiser (Single Pass) = 1

Motion estimation: High

Rate distortion optimization: Wide Search

Rate distortion optimization for B-frames = Yes

Chroma motion estimation = Yes

Quarter pixel motion estimation = Yes

Global motion compensation = Yes

Frame encoding; chroma optimizer = Yes

Four motion vectors per macroblock = Yes

Quantisation matrix = MPEG Matrix

AUDIO

Audio = MP3 (lame); quality = 2; Bitrate = 128


Tuo kompressoimaton (uncompressed RGB/YCbCr) AVI-tiedosto vie aivan tuhottomasti tilaa, mutta tämä tuosta
MPEG-4 ASP (Xvid) -AVI:stakin tuli aivan tolkuttoman iso, useita gigoja.

Toki nuo asetukset, joita käytin, ovat varmaan parhaat mitä MPEG-4 ASP (Xvid) -AVI-tiedostoille ylipäänsä saa ja karsisin niistä hieman, mutta sitä ennen kuitenkin olisi hyvä tietää pari asiaa:

Onko jokin containerformaatti (AVI, MP4, OGM jne.) selvästi parempi kuin muut? Käsittääkseni containerformaatilla ei niinkään pitäisi olla väliä, vaan ennemminkin sillä, mitä kompressointimetodia käyttää (MPEG-4 ASP [Xvid], MPEG-4 ASP [lavc], VCD [lavc], SVCD [lavc], DVD [mpeg2-enc], MPEG-2 requant, MJPEG, FLV1, MPEG-1 [avcodec] jne.) Kuitenkin sen verran pitää sanoa, että olen huomannut joitakin uskomattoman hyvin pakattuja MKV-videita (Matroska) mutta omat videoneditointityökaluni (Avidemux & VirtualDub) eivät tuota Matroskaa tue.

Millä asetuksilla näitä videoita kannattaisi tallentaa, jotta laatu säilyisi mahdollisimman hyvänä mutta tiedoston koko verrattain pienenä? Paras laatu/koko -suhde siis. Onko esim. kehitetty joitakin uusia pakkausmetodeja, jotka pystyvät säilyttämään laadun tekemättä tiedostosta tolkuttoman isoa?

Huom! Tiedostoa ei tarvitse pystyä toistamaan millään standalone -soittimella kuten DVD- tai Bluray-soittimella!

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu