Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 0 - Verfasst am: So Feb 26, 2006 23:02 Titel: Video resizen in bester Quali |
 |
|
Hallo!
Habe ein Video in 720*480 25fps und möchte es in der bestmöglichen Quali auf 720x576 25fps resizen. Mit welchem Programm würdet Ihr das machen?
Grüße,
Tim |
|
 |
scharfis_brain 

Anmeldungsdatum: 18.05.2003 Beiträge: 516
|
Beitrag 1 - Verfasst am: So Feb 26, 2006 23:43 Titel: |
 |
|
moooment: 720x480 bei 25fps? wo gibt es denn sowas?
sollten das nicht eher 23.976 oder 29.97 fps sein? |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 2 - Verfasst am: Mo Feb 27, 2006 0:11 Titel: |
 |
|
Also, dann fang ich doch mal von vorne an. Ich hab halt ein NTSC-DV-avi interlaced (60 Halbbilder). Das möchte ich in Pal interlaced (50 Halbbilder) wandeln. Da bei der Umwandlung von 30fps auf 25fps bei allen mir bekannten Methoden ein ruckeln auftritt, haben ich mir gedacht ich versuche das ganze mal mit Dynapel MotionPerfect, da das Programm Bilder neu berechnet damit nichts ruckelt. Ok, Trial-version runtergeladen und das Ergebnis in 720x480 25fps ist wirklich ok. Wenn ich das aber jetzt auf 720x576 resizen will, werden irgendwie immer die halbbilder vermischt, sodaß das Bild bei Bewegungen wieder ausgefranst ist. Irgendwelche Ideen wie ich alles ruckelfrei und ohne Bewegungsunschärfe hinbekomme? |
|
 |
scharfis_brain 

Anmeldungsdatum: 18.05.2003 Beiträge: 516
|
Beitrag 3 - Verfasst am: Mo Feb 27, 2006 0:20 Titel: |
 |
|
ich empfehle DIr, wenn denn die Normwandlung unbedingt sein muss, AVIsynth dafür zu benutzen.
Motionperfect ist alles andere als 'perfect':
- schlechte interlaced-behandlung
- wabern der objekte
- keine saubere bewegungserkennung
- umweg über zwischendateien
Sagmal, ob (und wenn wieweit) Du AVISynth kennst. |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 4 - Verfasst am: Mo Feb 27, 2006 0:29 Titel: |
 |
|
Danke erstmal für die Antworten! Ich kenne natürlich VirtualDub, aber mit Scripts habe ich z.B. noch nie gearbeitet. |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 5 - Verfasst am: Mo Feb 27, 2006 0:41 Titel: |
 |
|
ich werwechsele immer virtualdub und avisynth... ich hab damit auch schon gearbeitet, aber ich traue mir echt nicht zu eigene scripts dafür zu schreiben... |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 6 - Verfasst am: Mo Feb 27, 2006 1:14 Titel: |
 |
|
Habe im doom9-Forum (da bist du ja auch sehr aktiv) folgendes script für avisynth gefunden. Wäre das passend? Oder gibt es noch ein script füe die ultimativste Qualität? ;-)
Code: |
#paar sekunden für ein frame - wahnsinnig gute quali
mvbob()
MotionProtectedFPS(50)
bicubicresize(width,576)
assumetff().separatefields().selectevery(4,0,3).weave()
|
Jetzt möchte ich den Film mit VirtualDub in eine neue avi-Datei umwandeln. Aber ich habe da im Moment echt keinen Plan wie das funktioniert. Ich lese mir mal die Dokus durch, aber vielleicht kannst Du ja noch mal helfen! |
|
 |
Kika  Moderator
Anmeldungsdatum: 11.06.2001 Beiträge: 3397 Wohnort: Nahe München
|
Beitrag 7 - Verfasst am: Mo Feb 27, 2006 11:15 Titel: |
 |
|
Besser als mit diesem Script, das Du da gefunden hast, geht es zurzeit nicht. Dauert aber auch ewig.
Das Script ist eigentlich schon komplett, es fehlen nur noch die Import-Zeile für die Plugins sowie die Source-Zeile. Beispiele dafür gibt's auf dem Board ja zur Genüge. |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 8 - Verfasst am: Mo Feb 27, 2006 11:23 Titel: |
 |
|
So, habe Avisynth 1.5.6 installiert und mir MvBob runtergeladen (http://home.arcor.de/scharfis_brain/mvbob/mvbob.rar) ebenso MotionProtectedFPS vom 12.12.2005 (http://people.pwf.cam.ac.uk/mg262/posts/Motion/Motion_12Dec05.zip).
MvBob und MotionProtectedFPS habe ich in den plugins-Ordner von AviSynth entpackt. richtig?
Habe mir ein Script gebastelt, aber das funktioniert nicht. Bitte nicht gleich meckern, ich bin echt blutiger Anfänger!!!
Code: |
AviSource("f:\Wede\Vorspann.avi")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\MVTools.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\Motion_12Dec05.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\EEDI2.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\LeakKernelDeint.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\MaskTools.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\RemoveGrain_v10pre1.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\TomsMoComp.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\UnDot.dll")
mvbob()
MotionProtectedFPS(50)
bicubicresize(width,576)
assumetff().separatefields().selectevery(4,0,3).weave()
|
Aber es kommt dann immer die Fehlermeldung "there is no function named "mvbob"".
Kann mir das jemand erklären? |
|
 |
bergH  Moderator
Anmeldungsdatum: 14.06.2001 Beiträge: 13672 Wohnort: Am Kamener Kreuz
|
Beitrag 9 - Verfasst am: Mo Feb 27, 2006 11:36 Titel: |
 |
|
tach auch !
Hast Du denn das mvbob pluin heruntergeladen und installiert ?
Wenn nicht such mal in meiner Signatur nach Warp Enterprise(es) und da nach desseln Filterliste. _________________ Gruß BergH |
|
 |
BPHennek 

Anmeldungsdatum: 05.06.2001 Beiträge: 7473 Wohnort: EXSIS-Elegance
|
Beitrag 10 - Verfasst am: Mo Feb 27, 2006 11:52 Titel: |
 |
|
Guten Tag,
hast Du schon Deine Linkliste aktualisiert? _________________ Gier und Uneinsichtigkeit fressen den Verstand! |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 11 - Verfasst am: Mo Feb 27, 2006 12:03 Titel: |
 |
|
Also das MvBob-Plugin ist doch die MVTools.dll, oder? Und die habe ich ja geladen!
Link zu Warpenterprises ist übrigens:
http://www.avisynth.org/warpenterprises/
Zuletzt bearbeitet von Tim am Mo Feb 27, 2006 12:04, insgesamt einmal bearbeitet |
|
 |
Kika  Moderator
Anmeldungsdatum: 11.06.2001 Beiträge: 3397 Wohnort: Nahe München
|
Beitrag 12 - Verfasst am: Mo Feb 27, 2006 12:03 Titel: |
 |
|
mvbob() ist kein Plugin, sondern eine Script-Funktion, entsprechend muss sie auch importiert werden:
Import("c:\Programme\AviSynth 2.5\plugins\mvbob.avs") |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 13 - Verfasst am: Mo Feb 27, 2006 12:13 Titel: |
 |
|
Ok danke! Da komme ich der Sache jetzt schon näher. Mein script sieht jetzt wie folgt aus:
Code: |
AviSource("f:\Wede\Vorspann.avi")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\MVTools.dll")
Import("c:\Programme\AviSynth 2.5\plugins\mvbob.avs")
Import("c:\Programme\AviSynth 2.5\plugins\MotionProtectedFPS.avsi")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\Motion_12Dec05.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\EEDI2.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\LeakKernelDeint.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\MaskTools.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\RemoveGrain_v10pre1.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\TomsMoComp.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\UnDot.dll")
ConvertToYV12()
mvbob()
MotionProtectedFPS(50)
bicubicresize(width,576)
assumetff().separatefields().selectevery(4,0,3).weave()
|
Ist eigentlich die Zeile "Import("c:\Programme\AviSynth 2.5\plugins\MotionProtectedFPS.avsi")" soweit korrekt?
Ich bekam zuerst beim laden der avs-Datei in VirtualDubMOD 1.5.10.2 folgende Fehlermeldung:
---------------------------
VirtualDub Error
---------------------------
Avisynth open failure:
EEDI2: YV12 or YUY2 input required!
(c:\Programme\AviSynth 2.5\plugins\mvbob.avs, line 43)
(c:\Programme\AviSynth 2.5\plugins\mvbob.avs, line 97)
(c:\Programme\AviSynth 2.5\plugins\mvbob.avs, line 193)
(D:\test.avs, line 13)
Deeswegen habe ich die Zeile "VConvertToYV12()" ins Script eingefügt. Ist das so ok oder habe ich da einen fatalen Fehler begangen? |
|
 |
scharfis_brain 

Anmeldungsdatum: 18.05.2003 Beiträge: 516
|
Beitrag 14 - Verfasst am: Mo Feb 27, 2006 16:53 Titel: |
 |
|
schiebe das avisource mal direkt vor das converttoyv12() und nach das laden der plugins.
denn generell gilt:
zuerst plugins laden und scripte importieren, und erst dann mit dem video rumhantieren (also avisource)
Von wo nach wo willst Du wandeln?
NTSC-DV zu PAL-DV? Dann musst Du AVISynth noch die richtige FIeldorder von eingangs und ausgangsvideo per assumetff() / assumebff() mitteilen
Dein Script sollte also so aussehen:
Code: |
Import("c:\Programme\AviSynth 2.5\plugins\mvbob.avs")
Import("c:\Programme\AviSynth 2.5\plugins\MotionProtectedFPS.avsi")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\MVTools.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\Motion_12Dec05.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\EEDI2.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\LeakKernelDeint.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\MaskTools.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\RemoveGrain_v10pre1.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\TomsMoComp.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\UnDot.dll")
AviSource("f:\Wede\Vorspann.avi")
assumebff() #Eingangsfieldorder
ConvertToyuy2()
mvbob()
converttoyv12()
MotionProtectedFPS(50)
bicubicresize(width,576)
assumetff() #Ausgabefieldorder
separatefields().selectevery(4,0,3).weave()
|
PS: woher stammt dieses NTSC-Material? von einer echten NTSC-Kamera, oder ist es bereits gewandeltes Material? |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 15 - Verfasst am: Mo Feb 27, 2006 17:32 Titel: |
 |
|
Also, ich habe von einem amerikanischen Freund ein DVD mit NTSC-DV-Material erhalten. Dabei handelt es sich nicht um Filmmaterial von Cam, sondern um eine Diashow (interlaced) mit verschiedensten Überblendungen (rein, raus drehen, usw.). Das ganze hat er soviel ich weiß mit Adobe Premiere in einem NTSC-Projekt erstellt. Die Auflösung ist 720x480 bei 30fps.
Ich habe das heute mal mit meinem Script ausprobiert und man sieht wirklich nahezu gar nicht, daß da was gewandelt wurde! 1A!
Noch ein par Fragen zu Deinen Ergänzungen im Script:
Mein Ausgangs-avi liegt in bff vor. Also muss die folgende Zeile ja richtig lauten:
assumebff() #Eingangsfieldorder
Mein Ausgangsvideo soll auch in bff vorliegen. Also muss ich da
assumebff() #Ausgabefieldorder schreiben?
Warum wird erst zu yuy2 gewandelt und danach zu yv12?
Code: |
ConvertToyuy2()
mvbob()
converttoyv12() |
Zuletzt bearbeitet von Tim am Mo Feb 27, 2006 17:47, insgesamt einmal bearbeitet |
|
 |
Kika  Moderator
Anmeldungsdatum: 11.06.2001 Beiträge: 3397 Wohnort: Nahe München
|
Beitrag 16 - Verfasst am: Mo Feb 27, 2006 17:44 Titel: |
 |
|
Zitat: | Warum wird erst zu yuv2 gewandelt und danach zu yv12? |
Einfache Antwort: Weil's besser ist für die Bildqualität, wenn mit mvbob() gearbeitet wird. Aber das gilt eigentlich generell, wenn man mit interlaced Video arbeitet. YV12 ist da nicht so günstig. |
|
 |
scharfis_brain 

Anmeldungsdatum: 18.05.2003 Beiträge: 516
|
Beitrag 17 - Verfasst am: Mo Feb 27, 2006 18:33 Titel: |
 |
|
huch. glatt vergessen! nach motionprotectedfps(50) muss natürlich wieder zurück zu yuy2() gewandelt werden!
es wird nur wegen motionprotectedfps() nach YV12 gewandelt, weil es keinen anderen Farbraum unterstützt. |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 18 - Verfasst am: Di Feb 28, 2006 0:34 Titel: |
 |
|
Bin jetzt wieder daheim und kann endlich weitermachen. :-)
Mein Script sieht jetzt so aus:
Code: |
Import("c:\Programme\AviSynth 2.5\plugins\mvbob.avs")
Import("c:\Programme\AviSynth 2.5\plugins\MotionProtectedFPS.avsi")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\MVTools.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\Motion_12Dec05.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\EEDI2.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\LeakKernelDeint.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\MaskTools.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\RemoveGrain_v10pre1.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\TomsMoComp.dll")
LoadPlugin("c:\Programme\AviSynth 2.5\plugins\UnDot.dll")
AviSource("f:\Wede\Vorspann.avi")
assumebff() #Eingangsfieldorder
ConvertToyuy2()
mvbob()
ConvertToyv12()
MotionProtectedFPS(50)
ConvertToyuy2()
bicubicresize(width,576)
assumebff() #Ausgabefieldorder
separatefields().selectevery(4,0,3).weave()
|
@scharfis_brain
kannst du mal drüberschauen ob das jetzt so alles ok ist? |
|
 |
Tim 
Anmeldungsdatum: 03.09.2001 Beiträge: 64
|
Beitrag 19 - Verfasst am: Di Feb 28, 2006 14:52 Titel: |
 |
|
Hallo nochmal!
Meine DV-Videos sind mit dem PinnacleDV-Codec erstellt. Laut Avisynth Info-Funktion ist der Farbraum dieser Videos RGB32. Jetzt habe ich auf der Seite von scharfis_brain gelesen, dass man die folgende Funktion benutzen sollte, um vor großen Bildmanipulationen das Video zurück ins native yv12 zu bringen.
Code: |
# revert PAL-DV to YV12 for speed and quality reasons;
# needs yuy2 input (ie. canopus-dv-decoder)
# BFF Mandatory (hint: DV-AVIs commonly are BFF)
function reYV12(clip i)
{ isyuy2(i) ? i : i.converttoyuy2()
yx=i.converttoyv12()
x=i.separatefields().assumeframebased().separatefields().selectevery(4,0,2).weave()
ux=x.utoy().converttoyv12()
vx=x.vtoy().converttoyv12()
ytouv(ux,vx,yx)
}
|
Ist das sinnvoll diese Funktion auch in dem Formatkonvertierungs-Script oben einzubauen? Wenn ja, wo genau im Script? Noch vor "ConvertToyuy2()"? Oder ist das alles unnötig?[/code] |
|
 |
|