Gå til innhold

Spørsmål om video komprimering


Anbefalte innlegg

Hjertelig takk for en formidabelt flott forklaring! :)

 

Det du sier med target/high bitrate under VBR1/2 er det første jeg har lest som har forklart dette på en slik forståelig måte :)

 

Det eneste som ikke helt stemmer med "virkeligheten" så langt ut fra egne erfaringer er at begge videofilene med CBR komprimering er vesentlig mindre i størrelse. Videofilene er helt identiske ellers.

 

Dog blir det sagt her at jeg burde prøvd VBR 2 metoden og det skal jeg jaggu meg gjøre etter jobb i dag. Skal også laste opp bevis her samt bruke to forskjellige typer videoer. En stillestående video og en video med mye fart.

 

Kommer tilbake til dette senere i kveld :)

Lenke til kommentar
Videoannonse
Annonse

Flott, og tusen takk for tilbakemelding. Det er verdt å merke seg at hvis CBR og VBR gir like gode bilder (høyere enn terskelen for synlig kvalitetstap) samtidig som CBR gir mindre filer enn VBR, så har en nok testet med for høye bitrater i utgangspunktet. VBR med fornuftige bitrater vil nesten bestandig gi mindre filer enn CBR.

Lenke til kommentar

Kort fortalt: Hvis filstørrelse ikke er viktig, f.eks. når du skal laste opp til Youtube og har en fornuftig internettlinje (eller veldig god tid) så kan du like godt bruke CBR og en høy bitrate.

 

Hvis du ha liten filstørrelse så er du best tjent med VBR og da helst 2-pass så du har kontroll på hvor stor fila blir.

 

Også viktig å merke seg at ved videokomprimering så blir ikke hvert enkelt bilde komprimert som i f.eks. JPG. Noe forenklet så lagres det først en "key frame" og så blir f.eks. 300 av bildene regnet ut ut i fra dette. Er det da ingen bevegelse så kan man få f.eks. flere sekunder med video som tar så og si 0 kbps før det kommer en ny "key frame". Dvs. at hvor mye detaljer det er i en enkelt "frame" (bilde) betyr nesten ingenting. Det er forandringene i bildet som "trenger bitrate".

 

Jeg er ikke flink til å forklare så det er sikkert mye som blir misforstått.

Lenke til kommentar

Da har jeg satt sammen et lite videoklipp hvor den ene delen er stillestående og den andre delen består av litt mer "fart".

 

Videoene er lastet opp på egen server for å forhindre ytterligere komprimering av tredjepart.

 

Video 1 - 1920/CBR/2 Mbps - Filstørrelse: 13mb.

http://www.bjerknez.no/video2/1920-CBR-2Mbps.mp4

 

Video 2 - 1920/VBR1/Target 2Mpbs/Maximum 4Mbps - Filstørrelse: 17.6mb.

http://www.bjerknez.no/video2/1920-VBR1-2-4Mbps.mp4

 

Video 3 - 1920/VBR2/Target 2Mpbs/Maximum 4Mbps - Filstørrelse: 11.6mb.

http://www.bjerknez.no/video2/1920-VBR2-2-4Mbps.mp4

 

I mine øyne er alle tre videoene tilnærmet like, men det skal også sies at jeg har et utrenet videoøye, samt at det er sent på en fredags kveld :)

 

Det som derimot slår meg er hvor ubrukelig VBR1-metoden er. VBR1 lager mye større filer i dette tillfelle enn CBR, mens VBR2 imponerer med den laveste filstørrelsen av alle videoene på kun 11.6mb.

 

I mineøyne virker VBR1 mot sin hennsikt, mens VBR2 faktisk fungerer,med tanke på filstørrelsen. Når det kommer til videokvaliteten her og hvem som "vinner" så overlater jeg det til dere.

 

Som dere ser så er alle videoene eksportert som .mp4 (H.264) og bitraten er satt til 2Mbps på CBR og på VBR1 og VBR2 er det brukt Target 2Mbps og Maximum 4Mbps.

 

Personlig må jeg si at CBR fungerer som en enkel og god allround komprimering, mens VBR1 fremstår for meg som nermest bortkastet. VBR2 derimot var den mest effektive med tanke på filstørrelse, men brukte også nesten dobbelt så lang tid på eksporteringen.

 

EDIT:

Jeg har nå sett litt på videoene og min konklusjon er som følger:

 

Jeg mener Video 2 gir den beste videokvaliteten. Hakket over Video 1. Video 3 med VBR2 komprimering ble ikke bra i det hele tatt. Bare se på den stillestående første delen av videoen.

 

Video 2 gir den beste kvaliteten, men også den største filstørrelsen. CBR gjør faktisk en ganske god jobb, og selv om jeg synes video 2 ligger ett hårstrå forran så tror jeg nok filstørrelsen blir det viktigste punktet her med tanke på youtube bruk. Dette her er jo bare en kort snutt. Videoene jeg skal laste opp er på flere minutter og opp til over 30min. Da blir filstørrelsen viktig.

Endret av Bjerknez
Lenke til kommentar

Det som derimot slår meg er hvor ubrukelig VBR1-metoden er. VBR1 lager mye større filer i dette tillfelle enn CBR, mens VBR2 imponerer med den laveste filstørrelsen av alle videoene på kun 11.6mb.

Du har her fått oppleve akilleshælen til VBR1. :) Det er totalt komplett umulig å beregne nøyaktig bitrate ved kun ett pass. Da må encoderen kunne spå kompleksiteten på forhånd ut ifra ingenting. Løsningen er å gå gjennom to ganger. Én for å kartlegge kompleksitet og neste for å faktisk komprimere videoene med bitrater som blir bestemt ut i fra første pass.

Lenke til kommentar

Du har her fått oppleve akilleshælen til VBR1. :) Det er totalt komplett umulig å beregne nøyaktig bitrate ved kun ett pass. Da må encoderen kunne spå kompleksiteten på forhånd ut ifra ingenting. Løsningen er å gå gjennom to ganger. Én for å kartlegge kompleksitet og neste for å faktisk komprimere videoene med bitrater som blir bestemt ut i fra første pass.

Jeg oppdaterte tråden mens du skrev dette.

 

Les den siste delen av posten min under "EDIT:" :)

Lenke til kommentar

Video 2 kan du egentlig ikke ta med i sammenligningen da denne har mye høyere bitrate enn de andre. Ved en gitt bitrate er det kun lengden på videoen som bestemmer filstørrelsen.

 

Video2 er på ca. 3,12Mb mens de andre er på rett rundt 2,3Mb.

Endret av sedsberg
Lenke til kommentar

Video 2 kan du egentlig ikke ta med i sammenligningen da denne har mye høyere bitrate enn de andre. Ved en gitt bitrate er det kun lengden på videoen som bestemmer filstørrelsen.

 

Video2 er på ca. 3,12Mb mens de andre er på rett rundt 2,3Mb.

Mulig det, men de er lagret på samme måte med samme innstillinger...

Lenke til kommentar

Det jeg mener er egentlig det du oppdaget selv. Ved VBR1 kan du ikke bare sette inn en bitrate og forvente at du treffer den. Du må prøve opp og ned til du treffer riktig eller bare kjøre VBR2 med en gang. Du stilte inn target på 2Mb, noe CBR og VBR2 traff ganske greit men ved VBR1 ble den høyere.

Lenke til kommentar

For min egen del så ser det ut til at jeg kommer til å bruke CBR. Da slipper man å tenke på target/maximum og prøve seg frem etc. Man setter en fast bitrate, ferdig med det. Går også kjappere og eksportere. Den økte filstørrelsen man får ved å bruke CBR ovenfor VBR2 gjør egentlig ingenting. De ekstramegabytene i filstørrelse laster man opp mens VBR2 filen fortsatt holder på og eksportere.

 

Så sammenlagt så vinner CBR i mine øyne.

 

Husk at det her er brukt 2Mbps, noe som er langt under det jeg kommer til å bruke, så forskjellen blir nok svært lite synlig i praksis, for du kan jo som du selvsier nesten ikke se forskjellen slik det er nå. :)

Lenke til kommentar

CBR gir stålkontroll på bitraten, men bildekvaliteten vil variere mer avhengig av hva som vises. Så lenge behovet for bitrate er mindre enn det som er tilgjengelig (de rolige delene) vil bildet være bra, ofte bedre enn ved VBR sålenge alt annet er likt. Det er når det blir hektisk i bildet med mange detaljer i bevegelse at svakheten ved CBR viser seg, men det avhenger av hvor langt ned man har gått i bitrate hvor synlig dette blir.

 

Jeg selv bruker oftest Handbrake til kodingen og vanligvis VBR2, men her angis bare target eller average bitrate, og jeg lar den jobbe ganske langsomt. Iblant bruker jeg også en spesiell modus tilgjengelig i Handbrake som styres av et parameter for "constant quality". I handbrake gir førstnevnte meg kontroll på bitrate, mens sistnevnte tar mer hensyn til visuell kvalitet på det varierende innholdet gjennom videoen.

 

I utgangspunktet settes ikke max i Handbrake, selv om det er mulig å gjøre det. Det er isteden lagt opp til å bruke en liten meny med x.264 tuning som er egnet for diverse typer innhold som film, animasjon osv, og så tunes dette (og andre ting under panseret) ift. average og profil.

Her kan en lage profiler etter hva man vanligvis jobber med. Det er også mulig å gå dypere i innstillinger og angi alt mulig av keyframe-intervaller og max/target osv hvis en trenger det. Etterhvert som du blir komfortabel med komprimering og kanskje vil prøve andre verktøy, så kan en titt på Handbrake anbefales.

Endret av xRun
Lenke til kommentar

CBR gir stålkontroll på bitraten, men bildekvaliteten vil variere mer avhengig av hva som vises. Så lenge behovet for bitrate er mindre enn det som er tilgjengelig (de rolige delene) vil bildet være bra, ofte bedre enn ved VBR sålenge alt annet er likt. Det er når det blir hektisk i bildet med mange detaljer i bevegelse at svakheten ved CBR viser seg, men det avhenger av hvor langt ned man har gått i bitrate hvor synlig dette blir.

 

Jeg selv bruker oftest Handbrake til kodingen og vanligvis VBR2, men her angis bare target eller average bitrate, og jeg lar den jobbe ganske langsomt. Iblant bruker jeg også en spesiell modus tilgjengelig i Handbrake som styres av et parameter for "constant quality". I handbrake gir førstnevnte meg kontroll på bitrate, mens sistnevnte tar mer hensyn til visuell kvalitet på det varierende innholdet gjennom videoen.

 

I utgangspunktet settes ikke max i Handbrake, selv om det er mulig å gjøre det. Det er isteden lagt opp til å bruke en liten meny med x.264 tuning som er egnet for diverse typer innhold som film, animasjon osv, og så tunes dette (og andre ting under panseret) ift. average og profil.

Her kan en lage profiler etter hva man vanligvis jobber med. Det er også mulig å gå dypere i innstillinger og angi alt mulig av keyframe-intervaller og max/target osv hvis en trenger det. Etterhvert som du blir komfortabel med komprimering og kanskje vil prøve andre verktøy, så kan en titt på Handbrake anbefales.

Men kan du forklare hvorfor video 3 med VBR2 gjorde det så mye dårligere og spesielt på den første stillestående delen av videoen?

 

VBR2 fikk jo lovtil å bruke mellom 2-4Mbps bitrate og allikevel ble resultatet langt dårligere enn det CBR og VBR1 for den saks skyld leverer.

 

Jeg skjønner som sagt det dere prøver å si her, men jeg får det bare ikke til å fungere i praksis.

Lenke til kommentar

Et problem er at vi ikke aner hvilke andre instillinger som er brukt. Et annet er at jeg har ingen anelse hvor bra encoderen i Premiere er.

 

post-18544-0-33992600-1383398501_thumb.jpg

post-18544-0-33911600-1383398510_thumb.jpg

post-18544-0-71924500-1383398517_thumb.jpg

Her ser du instillingene du har i et helt annet program. Flere av de kan gi enda bedre kvalitet på bekostning av tiden det tar å "rendre" videoen.

Endret av sedsberg
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...