digitalFAQ.com Forums [Archives]

digitalFAQ.com Forums [Archives] (http://www.digitalfaq.com/archives/)
-   Video Konvertierung und Encodieren (Deutsch) (http://www.digitalfaq.com/archives/deutsch/)
-   -   Frage zu NTSC-PAL Conversion, script liegt bei ! (http://www.digitalfaq.com/archives/deutsch/7439-frage-zu-ntsc.html)

sigi144 12-31-2003 11:27 AM

Frage zu NTSC-PAL Conversion, script liegt bei !
 
1. Ich möchte analoges interlaced Filmmaterial von NTSC 480x480 auf PAL 352x576 K-HalbDVD (mpg2-stream) mittels dvd2avi--->avssccript--->Vfapi-->Virtualdub 29 zu 25 mit directstreamcopy und die virtualdubdatei in den cce einlesen aber die bricht mit folgenden fehler ab: "GdipLoadimagefromFile failed: 3"

2. Im Virtualdub stelle ich die Framerate in der Option
Change Framerate auf 29.970 ein da das der DVD2AVI ausspuckt.


Und hier das AVS-Script:

mpeg2source("c:\Neuer Ordner\1.d2v")
myanamorphic=false
myoverscan=1
MaxTreshold = 1.50

nf = 0 # Current frame.
function fmin( int f1, int f2) {
return ( f1<f2 ) ? f1 : f2
}
function Slicer (clip c, int "sa", int "gop", int "off", int "gl", int "subs") {
off=default(off, 0)
gop= default(gop, 15)
gl= default(gl,2)
sa= default(sa,2)
subs = default (subs, 1)
Frames=framecount(c)
Framer=framerate(c)
Offset=round(Framer*off)
c=Trim(c,Offset,0)
c=Subs >= 1 ? Subtitle(c, text_color=$999999 ,size=16,\
"Offset set to : "+String(off)+" sec. "+\
"(Offset intervall should be: 0 sec. / "+\
String(Round(((Frames/Framer)/60)/(round(((Frames)/100)/(gop*gl))*sa)*60)/2)+" Sec.)",10,18 ) : \
Subtitle(c," ",10,18 )
c=sampler(c,samples=(round((Frames)/(gop*gl)/100*sa*1.009)), Length=(gop*gl))
Return c
}

unfilter(50,50)
GripCrop(352,576,overscan=myoverscan,source_anamor phic=myanamorphic,dest_anamorphic=false)
GripSize(resizer="BicubicResize")
GripBorders()
AssumeFps(25.000)
#AddBorders(16,16,16,16)

#STMedianFilter(8,32,0,0,8,32)
STMedianFilter(3,3,0,0)
mergechroma(blur(1.50))
mergeluma(blur(0.2))
# Convolution3d or DCTFilter for extreme worse cases.

SeparateFields()
SelectEvery(4,1,2)
#Telecide(order=1)
fieldDeinterlace()
Decimate()
Limiter()

SwitchThreshold = (Width<=352) ? 4 : (Width<=480) ? 3 : 2
ScriptClip("nf = YDifferenceToNext()"+chr(13)+ "nf >= SwitchThreshold ? \
unfilter( -(fmin(round(nf)*2, 100)), -(fmin(round(nf)*2, 100)) ) : \
TemporalSoften( fmin( round(2/nf), 6), round(1/nf) , round(3/nf) , 1, 1) ")
converttoyuy2()

Was mache ich falsch ???? Bitte helft mir Leute !!!! :)

incredible 12-31-2003 12:21 PM

Wenn du wirklich interlaced material hast (prüfe das in DVD2AVI mittles preview ob da kamm effekte sind). Dann weiss ich nicht, was du da mit vdub und vor allem der Zeile Select every vorhast??

Code:

SeparateFields()
SelectEvery(4,1,2)
#Telecide(order=1)
fieldDeinterlace()
Decimate()

Wo hast du das denn her?? Aus dem Avisynth Guide?

Wenn es ein telecined material ist, dann wurde einfach nur ein pulldown vollzogen, wo 23.976 auf 29.976 mittels hinzufügen/duplizieren von Frames von statten gegangen ist. Der interlaced "effekt" wird durch eine Art phase shift (glaube ich) erstellt.

Somit reicht am ende ein
Telecide() # reconstruiert die Frames
Decimate() # bringt die Framerate von 29.976 wieder richtig auf 23.976 zurück.
AssumeFPS(25) #´haolt die Framerate auf PAL hoch.

Das ist alles und da brauchst du auch nix mehr in Vdub zu machen!
Denn wenn du dann dieses avs mal in Vdub previewest siehst du, dass alles gut aussieht und 25 fps hat.

Danach musst du den ton noch in besweet von 23.976 auf 25.000 fps via OTA menue bringen, wenn du ihn auf mp2 oder wiederum auf ac3 bringst

zaks 12-31-2003 12:24 PM

1. Warum Virtual Dub?
2. Warum Framerate Conversion?
3. Warum so ein wirres AVS Script?
4. Warum die Slicer() Routine zum Predicten im AVS Script?

Gruß,
Zaks

sigi144 12-31-2003 01:02 PM

hallo Leute !

Also das mit dem telecined weiss ich nicht genau, ich kann nur sagen das ich ein 29 fps video habe. und ich hab gedacht die slicerfunktion wäre zur verbesserung von schlechten bildmaterial und hilft die files kleiner zu machen. also dich hab ich jetzt ausremarkt.
Also einfach ausgedrückt: Ich will meinen Video von 29 fps auf 25 fps runterholen: wass muss ich tun ?

incredible 12-31-2003 01:14 PM

Bei einer hollywood film DVD habe ich dir das oben beschrieben.

Die von mir entwickelte slicerfunktion hat nur was mit der prediction zu tun!

Demnach so machen:
Code:

mpeg2source("c:\Neuer Ordner\1.d2v")
myanamorphic=false
myoverscan=1

nf = 0 # Current frame.
function fmin( int f1, int f2) {
return ( f1<f2 ) ? f1 : f2
}

Telecide()
Decimate()

Asharp(1,4)
GripCrop(352,576,overscan=myoverscan,source_anamorphic=myanamorphic,dest_anamorphic=false)
GripSize(resizer="BicubicResize")
GripBorders()
STMedianFilter(3,3,0,0)
mergechroma(blur(1.50))
mergeluma(blur(0.2)) 

SwitchThreshold = (Width<=352) ? 4 : (Width<=480) ? 3 : 2
ScriptClip("nf = YDifferenceToNext()"+chr(13)+ "nf >= SwitchThreshold ? \
unfilter( -(fmin(round(nf)*2, 100)), -(fmin(round(nf)*2, 100)) ) : \
TemporalSoften( fmin( round(2/nf), 6), round(1/nf) , round(3/nf) , 1, 1) ")

Limiter()
AssumeFps(25.000)
converttoyuy2()

Und Ton nachher wie gesagt mit Besweet von 23.976 auf 25.000 bringen (OTA Settings)

sigi144 12-31-2003 02:25 PM

Vielen Dank nochmal für deine Hilfe Inc. :)

Ich werd ihn mit diesem Script codieren lassen, allerdings kam noch eine Fehlermeldung vom Telecide. Er verlangt tff oder bff. D.h. wahrscheinlich topfield first und bottomfield first. Aber welches von beiden soll ich nehmen ?

Und zum Ton. Ich habe mit besweet den Ton von 29 fps auf 25 konvertieren lassen. War das nicht richtig ? Muss ich wirklich von 23 auf 25 konvertieren lassen ?

Vielen Dank nochmal für die Hilfestellung !!!!


All times are GMT -5. The time now is 12:44 AM  —  vBulletin © Jelsoft Enterprises Ltd

Site design, images and content © 2002-2024 The Digital FAQ, www.digitalFAQ.com
Forum Software by vBulletin · Copyright © 2024 Jelsoft Enterprises Ltd.