Vraag & Antwoord

Videobewerking

[linux] multi-pass encoding van mpeg-2

Anoniem
None
15 antwoorden
  • Sinds ik een cd-brander heb aangeschaft zet ik mijn favoriete tv-series op dvd. Dit gaat allemaal uitstekend; ik heb inmiddels een dubbel-dvd met de serie "The Kingdom" van Lars von Trier gemaakt met vier afleveringen van elk een uur per dvd. Nu probeer ik de serie "Cold feet" op dvd te krijgen (kent iemand die serie?). De eerste serie bestaat uit zes afleveringen + een pilot, is zeven afleveringen van ongeveer een uur. Als het enigszins kan wil die op één dvd-tje persen van 4,3 GB. Dit moet mogelijk zijn, maar ik ben vanwege de dvd-specificaties gebonden aan het mpeg-2 formaat.

    Voor de compressie maak ik gebruik van transcode. Transcode kan coderen met een variabele bitrate, maar ik krijg dit met mpeg-2 alleen maar voor elkaar met een quantizer in combinatie met een maximale bitrate. De quantizer is het "compressie niveau" van de film. Hoe lager de quantizer, hoe hoger de kwaliteit van de film. Hiermee kan de film met een constante kwaliteit worden gecodeerd. Het probleem is echter dat het uiteindelijke bitrate onvoorspelbaar is, en daarmee de grootte van het resultaat.

    Nu heeft transcode ook de mogelijkheid tot "multi-pass encoding". In de "first pass" wordt de film geanalyseerd voor de verdeling van de bits in de "second pass". Tijdens de "second pass", worden deze gegevens gebruikt om een efficiente bit verdeling te vinden. Hiermee is zowel de kwaliteit als de bitrate voorspelbaar.

    Ik krijg dit echter niet voor elkaar met mpeg-2, en begin eraan te twijfelen of de codec dit wel ondersteunt. Weet iemand of "multi-pass encoding" mogelijk is met mpeg-2? Of zijn er nog andere mogelijkheden om met variabele bitrate te coderen waarbij de uiteindelijke bestandsgrootte voorspelbaar is?
  • [quote:bef7d282e2="7_feet_up"]………………………..
    ………………………………………………….
    ………………………………………………….

    Ik krijg dit echter niet voor elkaar met mpeg-2, en begin eraan te twijfelen of de codec dit wel ondersteunt. Weet iemand of "multi-pass encoding" mogelijk is met mpeg-2? Of zijn er nog andere mogelijkheden om met variabele bitrate te coderen waarbij de uiteindelijke bestandsgrootte voorspelbaar is?[/quote:bef7d282e2]

    Multi-pass encoding is mogelijk bij mpeg-2, dit blijkt b.v. uit de geboden mogelijkheid door de encoders van Pegasys-inc en CinemaCraft.

    De uiteindelijke bestandsgrootte is voorspelbaar als een gemiddelde bitrate kan worden opgegeven.
  • heb net 10 uur video op 1 dvd gezet :-) elke aflevering 55 minuten .

    niet met transcode ! gaat te langzaam…………



    kijk hier

    maak eerst 10 ksvcd met de volgende specificaties :

    video file size 290 mb ( gebruik double pass )
    audio moet voldoen aan ffmpeg 224kb/s en 48000 khz

    muxen met :

    mplex -f 8 -o XXX.mpg XXX.m2v XXX.mp2

    dit levert video bestanden op van tussen de 390 en 400 mb

    ga vervolgens naar de dvd pagina :-)

    ondertiteling kan ook hardcoded .
  • :o

    Ff wennen hier op het linux-forum… maar wel lekker verder hoor :wink:
  • Je zult je wat meer in de documentatie moeten verdiepen, voor zover ik begrijp kan recode prima VBR mpeg2 maken.
    Ik ben echter geen linux gebruiker en ken recode niet van gebruik maar alleen van het lezen van de faq.( http://zebra.fh-weingarten.de/~transcode/man1/transcode.1.html )

    Werkelijke Variabele bitrate video met een voorspelbare bestandsgrootte kun je alleen maken in 2-pass encoding.
    Variabele bitrate in 1 pass wordt altijd "constant quality" video, dat kan ook niet anders: de encoder weet halverwege de codeer sessie nog niet hoe lang het bestand is en dus ook niet hoeveel er nog resteerd en dus kan ie geen bitrate instellen.
    De evt. instelling die je maakt voor de bitrate is dan ook een soort van streefwaarde of maximale bitrate.
    Constant quality encoding is eigenlijk nooit gewenst maar is een voortvloeisel uit de ontwikkeling van real-time capture-compressie codec's die je gebruikt om bv live tv materiaal te encoden, het is tevens de meest eenvoudigste manier om vbr te implementeren in een codec.

    Voor het kleinmaken van je files zul je behalve een hoge compressie ook de resolutie moeten verlagen, het dvd formaat kent behalve de 720x576 ook het 1/2 D1 formaat 352x576 en zelfs ook nog 352x288(het vcd/Qsif formaat) alhoewel met de laatste wel eens afspeelproblemen optreden.
    Verder kun je er voor kiezen om de audio met een lagere bitrate dan de standaart dvd waarde van 384 Kbs te gebruiken.
    Als je erg veel materiaal op 1 dvd kwijt wilt is iedere kbs welkom en audio op 384 is een beetje overkill, met 128 kbs klinkt het ook nog best wel redelijk en met gesproken woord kun je zelfs wel naar 96 kbs.
    Zo houd je meer dataruimte over voor de video.
  • [quote:c63b44ea84]Als je erg veel materiaal op 1 dvd kwijt wilt is iedere kbs welkom en audio op 384 is een beetje overkill, met 128 kbs klinkt het ook nog best wel redelijk en met gesproken woord kun je zelfs wel naar 96 kbs.
    Zo houd je meer dataruimte over voor de video.[/quote:c63b44ea84]

    even voor de goede orde met de programma's die ik voorstelde , met gebruik van dvdstyler moet je voldoen aan bepaalde specs. Ook de audio specs

    .
  • @ buildid: ik gebruik avidemux inmiddels en het lijkt te werken. Het gaat merkwaardig genoeg inderdaad een stuk vlotter dan transcode. Alleen jammer dat je het videobestand niet kunt afspelen tijdens het coderen om te kijken hoe het resultaat wordt voordat het coderingsproces is beëindigd.
    @ buildid & rwilligen:Voor de audio gebruik ik een sample-rate van 48000 Hz (wordt door de dvd-specificaties vereist) en een bitrate van 128 kbps. Dit is de bitrate van de source audio, dus het is inderdaad zinloos om de bitrate op te krikken zonder daarmee kwaliteitswinst te behalen.
    @ rwilligen:
    [quote:c75e3016e7]Je zult je wat meer in de documentatie moeten verdiepen, voor zover ik begrijp kan recode prima VBR mpeg2 maken.
    Ik ben echter geen linux gebruiker en ken recode niet van gebruik maar alleen van het lezen van de faq.[/quote:c75e3016e7]Klopt en dit heb ik uiteraard gelezen. Maar zoals in de TS is te lezen slaagde ik hier niet in met mpeg-2 als uitvoer. Divx werkte wel. Misschien moet ik maar eens een bug rapporteren.

    [off-topic]Het is overigens geen faq, maar een man-page (manual) waar je link naar wijst. Het eerste wat een linux-gebruiker behoort te doen als hij of zij vragen heeft over een commando is: man commando. En dat is de tekst die je voor je krijgt als je 'man transcode' typt.[/off-topic]
  • <knip>
  • je kan mij bereiken als je vragen heb over avidemux op edonkey.com forum . Ben hier af en toe .

    vooral als je alles op dvd wilt zetten

    kan je hier je instellingen opschrijven waarmee je nu aan het omzetten bent ? dan kan ik het vergelijken met die van mij en eventueel nog een tip geven .

    ik heb alles trouwens DVDres als formaat gekozen en ging goed . ( dit alleen voor de serie van 10 afleveringen op dvd) voor

    succes en laat wat weten ben benieuwd .
  • Ah , ok, weer wat geleerd!
    Onder windows is het meestal commando/help of commando/?
    Tja, ik zou je verder graag willen helpen maar om nou ff een linux te bouwen om 1 probleem op te lossen :roll: ; gaat me iets te ver.
    Ik zal je dus verder niet met veel zinnigs kunnen helpen, mijn kennis ligt hoofdzakelijk op videogebied zelf.

    Is er geen grafisch front-end voor transcode?
    Maakt het leven een stuk makkelijker…
    Ik weet wel: een linux user is niet bang van de commandoregel maar ja; waarom moeilijk doen als het makkelijk kan?

    Een algemene tip die ik je nog wel wil geven; als video/audio coderen, vooral bij expirimentele software,niet wil lukken dan loont het soms de moeite om de audio en video eerst bij wijze van test om te zetten naar ongecomprimeerde audio en RGB-video.
    Je zult hiervoor een teststukje van enige tientallen seconden moeten maken aangezien een paar uur ongecomprimeerde video in de honderden gigabytes loopt en dus bijna niet is op te slaan.
    De logica achter de test is om te bepalen of er wellicht een conflict is tussen de invoer en uitvoer module waardoor de door jouw gewenste codeer optie niet wil lukken.
    Encoder software is meestal erg gevoelig voor formaat verschillen , het minste of geringste kan een encoder al van slag brengen

    AV software moet in ieder geval altijd feilloos werken met ongecomprimeerde video en audio die in het correcte formaat is, is dat niet het geval dan heb je met 99.99% zekerheid een bug gevonden.
    Nu weet je dat toch niet helemaal zeker, het bronformaat kan immers de bug veroorzaken.
    Bij voorkeur laat je de codeer software dan dus ook zo min mogelijk bewerkingen uitvoeren.
    Voor een dvd test betekent dat dus video in RGB24-720x576@25 Fps en audio op 48Khz-16bit-stereo-pcm.

    Het is sowiezo altijd handig om zo'n test file
    (tje) bij de hand te hebben, bij het minste of geringste probleem kun je zo heel snel bepalen of de software fout is of dat je wellicht zelf een (syntax) fout maakt.

    Zou blijken dat het wel lukt met de rgb video dan zou je daarna enige compressie formaten kunnen proberen waarmee het wellicht ook lukt, DV-avi is in dat opzicht een aanrader.

    Overigens; wat is de foutmelding die je krijgt? , of; waardoor lukt de vbr codeer sessie niet?
  • [quote:f0f5cf5cea]Is er geen grafisch front-end voor transcode?[/quote:f0f5cf5cea]

    gtranscode maar nogmaals er zijn scripts voor linux die een dvd in 1 uur rippen naar divx met subs .

    er is avidemux : avidemux docs
    docs om de mogelijkheden te bekijken , er is ook een windowsversie van voor noppes :-) aardige jongens die pinguins .

    Dit is zoveel sneller ……en kwalitatief goed .
  • Ik krijg geen foutmelding. Bij two-pass encoding zou er een logfile gemaakt moeten worden, maar dat gebeurt niet. Er wordt tijdens de first pass weliswaar gecodeerd, maar er wordt dus geen logfile aangemaakt die tijdens de second pass geraadpleegd kan worden.

    Wat betreft de grafische front-end: dat kan handig zijn, als je sporadisch een enkel filmpje wilt coderen. Maar mijn voorkeur gaat uit naar de commandline. Daarmee kan ik met één regel tekst een aantal bestanden laten coderen, zonder dat ik daarvoor ieder bestand opnieuw moet openen om vervolgens dezelfde opties moet aanklikken. Dit geeft mij de mogelijkheid om bijvoorbeeld 's nachts 10 films achter elkaar te coderen zonder dat ik erbij hoef te zitten om nu en dan op een knop hoef te klikken. De commandline heeft inderdaad een steilere leercurve, maar als je het eenmaal onder knie hebt, gaat het een stuk sneller. Als ik de eerste serie van Cold feet naar tevredenheid op dvd heb, kan ik met een eenvoudig script hetzelfde proces automatiseren voor serie 2 tot en met 6. Tel uit je tijdswinst.

    Avidemux werkte voor mij; ik heb inmiddels zeven afleveringen Cold feet op één dvd (weliswaar wat blokkerig nu en dan). Het geeft mij echter niet de controle van de command-line. Zo moest ik een keuze maken uit een aantal 'matrices'. Matrices?! Ik heb geen weloverwogen keuze kunnen maken uit de opties 'default mpeg', 'tmpeng', 'animé' (deze valt af, denk ik) en 'K-VCD'. Ik heb de laatste optie gekozen, maar waarom…? Ik heb hierover, ook na veel zoeken, geen documentatie kunnen vinden. Ik heb dus geen idee wat hier achter de schermen gebeurt.
  • Het kwantizatie matrix is een (virtueel) matrix oftwel model welke gebruikt wordt om
  • [quote:72af25fe53]Ah , ok, weer wat geleerd![/quote:72af25fe53]Zo leer ik er ook weer wat bij :D
    Ik heb inmiddels het (sterke) vermoeden dat de onmogelijkheid om door middel van two-pass compressie te coderen naar mpeg-2 ligt aan de export module van transcode, omdat hetzelfde proces wel werkt met (enkele) andere formaten. Transcodes eigen mpeg export module ondersteunt dit gewoon (nog) niet.
  • je kan met avidemux ook vanaf de clc werken en met batch processing werken .

    mijn instelling en absoluut scherp :

    download het laatste van het laatste ( nieuwste )

    [quote:4147f4be57]cvs -d:pserver:anonymous@cvs.berlios.de:/cvsroot/avidemux login
    cvs -d:pserver:anonymous@cvs.berlios.de:/cvsroot/avidemux co avidemux
    cd avidemux
    make -f Makefile.dist
    ./configure
    make[/quote:4147f4be57]

    load file - of openen
    vprocess
    v-filter —-> dvres, en ik gebruik subs.
    video kies ik dvd (lavc)
    bij configure (codec)
    -double pass/two pass
    -size 290 mb
    -vbv buffer size 224kb
    progresive
    aspect ratio 4:3
    MATRICES: kvcd
    gop size :

    KVCD is a modification to the standard MPEG-1 and MPEG-2 GOP structure and Quantization Matrix. It enables you to create over 120 minutes of near DVD quality video, depending on your material, on a single 80 minute CD-R/CD-RW. We have published these specifications as KVCDx3, our official resolution, which produce 528x480 (NTSC) and 528x576 (PAL) MPEG-1 variable bit rate video, from 64Kbps to 3,000Kbps. Using a resolution of 352x240 (NTSC) or 352x288 (PAL), it's possible to encode video up to ~360 minutes of near VCD quality on a single 80 minute CD-R. The mpeg files created will play back in most modern standalone DVD players. You must burn the KVCD MPEG files as non-standard VCD or non-standard SVCD (depends on your player) with Nero or VCDEasy.

    Using KVCD parameters to create DVDs (KDVD), will enable you to create 100% DVD compliant MPEG-2 streams, capable of playing on any standard DVD player. This will allow you to put up to about 6 hours Full D-1 720x480 on one DVD, or about 10 hours at Half D-1 352x480.
    [quote:4147f4be57]DVD Compliance:

    For DVD compliant MPEG files, select the standard DVD parameters for your encoder, but change (modify, patch, etc.) the matrix on your encoder to use the KVCD "Notch" Quantization Matrix. This will enable play times of ~6 hours on a 4.7GB DVD(+-)R(W) media at a standard resolution of 720x480(576 ) Full D-1, Wide Screen encodes, or ~10 hours at a resolution of 352x480( 576 ) Half D-1.[/quote:4147f4be57]


    This will enable play times of ~6 hours on a 4.7GB DVD(+-)R(W) media at a standard resolution of 720x480(576 ) Full D-1

    ik krijg 10 x 55 minuten met een resolutie van 720x480

    tenslotte save file als "m2v" extensie .

    dit voor het video gedeelte , versie 2.32 van avidemux was niet best , je moet upgraden .

    site van avidemux —-docs —-engels —-scripting staat wel iets voor je bij , ik werk met ondertiteling dus word lastiger ,deze veranderd steeds .

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.