Powered by Invision Power Board

>divXsweden forum -> divXsweden -> Guider/F.A.Q.
  Reply to this topicStart new topicStart Poll

> Guide - Att arbeta med CCE och Avisynth, av Ihgl
Dizzad
Skapat: Tor Jan 08, 2004 16:43
Quote Post


irc-boss


Grupp: Emeriti
Inlägg: 619
Medlemsnummer: 60
Registrerad: 01 Jun 2002



Att arbeta med CCE och Avisynth

Den här guiden är en naturlig fortsättning på den tidigare guiden om filmkonvertering med Avisynth och TmpgEnc.
Den förutsätter alltså att du är någorlunda inläst på ämnet. Om inte annat får du använda den äldre handledningen som ett "uppslagsverk".
Det kommer i det följande att handla om CCE - Cinema Craft Encoder och hur man med grundläggande Avisynthskript
framställer goda filmer med undertexter med hjälp av detta program.

Först skall sägas att CCE är allt annat än användarvänligt. Skillnaden mellan TmpgEnc och CCE är som skillnaden mellan gamla hedervärda DOS och Windows.
Det innebär alltså ett minimum av grafik utan några som helst självinstruerande verktyg, "popups" eller liknande hjälpmedel.
Varför då använda CCE? Jo, för att det rätt använt ger en kvalitet på det färdiga resultatet som ingen annan kodare når upp till, i varje fall ingen som står oss vanliga dödliga till buds.
Dessutom är CCE jämfört med TmpgEnc ungefär dubbelt så snabbt, under förutsättning att man använder likvärdiga kodningsmetoder/mallar/bitrates etc.

Även om CCE inte ser ut så mycket för världen, döljer sig under den avskalade ytan, en mängd kraft, inställningar och kompetens.
Det är omöjligt att lyfta fram allt detta i en introducerande guide, så jag kommer att ägna mig åt en grundläggande presentation med tips om inställningar, metoder etc.
Jag kommer också självfallet att ge några exempelskript i Avisynth precis som i den äldre TmpgEnc-guiden.
I ett av de sista avsnitten lägger jag fram ett förslag till en mall som kramar det mesta ur programmet och ger ett i stort sett professionellt resultat. Man får ju inte glömma dock, att ingenting ju blir bättre än originalet - nåväl, med Avisynth kan man ju nästan trolla förstås.

Jag kommer den här gången också att ta upp hur man kodar en bredbildsfilm till just äkta bredbildsfilm. Allt fler skaffar bredbilds-TV och att zooma upp bilden så att den täcker hela rutan är ingen bra metod. Nej, med rätt kodning blir resultatet avsevärt vassare. En 16:9-film skall kodas till just en 16:9-film. Och förresten finns det ingen anledning att göra på annat sätt över huvud, då filmen visas helt korrekt ändå på en vanlig 4:3-TV.

En sak till! Jag koncentrerar mig helt på kodning av AVI-film till DVD i det följande. Vill du göra SVCD:s eller andra omvandlingar är det ju inte så svårt att skifta parametrarna med hjälp av de rutiner/beskrivningar som du hittar i den föregående guiden.

Jag förutsätter att ni som använt de tidigare guiderna har tillgång till de program och tillbehör som nämndes där - t ex TmpgEnc, VirtualDub, BeSweet, VobSub m fl Var dessa program kan hittas och hur man kan använda dem står det en hel del om på de äldre sidorna. Som sagt - referera och gå tillbaka! Då så - till verket.

Vad du behöver:

1. Cinema Craft Encoder 2.50 SP

Den här versionen är nog den mest spridda. Finns att ta hem som gratisdemo på bl a www.doom9.org Demo innebär i det här fallet att bolaget visar en liten logo nere till höger i bilden på den färdiga filmen. Det finns också en 2.66, men den skall man av olika skäl undvika. Den vanligaste bland de senaste versionerna är 2.67 och den fungerar utmärkt med Avisynth också. Dock är gränssnittet annorlunda och omgjort. Så, den här guiden bygger på 2.50. Har du jobbat litet med 2.50 är det heller inte svårt att byta till 2.67. Man känner ju igen det mesta.

2. Avisynth 2.08

Du som tidigare använt 1.06/1.07 kan ganska lugnt uppgradera till 2.08. TmpgEnc protesterar inte i vart fall. Den här varianten kommer med en enkel installationsfil och är lätt att lägga in i systemet. Går att ladda hem här:

Avisynth 2.08

Tillägg: Om du är osäker på vilken version av Avisynth du har på systemet, gör så här: Skapa en fil i Anteckningar som innehåller texten: Version Spara den under namnet Test.avs och kör den i Windows mediaspelare. Då får du upp den önskade informationen på skärmen.

3. CCEGuesser

Ett oumbärligt tillbehör när du skall beräkna storleken på din färdiga videofilm och få in den på en 4,7Gb DVD-skiva. Du hittar den här eller med en Google-sökning:

CCEGuesser

4. Patch för "Checksum Errors" i CCE

Ja, just det. Eländet börjar redan. ;-) Det här är en liten fix som gör att CCE fungerar stabilare. Rekommenderas. Kommer som -exe-fil:

CCE-Patch


Ja, det skall väl sägas från början: CCE är inte lätt att ha med att göra. Tusen och en möjligheter till strul och krascher. Många har slitit sitt hår i förtvivlan och återvänt till TmpgEnc. Det skall sägas med en gång: Man måste vara ytterst noggrann och systematisk när man handskas med det här verktyget. Minsta slarv med ett kommatecken eller en felaktig rad i Avisynthskriptet - så krasch och krasch igen. Likheten med gamla DOS känns påtaglig. Där dög inte slarv. Men, vi skall inte låta oss skrämmas utan tar det steg för steg. Desto roligare blir det och ju större är belöningen när allt fungerar.


Grundinställningar:

Vi startar programmet och upp kommer i stort sett bara en vit ruta med några enstaka menyer.

Vi klickar på "Options"/"Extensions" och får upp följande:

Se till att du anger samma filändelser som på bilden i resp ruta. Stäng sedan fönstret. Vi skall så gå till inställningarna för själva kodningen. Här kan åtskilligt "skruvas och vridas" på, olika mallar/templates tillverkas etc. För att göra det enkelt för oss anger vi några grundinställningar tills vidare - de kan komma att modifieras senare. Det är också så att vissa filmer kräver speciella inställningar för att kodas optimalt. Men det skulle leda litet för långt att gå in på allt sådant i den här guiden. Vi håller oss alltså till någorlunda standardiserade inställningar.

Först skall vi slå fast att vi kan göra film på åtminstone två grundläggande sätt:

1. Vi kör ett enpass med constant bitrate (CBR)

2. Vi kör ett flerpass med variabel bitrate (VBR)

1: Går utomordentligt snabbt och ger förhållandevis god kvalitet. Dock inte att rekommendera.

2: Den rekommenderade metoden som ger optimalt resultat. Vi kör 4 pass, att köra fler är slöseri med tid.

Senare i guiden kommer jag som utlovats att ta upp en annan variant/mall som tänjer litet på gränserna och ger högsta möjliga videokvalitet. Men vi återgår nu till CBR-mallen och klickar på menyn "Template". Där skall finnas ett alternativ som kallas "Standard". Klicka på det. Är det inte förbockat så blir det när du klickar och när du klickar ytterligare en gång kommer rutan med inställningsalternativ upp. Det skall se ut så här:

Se till att du gör samma inställningar som ovan. När det gäller "Bitrate" är den ju beroende av hur lång filmen är etc. "4500" får tjäna som ett "testläge". Hur du räknar ut lämpligt värde på "Bitrate" återkommer vi till så småningom.

Klicka så på knappen "Video" och se till att göra nedanstående inställningar:

De här inställningarna kan vara kritiska beroende på hur råmaterialet är beskaffat. En del äkta "interlacade" filmer kan kräva att alternativet "Upper field first" är förbockat och att "Progressive frames" är avbockat. Att en film är "interlaced" betyder ju att den är uppbyggd av två "halvor" som sammanfogas i TV:n. Att den är progressiv betyder att bilden är uppbyggd av en enda. Beroende på vilken linje i en interlacad film som ritas först på skärmen talar man om Övre fält/Undre fält - jfr "Upper field"/"Bottom field" etc. Få filmer är gjorda för att visa den undre linjen/det undre fältet först och därför är standardinställningen som ovan. Har du dock en sådan film och klickar i "Upper field" tvingar du alltså TV:n att visa det undre fältet först/överst. Det finns både interlacade och progressiva PAL:s t ex och det leder ju för långt här att trassla in oss i teknikaliteter. Vår inställning ovan duger för det mesta.

Lägg märke till att jag bläddrat fram "DAR 16:9" Så bör filmer kodas som är gjorda i det formatet. De tre format som är vanligast är 4:3 (1:1,33), 1:1,85 och 1:2,35. De två sistnämnda bör kodas i 16:9 för att komma till sin rätt. Är du osäker, titta på filmen (på datorn). Har du svarta breda band uppe och nere (brevlåda) är det frågan om 16:9 - kompatibilitet. Fyller bilden hela skärmen handlar det om 4:3.

Varför koda i 16:9? Vi talar nu om sk "anamorf" film. Det innebär att man kodar/spelar in filmen/videorutorna med betydligt högre vertikalformat (höjd) än vad som är normalt. Skulle en sådan film visas genom en vanlig lins blir t ex människors ansikten mycket avlånga etc. Vid avspelningen använder man därför en speciell optik som pressar ihop filmrutorna och återger normala proportioner. På det här viset kan man pressa in fler pixels i filmen och på så sätt få ett skarpare resultat. Om vi använder samma metod vid kodningen får vi också ett bättre resultat. Din DVD kommer att fylla hela skärmen på din bredbilds-TV om den är gjord i formatet 1:1,85. Hade vi kodat bilden i 4:3 skulle du få använda TV:ns zoomfunktion för att fylla rutan och därvid tappa avsevärt i skärpa och kvalitet. Vi kodar alltså "anamorft" när det bara är möjligt. Givetvis fungerar som sagt en anamorf film på DVD-spelarna och på en 4:3-TV likaså.

OBS! Till rutan med "Timecode" Se till att ändra här så att det verkligen blir nollor överallt. Detta är mycket viktigt! Om det står något annat kommer ditt DVD-auktoriseringsprogram att mixa din film helt galet.

Klicka så på fliken "GOP" och justera inställningarna enligt bilden:

När du är klar, klicka OK och på den underliggande rutan klickar du på "Quality settings" och justerar enligt nedan:

Här är det som du ser frågan om brusfilter och kvalitetsinställningar. Vi använder de visade värdena för vår 1-pass CBR-kodning och klickar så OK.

Vår första mall/template är färdig och för att spara den klickar vi på knappen "Replace". Nu ersätts alltså den förinställda standardmallen av din egen nya. Vill du behålla den ursprungliga mallen ger du bara ett nytt namn på din egen och klickar "Add" istället. Nu är vi redo att prova vår CBR-mall på en AVI-film och det leder oss i sin tur över på Avisynth och nästa avsnitt.

 

Testkörning på AVI-film med Avisynthskript och standardmall CBR

Som exempelfilm har jag valt Terminator 3 (i fortsättningen kallad "Terminator"). Filmen ligger på 2 CD precis som många andra med god kvalitet. Personligen slår jag alltid ihop dessa till en enda sammanhängande filmremsa och kodar till en full DVD-skiva. Undertexterna brukar jag sätta ihop i Subcreator eller liknande editor och på så sätt se till att skarven kommer rätt så att inte synken äventyras. Naturligtvis får man på det här sättet ut också filmens totala ljudspår. I den här guiden betyder alltså "Terminator.avi" den kompletta filmen. Vill du jobba på egen hand med uppdelning på två, kapitelindelningar etc står det ju dig fritt. Med DVDMaestro är ju möjligheterna outtömliga. I så fall kan du ju t ex labba med Cd 1 enbart i fortsättningen. Därvid är ju att tänka på att mina värden för antal frames, bitrate etc inte stämmer förstås.

Ibland - men inte särskilt ofta - inträffar det att man får svårt med ljudsynkroniseringen när man slår ihop skivor. Detta beror inte på att man använder fel metod, utan så gott som uteslutande på att originalfilerna innehåller små felaktigheter - "drop outs" etc i ljudspåren. Detta är i sin tur beroende på några eller åtskilliga återupptagna nedladdningar - "resumes". Det är svårt och innebär mycket arbete att "reparera" sådana filmer. (VirtualDub) Ofta spelar de ok var för sig men sammanslagna spårar de ur. Litet om det och framförallt hur du slår ihop filmer kan du finna i den äldre guiden. Ett program som jag nyligen testat för ändamålet heter "FileMerger" och finns att ta hem på www.doom9.org Det tycks fungera utmärkt på ett antal olika filformat inkl AVI.

Ok, vi börjar med att högerklicka på filmen i utforskaren ("Egenskaper"/"Sammanfattning"). Följande information kan bl a utläsas:

5-kanaligt DD 5 ljud (AC3) Samplingsfrekvens: 48 khz

Fps: 23,976 (NTSC) Upplösning: 640 x 272

Det är i princip vad vi behöver veta för att kunna gå vidare. En sak vill jag dock ta upp i det här sammanhanget. Jag envisas med att konvertera alla filmer som inte följer europeisk standard till PAL. Det beror på att alla DVD-spelare och inte minst TV-apparater inte klarar att spela en "amerikansk" NTSC på ett godtagbart sätt. I det här fallet med "Terminator" innebär alltså detta att fps 23,976 (NTSC) konverteras till 25 fps (PAL). Det gäller naturligtvis både bild och ljud - och text. För dem som absolut vill tillverka en NTSC-DVD (29,97) från en 23,976 AVI finns ett avsnitt längre fram. Tänk också på att upplösning/skärpa blir ganska mycket bättre på en PAL (vid samma bitrate). Höjdformaten mellan NTSC och PAL förhåller sig ju som 480/576. Alltså åtskilligt fler pixels i en PAL. I praktiken kanske det inte spelar så stor roll då dagens DVD-skivor i gengäld tvingar oss att köra PAL-kodning med jämförelsevis något lägre bitrate för att få plats med filmen på en 4,7Gb skiva.

Vi börjar med ljudet: Filmen innehåller alltså äkta AC3-ljud och det vore dumt att inte utnyttja det till fullo. Här ber jag dig att kika på min tidigare guide om DVDMaestro/SoftEncode och AC3-ljud. När det gäller BeSweet och alla sorts ljudomvandlingar står det mesta som sagt i guiden om filmkonvertering med Avisynth. DVD-standarden kräver ljud med 48 khz samplingsfrekvens, så i vår film "Terminator" behöver vi inte bekymra oss om den saken. Jag förutsätter alltså att du tillverkar en AC3-fil efter alla konstens regler med SoftEncode/BeSweet eller liknande och lämnar därmed ämnet.

Och undertexten: Du har alltså en ljudfil som vi kallar Terminator.ac3 som är klar att laddas in i DVDMaestro för auktorisering av DVD-skivan. Detsamma gäller undertexten. I guiden om DVDMaestro/Ac3 och MaestroSBT kan du läsa hur du skall gå tillväga för att också få in valbara undertexter klara för auktorisering. I den här guiden är det som du redan märkt "underförstått" att du använder DVDMaestro för att mixa ihop och göra dina DVD-filmer.

Så till bild/video igen: Det är dags för det första enkla Avisynthskriptet:

Skript 1:

LoadPlugin("C:\Film\mpeg2dec2.dll")
AviSource("C:\Film\Terminator.avi",False)
ConvertToYUY2()
LanczosResize(720,432)
AddBorders(0,72,0,72)
AssumeFPS(25,1,True)
AddAudio()

Lägg märke till att sökvägarna självklart är påhittade och att du själv får se till att dina egna är korrekta. Faktum är att den vanligaste anledningen till att skript kraschar i CCE är felaktiga sökvägar. Var alltså ytterst noggrann!

Rad 1: Den här dll-filen (mpeg2dec2.dll) kommenteras i den tidigare Avisyntyhguiden. Där står var du skall finna den osv.

Rad 2: Sökväg till filmen (AviSource). Lägg märke till tillägget ",False" sist på raden. Det eliminerar normalt CCE:s benägenhet att krascha om din AVI-fil innehåller ljud. Vill du vara på den säkra sidan, ta in AVI:n i VirtualDub och spara en version utan ljud som du laddar in i skriptet enligt: AviSource("C:\Film\Terminator Ej Ljud.avi")

Rad 3: Anger standard för färgbehandling

Rad 4: Det viktiga resizefiltret. I den tidigare guiden (för er som undrar) såg motsvarande skript ut så här:

LoadPlugin("C:\Film\mpeg2dec2.dll")
LoadPlugin("C:\Film\lanczos3.dll")
AviSource("C:\Film\Terminator Ej Ljud.avi")
ConvertToYUY2()
Lanczos3Resize(720,432)
AddBorders(0,72,0,72)
AssumeFPS(25,1,True)

Lägg alltså märke till att du inte längre behöver lancsos3.dll-filen som särskilt plugin. Den finns numera som internt kommando i Avisynth. Lägg också märke till att syntaxen förändrats i den nya varianten. 3:an försvinner i "Lanczos3Resize" Blanda inte ihop korten om du t ex klipper/klistrar ur tidigare skript! Vi väljer alltså skript 1 ovan.

Filmen har upplösningen 640 x 272. En enkel division ger nära nog exakt AR (Aspect Ratio) = 1:2,35. Det är alltså frågan om det vidaste bredbildsformatet och den färdiga filmen kommer att ha smärre svarta band i över och nederkant även på en bredbilds-TV, då sådana är optimerade för formatet 1:1,85. Vi skall nu räkna ut de rätta värdena för resizefiltret så att vi erhåller en anamorf 16:9 - film. Detta innebär som du tidigare såg att vi kodar filmen med avsevärt högre höjd än den normala för att pressa kvaliteten så långt det går. DVD-spelaren är byggd så att den känner av det här och pressar automatiskt  ihop filmen så att den visas korrekt på TV:n. Även PowerDVD fungerar på samma sätt på din dator.

För att beräkna den nya PAL och 16:9 - anpassade höjdparametern i vårt resizeskript använder vi följande formel:

720/640*272/351*512

Lägg lämpligen in formeln i Excel och skriv in siffrorna för din film (640/272) (Excelsyntax: =720/640*272/351*512). Värdena på filmens upplösning är markerade med fetstil i formeln som du ser. Övriga siffror behöver du inte bry dig om, de är "konstanter" s a s.

Du kommer att få fram en siffra på 446,36 för den nya anamorfa videons höjd. Nu är reglerna sådana att filmens höjd måste uttryckas i ett tal delbart med 8 eller helst 16. Går vi ett snäpp nedåt för att kunna dela med 16 får vi ett närmevärde på 432. Det är därför jag valt den siffran i resizefiltret. Det är inget som hindrar att du ändrar detta tal uppåt eller nedåt för att hitta det som bäst överensstämmer med hur filmen visas i Mediaspelaren. Då går du tillväga så, att du kodar ett kort stycke av filmen (ger en liten m2v-fil), tittar på snutten i PowerDVD och korrigerar tills du tycker att visningen av AVI-filen i Mediaspelaren överensstämmer hyfsat med visningen av m2v-filen i PowerDVD.

Resizefiltret kommer alltså att se ut så här:

LanczosResize(720,432)

Eftersom PAL-standarden för en DVD föreskriver en höjd på filmrutan på 576 får vi räkna ut hur mycket som fattas vid en resizeparameter på 432. 576 - 432 = 144. För att få ett svart band lika stort uppe som nere på skärmen får vi dela detta tal mitt itu = 72. Vi får alltså storleken 72 på de svarta banden och därför får Rad 5 i Avisynthskriptet utseendet:

AddBorders(0,72,0,72)

Tillägg: Lancsosfiltret ger normalt det bästa och skarpaste resultatet när du anpassar storleken på filmens upplösning. Men om du har en film med låg bitrate, t ex en drygt 2 tim film på 1 CD är Bicubicfiltret att föredraga. Du skriver i så fall enligt:

BicubicResize(720,432,0.00,0.75)

Referera till den tidigare guiden när det gäller utförligare förklaringar till de här beräkningarna. Själv brukar jag använda en ganska simpel uppställning i Excel som hanterar både 4:3 och 16:9 - formatet. Du kan ladda hem kalkylarket här:

Excelkalkyl för beräkning av NTSC till Pal

Rad 6: AssumeFPS(25,1,True) Det här kommandot ser alltså till att filmens framerate ändras från 23,976 till 25 (PAL). Till skillnad från TmpgEnc med eller utan VirtualDub som frameserver får du normalt en ryckfri och mjukt flytande film med Avisynth som frameserver.

Rad 7: AddAudio() Den här raden "lurar" CCE att arbeta med ljud som inte finns. Ett slags fejk eller patch om du vill. Utan det här tillägget kommer CCE ovillkorligen att krascha!. Därför är det mycket viktigt att du gör exakt som beskrivs här:

Starta Anteckningar. Skriv in exakt följande. Exakt!

function AddAudio(clip v1) {
v2 = Blankclip()
v1 = AudioDub(v1,v2)
return v1
}

Spara sedan filen med namnet: AddAudio.avsi (Se verkligen till att den får det här namnet och inte slutar på någonting med -txt)

Lägg sedan en kopia av filen i Avisynths katalog "Plugins" på hårddisken. Sökvägen är normalt denna:

c:\program\avisynth2\plugins\

Åter igen det färdiga skriptet, kontrollera allt noga:

LoadPlugin("C:\Film\mpeg2dec2.dll")
AviSource("C:\Film\Terminator.avi",False)
ConvertToYUY2()
LanczosResize(720,432)
AddBorders(0,72,0,72)
AssumeFPS(25,1,True)
AddAudio()

Ta sedan gärna och testkör skriptet i TmpgEnc i första hand och kanske också sedan i VirtualDub. Ändra bara då sista raden till: #AddAudio() så att den inte läses in. Det här är ett enkelt sätt att testa om det finns några grundläggande fel i ditt skript. TmgEnc visar på eventuella fel och på vilken rad de finns. För att lättare kunna läsa meddelandena på skärmen i TmpgEnc kan du prova med "Preview". Glöm bara för all del inte att återställa sista raden innan du tar in den i CCE!!

 

Kodningen i CCE

Starta CCE. Högerklicka mitt i den tomma vita rutan. En knapp med texten "Add" dyker upp. Klicka på den och filhanterarens fönster kommer fram. I rutan "Filformat" klickar du fram "Alla". Annars kommer din Avisynthfil inte att visas. Ladda in din avs-fil - Terminator.avs. Om du inte gjort något fel på vägen och om du har tur ;-) accepterar CCE skriptet och fönstret kommer att se ut som nedan. Har du inte gjort några egenhändiga ändringar sedan sist är det vår "Standard"- mall som gäller med CBR-kodning. Vill du nu göra några ändringar av dina inställningar, högerklickar du på filnamnet och en menyruta dyker upp. Väljer du alternativet "Edit" är du tillbaka i fönstret där vi angav alla inställningar för kodningen. Normalt måste du alltid gå in här och editera - för att ange lämplig bitrate och således anpassa storleken på filmen till DVD-skivan. Nu struntar vi i det, eftersom det handlar om en test. Värdet 4 500 i bitrate passar utmärkt.

Klicka på "Encode" och svara "No" på frågan om du vill spara. Kodningen startar. Avbryt efter några knappa minuter genom att klicka "Cancel". Starta så PowerDVD i filläge och ta in din m2v-fil (Terminator.m2v - ligger i samma mapp som avs-filen) och beskåda resultatet. Har du angett några mindre lyckade parametrar i resizefiltret kan du nu korrigera, köra igen tills du är nöjd med resultatet. Eventuellt kan du då köra hela filmen. Men som sagt, vänta med det. Det fanns ju bättre sätt. Till det kommer vi strax i nästa avsnitt.

 

AVI-film med Avisynthskript och mallen VBR

Vi skall gå tillväga på samma sätt som tidigare och med samma Avisynthskript. Skillnaden är att vi skall använda en mall för flerpass istället. Det här är det normala sättet att använda CCE och ger också mycket gott resultat. Innan vi gör nya inställningar kan det vara klokt att ta reda på hur många bildrutor filmen innehåller för att på så vis kunna räkna ut en lämplig bitrate för att passa vår DVD-skiva. Det kan man naturligtvis göra i VirtualDub genom huvudmenyn och "File information" men onekligen är det lättare att titta direkt i CCE när du laddat in Avisynthskriptet! Under rubriken "Frames" kan vi i vårt fall avläsa: 156 788. Dags att ta fram vårt hittills orörda tillbehör: CCEGuesser. Packa upp zip-filen och dubbelklicka på cceguesser.exe Fönstret ser ut så här:

Värdet för "Total frames in movie" får du ju ändra för varje film men i övrigt kan du använda de inställningar som visas ovan. De stämmer förbluffande bra i de flesta fall. Efter en tids nyttjande kan du ju själv göra smärre justeringar. Siffran 600 i rutan för "Audio file..." är tilltagen med hänsyn till DD5 AC3-ljud. Kör filmen 2-kanaligt ljud kan du justera ned till c:a 400 istället. Lägg också märke till att det skall stå Mb överallt och se till att  knappen för "PAL" är intryckt i vårt fall. Vidare görs inställningarna normalt med mallen för "Multipass VBR". Programmet föreslår 4 533 så vi tar 4500 kb/s i bitrate och detta värde skall vi strax använda i CCE.

Starta CCE. Klicka upp rutan för "Standard" i menyn "Template". En bekant ruta kommer upp:

Skriv nu in namnet på din nya mall överst (VBR 4 Pass). Sedan ser du att en del ändrats sedan förra gången. Fyll i de värden som visas ovan. Klicka så fram "GOP":

Välj de visade värdena, klicka ok och gå tillbaka till det föregående fönstret. Klicka "Quality settings" och observera att en del ändrats. Gör ändringar och klicka ok. Spara din nya mall med knappen "Add" och du lägger den till samlingen.

Om du undrar över alla värden och parametrar så bygger de mest på erfarenhet och vad man har kunnat inhämta på andra sidor. Vill du längre fram labba med egna parametrar är det ju fritt fram.

Dags att ladda in filmen och köra. CBR-passen du körde tidigare har ju gett dig visshet om att allt står rätt till och du har kunnat göra eventuella korrigeringar. Nu är det dags för den "skarpa" körningen. (Innan du startar nästa körning, rensa din mapp från ev kvarliggande VAF-fil från tidigare tester.)

CCE kommer nu  först att skapa en "VAF"-fil som innehåller all tänkbar information om filmen. I nästa skede kör programmet kodningen utifrån denna informationsfil. Allt som allt 4 pass. Som du nog förstår tar den här körningen timmar - beroende på din dator förstås. Om du avbryter mitt i har du ingen m2v-fil att titta på. Däremot har du om du avbryter efter första körningen - som går snabbast - en VAF-fil som du kan återanvända gång på gång. Om du ändrar mall samtidigt som en avs-fil är inladdad i programmet är det trots det den föregående mallen som gäller. Vill du ändra mall när en avs-fil är inladdad får du alltså först högerklicka på den och välja "Delete" och sedan ta in den på nytt igen. först gäller den nya mallen. Använder du alternativet "Edit" för att ändra något gäller ändringarna självfallet den aktuella avs-filen.

En annan detalj: CCE tar mycket kraft ur datorn när det arbetar. Vill du jobba med annat under tiden programmet körs gör du klokast i att ändra inställningen för programmets "Prioritet". Det gör du genom att högerklicka på klockan längst ner till höger i aktivitetsfältet på skärmen. Välj "Aktivitetshanteraren", klicka fram fliken "Processer". Ordna processerna i bokstavsordning genom att klicka på rubriken "Namn" ett par gånger. Leta sedan upp "cctsp.exe", högerklicka och ange "Prioritet" till "Låg".

När körningen är klar tar du in din AC3-fil, dina "Subtitle"-filer och din M2v-fil i DVDMaestro för auktorisering/mixning till en färdig DVD. Har du prickat bitraten hyfsat kommer du att totalt ligga på mellan 4000 och 4 380 Mb i Maestro (4 384 är maximum för en "4,7"Gb DVD-skiva). Ganska optimalt. Glöm inte heller att ställa in auktoriseringen i Maestro på 16:9. Förhandsinställningen är nämligen 4:3. Längst ned i fönstret där du lagt in ljud/bild/text står till vänster filmens fps, i det här fallet 25 Fps. Strax till höger om det står "4:3". Högerklicka och välj "16:9 LB/PS".

För de som inte vill jobba med valbara undertexter i MastroSBT är det ju naturligtvis möjligt att bränna in undertexten på vanligt sätt. Avisynthskriptet har då följande utseende istället: För detaljer - se tidigare guide. Se också som vanligt till att sökvägar är korrekta och att respektive "plugin" verkligen finns på plats. "Pluginet" textsub.vdf följer t ex med installationen av VobSub och läggs lämpligen i VirtualDubs pluginmapp.

Skript 2:

LoadPlugin("C:\Film\mpeg2dec2.dll")
LoadPlugin("C:\VirtualDub\plugins\textsub.vdf")
AviSource("C:\Film\Terminator.avi",False)
ConvertToYUY2()
LanczosResize(720,432)
AddBorders(0,72,0,72)
TextSub("C:\Film\Terminator.ssa")
AssumeFPS(25,1,True)
AddAudio()

 

CCE och den "ultimata" mallen

Här presenteras den mall som troligen pressar det mesta ur CCE. Det är en lätt modifiering av en mall som signaturen RoBa på Doom9 står bakom. Använder numera nästan undantagslöst densamma.

Till inställningarna: Starta CCE, ta fram inställningsfönstret för "Standard"-mallen:

Kalla mallen för 1 Pass RoBa och gör inställningarna ovan. Klicka så på "Video" och "GOP" och kontrollera att du har samma inställningar som i mallen för VBR 4 pass. Spara den nya mallen med knappen "Add". Lägg märke till att denna första RoBa-mall körs alltid med dessa inställningar.

Som du ser ovan handlar det om att köra ett enpass med variabel bitrate mellan 0 och 9800. Den VAF-fil som produceras kommer sedan att användas i en ny VBR-mall enligt följande:

Skriv in namnet 2 Pass RoBa i namnrutan, gör inställningarna, klicka "Add" för att spara också denna nya mall. När denna mall körs ändrar du från gång till gång endast siffran för bitrate som du får fram med CCEGuesser. I övrigt kör du den alltså alltid med samma inställningar.

Hur gör man nu?

Kör först Avisynthskriptet i mall 1 Pass RoBa. Därvid skapas som sagt en VAF-fil som CCE använder när du kör mallen 2 Pass RoBa (andra passet RoBa). Innan du tar in mallen 2 Pass RoBa, glöm inte att högerklicka på avs-filen i CCE:s huvudfönster och ta bort den (delete). Ta så in mallen 2 Pass RoBa och ladda in Avisynthskriptet på nytt. Ange det värde för "Bitrate" du erhållit med CCEGuesser och kör så kodningen. Rör heller inga filer som skapats i det första passet. "VAF"-filen från första passet kommer ju nu att användas och den första 1-pass m2v-filen skrivs automatiskt över.

Det resultat du erhåller på det här viset håller mycket hög klass, förutsatt att originalen också gör det.

 

För de med en DVD-spelare och TV som till 100% klarar NTSC-standarden

Vi prövar här en metod som framställer en NTSC-kompatibel DVD för auktorisering i DVDMaestro. Vi utgår fortfarande från AVI:n "Terminator". Frameraten var 23,976, ett mycket vanligt "Film"-format. En TV gjord för NTSC kör dock filmen i 29,97 fps. När filmer alltså görs om för att passa TV-formatet lägger man in kopior av filmrutorna i ett bestämt mönster och i bestämda intervaller för att de skall visas korrekt med den högre hastigheten. Den här processen kallas "telecine" och den omvända processen, alltså 29,97 video till 23,976 film kallas "inversed telecine" (ITC). I det senare fallet tar man alltså bort de extra, tillagda filmrutorna för att anpassa filmen till den lägre "filmhastigheten". Nästan all produktion av video för TV-bruk görs ju i 29,97 i NTSC-länder. Tyvärr hittar man många filmer som härrör ur det här formatet som innehåller fel, filmrutor inlagda inkorrekt, rester av störande linjer från interlacing etc. De kan vara mycket svåra att få ordning på om man t ex vill konvertera till PAL. Dålig bildkvalitet och ljud ur synk etc. Naturligtvis finns det verktyg i Avisynth för att rätta till det mesta. Men underverk går inte att åstadkomma. I ett avslutande avsnitt kommer jag att ta upp en del om filterteknik och filter du kan använda för sådana här saker och annat.

För att tillverka en 29,97 NTSC anamorf 16:9 DVD av Terminator använder vi följande skript:

Skript 3:

LoadPlugin("C:\Film\mpeg2dec2.dll")
AviSource("C:\Film\Terminator.avi",False)
ConvertToYUY2()
LanczosResize(720,368)
AddBorders(0,56,0,56)
AddAudio()

Som du lägger märke till är det några ändringar jämfört med PAL-skriptet tidigare:

Rad 4: LanczosResize(720,368) Här är nya siffror. Eftersom en NTSC har en annan upplösning än en PAL, nämligen 720x480 (alltså lägre upplösning = sämre kvalitet!) måste formeln för uträkning av parametrarna se annorlunda ut. För en 16:9 NTSC kan den skrivas så här:

720/640*272/11*10*4/3 I Excel skrivs formeln: =720/640*272/11*10*4/3

Som vanligt fyller du bara i siffrorna för din films upplösning och formeln kommer att returnera värdet: 370,91. Närmaste värde, jämnt delbart med 16 är 368 och därför är det värdet valt i resizeformeln. Då höjden på en NTSC är 480 fås siffrorna för de svarta banden: (480-368)/2 = 56 Alltså på rad 5 skriver vi:

AddBorders(0,56,0,56)

Man kan undra över de knepiga siffrorna i formlerna. Men de beror på att TV:n har rektangulära pixels medan datorn har fyrkantiga. För att bilden skall visas helt korrekt på TV:n krävs alltså en liten, men viss korrigering.

Lägg också märke till att raden: AssumeFPS(25,1,True) saknas här. Det beror naturligtvis på att vi inte önskar ändra frameraten. Inte ändra frameraten? Men en NTSC kör ju i 29,97 fps på TV:n? Ja, vi får återvända till inledningsdiskussionen i det här avsnittet där vi talade om Telecine och ITC. Maestro skulle protestera om vi försökte mata in vår nytillverkade m2v-fil i programmet. Vi måste alltså först ordna till en "telecineprocess". Det gör vi med ett tillbehör som heter "PullDown". Det lilla programmet lägger till de erforderliga filmrutorna så att filmen kan köras i 29,97. Du kan hitta en variant med ett grafiskt användargränsnitt ("DoPulldown") på www.doom9.org under "Downloads". Tycker du att det inte är några problem att köra under DOS (Windows Kommandotolk) laddar du hem "Pulldown.exe" här:

http://www.inwards.com/inwards/?id=36

 

Pulldown:

"Pulldown-processen" är tyvärr inte helt okomplicerad när det handlar om NTSC. Du kan oftast inte köra programmet "Pulldown.exe" rakt upp och ner om du tänker lägga in undertexter med MaestroSBT och DVDMaestro.

Några ord är på sin plats om det här ämnet. Din film innehåller rutor (frames) med "flaggor" som talar om hur avspelning skall ske, anger tidskoder etc. När du gör om din 23,976 AVI-film med pulldownprogrammet förbereds ju filmen för visning i 29,97 (se avsnittets inledning), men flaggor med "instruktioner" för avspelningen tas inte bort. Dessa behövs inte när du kör i 29,97, spelaren ställer in sig rätt automatiskt. Däremot har de en störande inverkan på DVDMaestro och MaestroSBT. De skapar en inkompatibilitet vilket gör att undertexten kan hamna ur synk - gradvis släpa efter t ex. För att bli av med bekymret kan man "droppa" (drop frames) denna information i aktuella rutor (frames) eller helt sonika ta bort de nya tidskoderna ur filmen. Bägge sätten kan fungera. Men det sistnämnda är absolut att föredraga:

Tips: Läs igenom det här avsnittet innan du skrider till verket och testa definitivt "Metod Timimg" först!

Metod Tidskod: Vi börjar med alternativet att ta bort tidskoder ur filmen. "No time Codes". Det innebär att DVDMaestro endast har fps att ta hänsyn till vid skapandet av videoströmmen, vilket för det mesta kommer att ge ett korrekt resultat och god korrelation med undertextens tidsstämplar.

Först provar vi proceduren: "No Time Codes" med DOS-varianten av Pulldown. Ett tips, lägg programfilen pulldown.exe i samma mapp som din m2v-fil så slipper du litet av trasslet med att skriva in sökvägar i DOS.

Starta ett DOS-fönster i Windows med "Kommandotolken". Du hittar den under tillbehör:

Skriv in kommandot exakt som på bilden. Alltså: pulldown terminator.m2v  -notimecodes och slå på enter-tangenten.

Använder du den grafiska varianten blir det så här:

(OBS! För att programmet skall kännas vid din fil måste du ge den ett nytt efternamn: Terminator.mpv)

Metod Timing: Kör pulldown i standardläge, dvs utan några switchar och tillägg. Alltså i DOS-läge: pulldown terminator.m2v Med den grafiska varianten "No Change" under "Drop frame" och med inga gröna knappar intryckta. Ta sedan in undertexten (SSA-filen) i MaestroSBT  (Se MaestroSBT-guiden). I rutan för "Timing" väljer du: 23,976 In och 24 Ut. Det fungerar som regel utmärkt och är ju i särklass enklast!

Metod Drop frame: Det sista alternativet som är minst intressant handlar om "Drop frame". I den grafiska varianten DoPulldown väljer du alternativet "Enabled" under "Drop frame" och ser till att inget annat är markerat. I DOS-versionen skriver du följande: pulldown terminator.m2v  -drop_frame true

Sammanfattning: Bästa och enklaste metod som oftast fungerar: Metod Timing. Näst bästa metod: Metod Tidskod.

Litet bökigt, men någon av metoderna ovan borde ge önskat resultat. Problemet bottnar i MaestroSBT:s sätt att hantera tidskoderna i videoströmmen. Kanske någon framtida version har eliminerat den här "buggen".

Den nya korrigerade 29,97 fps m2v-filen matar du som sagt sedan in i DVDMaestro. Glöm bara inte att först ange i Maestros "Preferences" att du nu vill ha in mallen för NTSC. Sedan är det bara att köra som vanligt.

 

En 29,97 fps AVI till PAL - DVD

 

Det här är inget lätt kapitel då dessa filmer ibland är hybrider av interlacade, progressiva och rutor i blandformat (hybridformat). Filmer, gjorda för TV håller som sagt ofta detta format. När de auktoriseras som DVD-filmer händer det att man blandar både TV-produktion och ren film i videoströmmen. Det ställer till det för oss som försöker frameserva med VirtualDub, Avisynth mm. Om sådant blandas litet hursomhelst kan man få väldigt fula rester i filmen av flimrande streck, suddiga rörelser, "spökbilder", dubbelkopieringar etc.

Exempel på 29,97-filmer man kan stöta på kan vara "Flykten Från Alcatraz", "Far From Heaven", "The Fugitive" och "Ace Ventura". Hur gå tillväga om man vill få fram en god PAL? Jag har ännu inte lyckats få TmpgEnc att prestera ett godtagbart resultat. PAL-filmen blir markant ryckig på ett rent störande sätt. Återstår Avisynth och något lämpligt filter.

Tillbaka till begreppet "ITC" vi förut talade om. En film som alltså underkastats en ren Telecine-process kan naturligtvis återställas till originalskicket. Om filmen inte innehåller för mycket "skräp" och blandade "karameller" blir resultatet utmärkt. Vi behöver alltså ett ITC-filter. Ett av de bästa som står till buds heter "DecombLegacy" och består av en dll-fil som laddas in som ett plugin i Avisynthskriptet. Det finns att hitta på den här sidan - leta efter "Decomb Package". Zip-filen innehåller också dokumentation om användningen för den som vill gå vidare:

http://www.avisynth.org/warpenterprises/

Vi provar det här filtret på filmen "Far From Heaven". I det här exemplet har man pressat in en 2 - tim film på en CD och skärpan är inte den bästa. Filmen innehåller också ett par ryckiga sekvenser som i princip är omöjliga att eliminera då filmen i sig stundtals är felaktigt eller illa kodad. Filmen har upplösningen 576x304. För att göra det bästa av det hela provar vi följande skript:

Skript 4:

LoadPlugin("C:\Film\mpeg2dec2.dll")
LoadPlugin("C:\Film\DecombLegacy.dll")
LoadPlugin("C:\Film\MSharpen.dll")
AVISource("C:\Film\Far From Heaven.avi",False)
ConvertToYUY2()
Levels(0,1.3,255,0,255)
Telecide()
Decimate(cycle=5)
LanczosResize(720,576)
MSharpen(strength=100,debug=true)
AssumeFPS(25,1,True)
AddAudio()

En del nyheter som synes. Den reverserade telecinen tar raderna Telecide()/Decimate(cycle=5) hand om. För att vässa upp skärpan i filmen har jag laddat in "MSharpen", ett plugin du hittar på adressen ovan. Kommandot "Levels..." är internt och ökar ljusstyrkan då filmen är ganska "murrig". Ljudet körs som 23,976 och texten? Ja, jag har inte hittat någon svensk översättning.

Lägg alltså dina nytillkomna dll-filer i en mapp och se till att sökvägen pekar rätt när du använder skriptet. Resultatet? Inte bra, men hyfsat och mycket "bättre" än originalet!!

Filmer som är mycket gryniga, framförallt tecknade sådana blir mer njutbara med filtret "SmartSmoother". Ett filter som "mjukar till" på ett sådant sätt att skärpan knappt går förlorad. Du hittar det tillsammans på samma ställe som de andra. Exempelfilm "Force 10 From Navarone":

Skript 5:

LoadPlugin("C:\Film\mpeg2dec2.dll")
LoadPlugin("C:\Film\SmartSmoothYuy.dll")
AVISource("C:\Film\Force Ten From Navarone.avi",False)
ConvertToYUY2()
SmartSmoothYuy(threshold=225,radius=3)
LanczosResize(720,432)
AddBorders(0,72,0,72)
AssumeFPS(25,1,True)
AddAudio()

Här provat på "Styrka 10 Från Navarone" med utmärkt resultat.

 

Till sist:

Ja, som synes, möjligheterna är oändliga för den som vill gå vidare med Avisynth. En guldgruva är sidan:

http://www.avisynth.org

Här finns det mesta för den intresserade plus alla tänkbara filter. De flesta kommer med en bifogad fil om hur man kan använda filtret. Ofta också med exempel. En annan källa är förstås www.doom9.org där i stort sett allt om ämnet avhandlas dagligen och där förträffliga guider också finns till beskådande i alla möjliga ämnen.

Till sist några tips hämtade från Doom9 för den som ständigt käkar panodil för att mildra sin CCE-huvudvärk, när programmet absolut inte vill fungera på några som helst villkor. Den sista punkten kanske tål att begrundas extra. Döm själv.  ;-)

Don't overclock your CPU/memory.
Decrease the memory timings in your PC's BIOS or use the defaults.
Use the latest BIOS from your mainboard manufacturer.
Make sure your power supply and your PC cooling is good.
Use the latest chipset drivers from your mainboard manufacturer. (VIA 4-in-1)
Do some stability tests like Prime95 and MemTest86. (See Q53)
Use "ResampleAudio(44100)/AddAudio()" in your Avisynth script.
Turn off the "Anti noise filter" with CCE in "Encoder" tab.
Verify that the "Max." and "Max. avg" bitrate differs with at least '120' maybe more.
Raise "Luminance Offset" in "DVD2AVI" tab to '5'.
Apply the CRC Patch from the Q&A (Q27).
Use the "MPEG2DEC2.DLL" instead of the "MPEG2DEC.DLL" in "Frameserver" tab.
Set "Intra DC precision" in CCE's "Advanced settings" to '8' or 'Auto'.
Turn off VirtualDub's "AVIFile Proxy mode" see the "readme.txt" in the "VirtualDub\aviproxy" for more on that.
When converting downloaded AVIs make sure with tools like "AviDefreezer" that they are not corrupted somehow.
Use the "Safe mode (frameserving)" option in "Encoder" tab - but be aware, this will decrease encoding speed by about 30%.
Try to use a newer "Avisynth" version instead of the one that comes with the bundle.
Only use "CBR" or "One pass VBR" modes only.


Use TMPGEnc instead.



--------------------
PMUsers WebsiteICQMSN
Top
0 användare läser det här ämnet (0 gäster och 0 anonyma användare)
0 medlemmar:

Topic Options Reply to this topicStart new topicStart Poll

 



[ Script Execution time: 0.0373 ]   [ 12 queries used ]   [ GZIP aktiverat ]