PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : x264 GUI ohne .NET


Deinorius
27. February 2006, 15:04
Hi

ich suche für einige Freunde ein GUI, das ohne .NET auskommt, da die meisten keins installiert haben und auch nicht unbedingt gewillt sind, es wegen einem Programm zu installieren.
Ich hab zwar schon an RealAnime gedacht, aber das bietet nicht viele Einstellungsmöglichkeiten. Die Version 4 schon gar nicht. Weitere fallen mir nicht ein, die aktuell genug sind.

Ich bräuchte daher ein GUI, dass ich vorkonfigurieren kann und sie dann nur noch nutzen müssen. Vorteillhaft, wenn ich die x264 Profiles von Sharktooth einsetzen könnte und wenn ich sie manuell eingeben muss. Avisynth ist selbstverständlich.

Danke im voraus.

Gidra
27. February 2006, 16:27
Hi,

Wie kommst du darauf dass der Framework nicht installiert ist ?
Fast alle WinXP Versionen beinhalten schon zumindest Fram. 1.0 in sich.

Nur die neueren Progis verlangen oft schon nach Fram. 2.0

Deinorius
27. February 2006, 16:30
Mit dem Framework 1.0 kann man eh nix anfangen. 1.1 wird schon gar nicht mehr unterstützt und das haben die meisten auch nicht, geschweige denn von 2.0. Darum die Frage.
Sonst würd ich ja gleich MeGUI oder StaxRip empfehlen, aber die brauchen ja nun mal FW 2.0.

Gidra
27. February 2006, 16:44
Ich bezog mich nur darauf weil du sagtest dass die meisten eh keinen Framework haben und nur ungerne ihn wegen 1 einzigen Programm installieren würden. Fram. ist aber in jeder XP Version schon da. Egal...

Keine Ahnung was Matrizen angeht, aber kannst du mit Guardian Knot nichts anfangen ?

akapuma
27. February 2006, 17:12
Hallo,

wäre GKnot in Verbindung mit agkp (http://forum.gleitz.info/showthread.php?t=22860) nichts? Man kann verschiedene Profile angeben, in dem man eine .bat-Datei anpasst. Im Bild sind 3 verschiedene Profile zu sehen, und zwar "1-pass-ABR", "2-pass" und "3-pass Turbo". Diese können natürlich noch um weitere Einstellungen, z.B. "2-passHQ", "2-passLQ" etc. ergänzt werden. Das gezeigte Fenster poppt vor jedem Encodiervorgang auf und bietet neben diversen x264-Einstellungen noch ergänzende Filter sowie mkvmerge-Einstellungen an. Die Filter können selbst um weitere ergänzt werden.

Als Anlage hänge ich noch die .BAT-Datei an, in der die Profile eigegeben werden können.

Gruß

akapuma

Archimedes1
27. February 2006, 18:07
Die Frage nach Alternativen zum MeGUI habe ich mir auch schon gestellt. Als ich auf meinem Notebook Microsoft Framework .NET 2 installierte, ließ sich Delphi nicht mehr starten. Habe somit die alte 1.1-Version wieder installiert. Jedoch konnte ich die neuere Framework-.NET-Version dann auf einem anderen Rechner installieren, ohne dass ein anderes Programm in Mitleidenschaft gezogen wurde, so dass ich wenigstens da in den Genuss der neueren MeGUI-Versionen komme. :-)

Auf dem Notebook verwende ich eine Version von MeGUI, die noch unter Framework .NET 1.1 lauffähig ist.

Deinorius
27. February 2006, 19:36
@Gidra
Das FW, das schon von Anfang an da ist, nützt aber nix für, wenn die heutigen Programme die Version 2.0 brauchen. Ich weiß auch nicht, ob Programme, die für 1.1 programmiert wurden, mit 1.0 lauffähig sind.

@akapuma
An Gordian Knot hab ich insofern nicht gedacht, da mir ISO-konform recht wäre. Aber da ist mir agkp nicht eingefallen. Wenn ich deinen Link lese, dann wäre das DIE Lösung für mich. O.O

Danke dafür, ich werd mich mal daran setzen. ^^ Unterstützt es irgendwie Sharktooths x264 Profile, oder muss ich die manuell eingeben?
Ich hab schon lang nimma mit GKnot g'haklt. :zunge:

akapuma
27. February 2006, 20:15
Unterstützt es irgendwie Sharktooths x264 Profile, oder muss ich die manuell eingeben?Man muß sie leider manuell eingeben, aber nur einmal. Ich hab das nicht gemacht, da ich mir unter Zuhilfenahme von Selur's "Wissenswertes" was eigenes gebastelt habe.

Gruß

akapuma

Deinorius
27. February 2006, 21:33
Puuuh... no bumm. Ich wollte nur was schnelles kreieren und das weitergeben, da ich noch anderes zu tun hab, aber deine Anleitung ist ganz schön lang. ^^"
Im Grunde will ich nur, dass eine Avisynth Datei mit folgendem Inhalt erstellt wird:

Avisource("blabla")
RemoveGrain(1)

per x264 CLI komprimiert und mit mkvmerge zusätzlich noch eine Ogg Vorbis Datei mit Language-Tag in den Matroska Container gemuxt wird.
Wäre es zuviel verlangt, um so eine ini Datei zu bitten?
Die Profile werd ich selbst versuchen. Kann ich irgendwie eine Referenz verwenden, damit es schneller geht?

akapuma
27. February 2006, 23:15
Im Grunde will ich nur, dass eine Avisynth Datei mit folgendem Inhalt erstellt wird:

Avisource("blabla")
RemoveGrain(1)

Kein Problem, mach ich morgen, da mein Bette ruft. Soll RemoveGrain direkt hinter Avisource? Ich würd's eher dahin schieben, wo normalerweise die Rauschfilter stehen, also hinter Deinterlacing und Cropping.

Gruß

akapuma

Deinorius
27. February 2006, 23:18
Es soll eigentlich nur das drinstehen, was ich hingeschrieben hab. Ich mach nur eine Konvertierung von Xvid auf x264, gefiltert und resizet wurde schon, also reicht RemoveGrain vollkommen aus. :) Eine LoadPlugin Funktion dessen schadet aber nicht, ich kanns dann anpassen. ^^

Danke vielmals.
Übrigens, gibts irgendwo Referenzen für die Kommandozeilenbefehle von x264?

akapuma
28. February 2006, 06:09
Übrigens, gibts irgendwo Referenzen für die Kommandozeilenbefehle von x264?Hier. (http://www.flaskmpeg.info/board/thread.php?threadid=5571)

Gruß

akapuma

akapuma
28. February 2006, 18:23
Hallo Deinorius,

Deine ini ist fertig. Ich habe folgendes hinzugefügt:
an*RemoveGrain(1)*-2*aus*ein
km*\SimpleResize.dll")
em*\SimpleResize.dll")*?kl*\removegrain.dll")
su*undot()
ha*?na*Removegrain(1) Die erste Zeile mit "an"="anzeige Namen" legt den Namen der neuen Funktion fest (RemoveGrain(1)). Diese soll 2 Optionen haben, "aus" und "ein". Standardmäßig soll die zweite = "ein" aktiviert sein (2). Das "-" sorgt dafür, daß der Cursor standardmäßig auf dieser Funktion steht.
In der zweiten Zeile wird nach \SimpleResize.dll") gesucht und eine Kopie von der ganzen Zeile (Loadplugin...) erstellt. Gefunden wird eine Zeile mit Pfad, wo Plugins eingebunden werden.
In der dritten Zeile wird festgelegt, daß in der Kopie \SimpleResize.dll") ersetzt werden soll. Im ersten Fall (RemoveGrain ist aus) braucht man das Plugin nicht, deshalb wird die Kopie gelöscht. Im zweiten Fall (RemoveGrain ist ein) wird in der Kopie \SimpleResize.dll") durch \removegrain.dll") ersetzt. Das Plugin RemoveGrain ist jetzt eingebunden und kann verwendet werden. Eventuell kann/sollte removegrain.dll durch removegrains.dll, removegrainsse2.dll oder removegrainsse3.dll ersetzt werden.
In der vierten Zeile soll nach undot() gesucht werden, da removegrain(1) dahinter geschrieben werden soll.
Die fünfte Zeile hängt etwas an. Und zwar im Fall "removegrain=aus" nichts (?na=nicht ausführen). Und wenn removegrain an ist, wird wunschgemäß Removegrain(1) angehängt.
Und das ganze hab ich mir jetzt nicht mühsam ausgedacht, sondern ich habe die bereits vorhandene Deinterlacer-Funktion kopiert und angepasst.

Weiterhin hab ich in der ini-Datei den Postprocessor standardmäßig abgeschaltet, mit Avisource ist er sowieso nicht anwendbar. Weiterhin hab ich das normalerweise von GKnot eingefügte undot() rausgenommen, da Removegrain(1) undot() sicher ersetzen soll.

Gruß

akapuma

Deinorius
28. February 2006, 18:41
Ist in der Datei auch so gewählt, dass in GKnot ausgewählte Audio-Dateien automatisch mit mkvmerge gemuxt werden? Ansonsten müsste ich in der Datei nur noch diverse Befehle aus der Dokumentation von mkvmerge hinzufügen, oder sind diese auch in deiner Prog-Sprache zu schreiben?

Werd mich mal ein wenig ransetzen. Vielen Dank schon mal. ^^

akapuma
28. February 2006, 19:17
Ist in der Datei auch so gewählt, dass in GKnot ausgewählte Audio-Dateien automatisch mit mkvmerge gemuxt werden?mkvmerge wird unter bestimmten Rahmenbedingungen automatisch gestartet:

- es muß in GKnot als Container mkv ausgewählt worden sein
- es muß in GKnot in der Registierkarte "Bitrate" eine Audiodatei angegeben werden (oder auch 2)
- es muß einer der folgenden Encoder ausgewählt worden sein:
--DivX5
--XviD
--x264, wenn in agkp das x264CLI verwendet wurde
--x264, wenn in agkp x264VfW ausgewählt wurde, dann ist die mp4box.exe zusätzlich erforderlich (x264CLI ist aber empfohlen)

Gruß

akapuma

Edit: agkp erzeugt automatisch alle erforderlichen mkvmerge-Parameter

Deinorius
28. February 2006, 19:33
Ah, ok, dann brauch ich eigentlich nur die Einstellung für den Language-Tag für Audio 1. Wie kann ich das am besten realisieren.

Ich bin grad dabei die x264 Parameter einzustellen. Reicht es nicht auch, nur die default Einstellungen hinzuschreiben (mit Ausnahme von Parametern, die von GKnot kommen)? Dann kann ich auch einfach die Werte von MeGUI nehmen.
Warum sind eigentlich für jeden Durchgang alle Parameter doppelt hingeschrieben?

akapuma
28. February 2006, 20:00
Hallo,

wenn Du bei Audio in GKnot "ger" einstellst, wird "ger" auch an mkvmerge übergeben (klappt leider nicht bei AAC-Audio, aber es klappt z.B. bei ogg-vorbis).

Für Parameter, die nicht hingeschrieben werden, nimmt die x264.exe die Defaulteinstellungen. Deshalb werden nur Einstellungen angegeben, die vom Default abweichen.

Die Parameter werden 2x angegeben, zuerst mit "echo" davor, dann ohne "echo". Die Zeile mit "echo" bewirkt nur, daß die kompletten Parameter auf dem Bildschirm angezeigt werden. Find ich ganz schön, kann man aber auch weglassen.

Gruß

akapuma

Deinorius
28. February 2006, 20:42
Alles klar. Das mit den Parametern ist mir dann klar geworden. Sollte alles passen.

Jedoch geht nix. Audio ausgewählt. Speichern und Enc. (bei GKnot ändere ich sonst nix bei den Default Einstellungen). Audio soll gemuxt werden. Programmpfade (eigentlich ist bei GKnot doch nur VirtualDubMod.exe nämlich dein eigenes wichtig) sind eingestellt.
agkp200.ini hab ich exakt deines genommen, agkp.ini eingestellt, alles im VDM Ordner drin. Alles vom orig. VDM ist drin (braucht man überhaupt alles von VDM mit Ausnahme der .exe?) und VDM.exe liegt so vor.

Hab diverse Dateien angehängt, die vielleicht offen legen, was falsch sein könnte.

Edit: Falls es etwas heißen mag. Die agkptest.txt/avs ist die selbe, die auch GKnot erstellen würde.

akapuma
28. February 2006, 22:09
Hallo,

Aufschluß gibt die agkp.log. In der steht, daß es ohne Parameter gestartet wurde. Dann startet der Testmodus ohne Encoding. Frage ist nun, warum.

Bitte um einen neuen Test:
- die agkp.log löschen
- nochmal in GKnot auf "Save & Encode" klicken
- was passiert? Öffnet sich das blaue agkp-Fenster?
- Bitte nochmals die agkp.log hier posten

Gruß

akapuma

Deinorius
28. February 2006, 22:26
Bei GKnot: Im Vorschafenster auf Save&Enc., wieder Save&Enc., .avs speichern (die aber nicht mit agkp zum Encoden verwendet wird), Audio-Muxing eingestellt, bei x264 Queue, Queue Start - Fehler.
So gehts das vor und dabei wird keine .log erstellt, auch erscheint das blaue Fenster nicht.

Hab mal VirtualDubMod.exe direkt gestartet und mal die .log angehängt.

akapuma
28. February 2006, 22:42
Hallo,

das Problem besteht darin, daß agkp (VirtualDubMod.exe) garnicht gestartet wird. Daher wird auch keine log erstellt. Die angehangene log ist lediglich die des Testmodus, der beim Direktaufruf startet.

Einen Fehler in Deiner Vorgehensweise sowie in den log-Dateien kann ich nicht erkennen. Ich werde morgen probieren, den Fall an einem WinXP-Rechner nachzuvollziehen.

Gruß

akapuma

Deinorius
28. February 2006, 22:54
Tjo, ich sehe auch keinen Fehler an meiner Vorgehensweise. :D

Soll ich vielleicht mal probehalber meinen gesamten GKnot Ordner hochladen, damit du dir das genauer anschauen kannst?
Es müssten dann nur die Programmpfade angepasst werden.

akapuma
1. March 2006, 18:18
Soll ich vielleicht mal probehalber meinen gesamten GKnot Ordner hochladen, damit du dir das genauer anschauen kannst?Das wäre nicht schlecht. Um den Boardrahmen nicht zu sprengen vielleicht über Rapidshare o.ä.

Ich habe heute mal auf der Arbeit auf einem WinXP-Rechner GKnot und agkp installiert, und es lief sofort. Deshalb finde ich das ganze sehr merkwürdig.

Gruß

akapuma

Deinorius
1. March 2006, 20:55
So, habs auf meinem Webspace hochgeladen. mkvmerge und x264 CLI sind nicht dabei. Die hab ich in anderen Ordnern.

Hier ist es. (http://members.inode.at/franz.gregorich/gknot.rar)

akapuma
2. March 2006, 19:47
Hallo Deinorius,

deine GKnot-Installation läuft bei mir. Ich bin zu dem Schluß gekommen, daß der Fehler nicht an agkp liegt, da agkp von GKnot erst garnicht gestartet wird. Als Grund käme die folgende Fehlermeldung in Deinen GKnot-Log-Dateien in Frage:20:16:09: Audio 1, determined: 16284 kb
20:16:09: Audio 1, calc: 16284 kb
20:16:09: New Bitrate for Movie = 863 k(=1000)Bits/s
20:16:09: *************************************
20:16:09: EXCEPTION: Range check error
20:16:09: EXCEPTION: Encoder Thread Terminated.
20:16:09: *************************************
Total Encoding Time: 0 Sekunden.
28.02.2006 20:16:09: Job xxxxxxxxxxxx finished.
Aufgrund dieser Fehlermeldung stoppt GKnot die Bearbeitung. agkp kann man ganz leicht außer Betrieb setzen, in dem bei GKnot unter "Program Paths" "Where is VirtualDubMod located" "VDM.exe" anstatt "VirtualDubMod.exe" eingestellt wird. Stimmt meine Theorie, dann läuft es mit dieser Einstellung immer noch nicht.

Gruß

akapuma

Deinorius
2. March 2006, 23:14
Also ich hab unter GKnot deine VirtualDubMod.exe ausgewählt. oO

Die VDM.exe ist die originale 1.5.10.2. und die dümpelt einfach nur im gleichen Ordner rum.
Ich werds mal auf meinem PC versuchen. Die CPU ist zwar langsamer, aber ich will damit ja nicht encoden.

Warum sollte bei mir die VirtualDubMod.exe (also die von dir) nicht gestartet werden?

Edit: Habs grad auf meinem anderen PC versucht. Dort startet der agkp. Leider führt der den Encode nicht durch, aber das werd ich nicht bei mir feststellen, sondern beim Freund. Der muss es ja so nutzen.
Übrigens, hat bei dir auch der Encode stattgefunden? Das will ich nur wissen, ob ich auch die CLI Parameter richtig eingestellt hab.
Außerdem ist mir im Skript aufgefallen, dass crop und resize aktiviert sind. Es müsste ja auch reichen, direkt dabei das zu ändern, aber automatisch wärs halt besser. Mal sehen, ob ich das auch allein hinkriege.
Erstmal danke für die viele Hilfe. ^^

akapuma
3. March 2006, 17:24
Hallo,

GKnot ruft normalerweise VirtualDubMod mit Parametern auf, z.B. so:
VirtualDubMod.exe /log /x /s"C:\PROGRA~1\GORDIA~1\VirtualDubMod\LastJob.vcf"
VirtualDubMod ist aber nun agkp. Dieses startet und bietet ein Menü an. In diesem Menü kann man z.B. Filter auswählen. Drückt man OK, modifiziert agkp das avs-Skript. Danach ruft agkp das originale VirtualDubMod (VDM.exe) mit genau den gleichen Parametern auf.Die VDM.exe ist die originale 1.5.10.2. und die dümpelt einfach nur im gleichen Ordner rum.Muß sie also auch, sonst kann agkp sie nicht aufrufen.
Warum sollte bei mir die VirtualDubMod.exe (also die von dir) nicht gestartet werden?GKnot macht Aufgrund des Fehlers "EXCEPTION: Range check error EXCEPTION: Encoder Thread Terminated." überhaupt nicht den Versuch, irgendetwas zu starten. Das hat aber nichts mit agkp zu tun.
Übrigens, hat bei dir auch der Encode stattgefunden? Das will ich nur wissen, ob ich auch die CLI Parameter richtig eingestellt hab.Ich habe mal Deine agkpx264.bat mit den 2-Pass-Pararametern ausprobiert. Es wurde ohne Fehlermeldung encodiert.
Außerdem ist mir im Skript aufgefallen, dass crop und resize aktiviert sind.Das stimmt, akgp ändert das GKnot-Standardskript, und da ist standardmäßig crop und resize drin. Natürlich kann man im agkp-Menü auch einen Punkt "crop+resize: EIN AUS" vorsehen. Dafür müßte es aber erstmal bei Dir laufen. Wenn es das tut, kann ich einen entsprechenden Menüpunkt gerne bei Dir vorsehen.

Vorschlag:
Lösche die VirtualDubMod.exe und nenne die VDM.exe wieder in VirtualDubMod.exe um. Jetzt müßte GKnot wieder "normal" ohne agkp laufen. Ich glaube aber, daß GKnot bei Dir dann immer noch nicht läuft, da weiterhin die GKnot-Fehlermeldungen "EXCEPTION: Range check error EXCEPTION: Encoder Thread Terminated." kommen. Versuche dann, die wegzubekommen (die Forensuche liefert hierzu 4 Ergebnisse). Erst wenn GKnot dann ohne agkp läuft, lohnt sich ein neuer Versuch mit agkp.

Gruß

akapuma