PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ähnliches programm wie VirtualDub / Avidemux mit support fuer CUDA


Mau1wurf1977
2010-11-24, 15:37:17
Hallo Video Profis!

Ich erstelle ab und zu Spiele Videos von alten DOS Spielen. Meistens sind das Aufnahmen über eine VGA > S-Video Box.

Bis jetzt habe ich immer VirtualDub verwendet, bin aber jetzt auf Avidemux umgestiegen.

Ich habe zwar einen AMD Quadcore, aber der brauchst schon recht lange zum encoden. Ich frage mich ob es jetzt Software gibt die CUDA unterstützt (ich habe eine GTX460) aber auch fortgeschrittenere Filter hat, so wie sie in Avidemux eingebaut sind.

Mein Rohvideo ist MPEG2, danach kommt ein deinterlace Filter, dann cropping und dann resize auf 1440 x 1080. Das ganze wird dann mit X264/AAC in eine MP4 kodiert und auf YouTube gestellt.

nymand
2010-11-24, 15:52:14
Hallo Video Profis!

Ich erstelle ab und zu Spiele Videos von alten DOS Spielen. Meistens sind das Aufnahmen über eine VGA > S-Video Box.
...
Mein Rohvideo ist MPEG2, danach kommt ein deinterlace Filter, dann cropping und dann resize auf 1440 x 1080. Das ganze wird dann mit X264/AAC in eine MP4 kodiert und auf YouTube gestellt.
Du nimmst ein S-Video Signal in 1080P auf? Why?

Mau1wurf1977
2010-11-24, 16:00:53
Nein das ist ja technisch gar nicht möglich...

Irgendwelche Ideen welches Programm ich verwenden könnte?

Limit
2010-11-24, 17:33:54
Das Problem ist nicht VirtualDub oder Avidemux, sondern die benutzen Implementierungen der Codecs / Filter. Eine Unterstützung von CUDA durch diese beiden Programme würde dir nichts nützen (und wäre vollkommen sinnlos), weil das eigentliche Filtering / Encoding durch externe Codecs / Plugins durchgeführt wird.

Du bräuchtest also entsprechende Open Source Encoder / Filter, die CUDA unterstützen. Aus entsprechenden Bibliotheken dann Plugins für VirtualDub oder Avidemux zu machen ist dann keine große Sache mehr. Leider gibt es bisher kaum solche Encoder / Filter.

Bei den Encodern liegt das auch daran, dass Grakas für einige Teilaufgaben zwar sehr gut geeignet sind, für andere aber nicht, so dass man im Endeffekt hohe Geschwindigkeit nur zu Lasten einer deutlich schlechteren Bildqualität bekommt. Bei Filtern weiß ich aber auch nicht, warum sich noch niemand daran gemacht hat.

Mau1wurf1977
2010-11-24, 22:26:58
Vielen Dank für die Antwort!

Ja die Filter sind auch teilweise Grund dafür warum das encoden so lange dauert. Der deinterlacing Filter z.b. kostet viel Rechenzeit.

Sandy Bridge soll ja auf dem Chip encoding Technologie haben, allerdings sehe ich hier das gleiche Problem (mangelnde Unterstützung per Software). Mir scheint dass für den Konsumenten schon ganz gute Produkte auf dem Markt sind. Z.b. die neue Software von Cyberlink hat GPU encoding eingebaut.

Ich spiele ohnehin mit dem Gedanke auf Sandy Bridge umzuruesten, mal schauen was die ersten Tests zum Thema video encoding sagen...

Falls es euch interessiert, hier ein Probe encode: http://www.youtube.com/watch?v=2sC3FqY2vuM

Das Video wird noch bearbeitet, sollte aber relativ zügig zu betrachten sein!

looking glass
2010-11-24, 23:19:08
Mhh, was ist mit Handbrake, soweit ich mich erinnere, hat der doch Hardwareunterstützung (Cuda war doch Nvidias Programmgedöns oder), könnte man den nicht irgendwie reinlinken, immerhin ist das Teil auch OS.

http://handbrake.fr/

HeldImZelt
2010-11-25, 01:51:46
Was soll die unnötige Interpolation auf 4x Auflösung bringen? Ist doch kein Wunder, dass deine Encodings so lange brauchen. Qualitätssteigerung=Null.

Weder ist die Bildauflösung pixelexakt, noch die temporale Abtastung synchron, deutlich am massiven Ghosting sichtbar.

Dosbox hat eine eigene Aufnahmefunktion, die all diese Probleme im Kern umgeht und ein reines, sauberes RGB Bild ohne Subpixel, Neuabtastung und Farbkonvertierung liefert.

Zum Vergleich:
http://www.abload.de/img/persiayrb8.png

Sauberes Video hier:
http://recordedamigagames.ath.cx/modules/tinycontent/index.php?id=459

Mau1wurf1977
2010-11-25, 02:30:22
DOSBox ist leider nur Emulation. YouTube ist voller DOBox videos, aber es fehlen Aufnahmen von echten Retro PCs die als Referenz dienen.

Bezüglich der Aufnahmefunktion von DOSBox, nimm einmal ein Video auf, und nebenher mit Audacity Musik von einer Roland MT-32 und füge dann beides zusammen. Du wirst eine kleine Überraschung erleben...

Zum Thema upscaling auf 1080, ja in der Tat die Qualität ist besser. Meine Videos werden viele Jahre auf YouTube bleiben, bis dahin wird Breitband Internet weit verbreitet sein und 1080 der defacto standard.

Jeder kann ja YouTube auf 480 umstellen, keiner ist gezwungen sich die Videos auf 720 oder 1080 anzuschauen. Aber Tatsache ist dass wenn ich das Video in 480 encode und hochlade und mir in 480 anschaue es nicht so sauber aussieht wie wenn ich es auf 1080 hoch skaliere, hochlade und mir dann in 1080 anschaue. Was viele Leute vergessen ist dass YouTube selbst noch "Hand anlegt" und man darauf keinen Einfluss hat. Deinem Kommentar "Qualitätssteigerung=Null" nach gehe ich davon aus dass du wenig Erfahrung mit YouTube Videos hast?

Ich bin mir dessen bewusst dass dadurch der encode länger dauert, und deshalb auch meine Frage an dieses Forum.

EDIT: Ich habe mich jetzt für einen anderen deinterlacer entschieden (FFmpeg deinterlacer): http://www.youtube.com/watch?v=2sC3FqY2vuM

HeldImZelt
2010-11-25, 04:04:31
Mach was du willst.. Vielleicht als Tipp: Versuche 'Interpolation' statt 'Blending' Deinterlace, um das Ghosting zu eliminieren. Capturen ohne Flicker Filter mit nativer Auflösung (704x480x60@52µs oder 720x480x60@53,33µs je nach Chip BT/Conexant;Philips) bei 60Hz Ausgabe (wichtig!), Croppen, ungefiltert Verdoppeln (wenn man unbedingt vor-interpolieren will) mit Avisynth via PointResize(width*2, height*2), Rest mit LanczosResize gefiltert auf HDTV Auflösung hoch skalieren und ggf. PAR ausgleichen (http://de.wikipedia.org/wiki/Pixel_Aspect_Ratio#Verschiedene_Pixelseitenverh.C3.A4ltnisse).

DosBox kann Rolandkarten per Midi ansteuern und das Signal via Line-in aufnehmen.
http://www.dosbox.com/wiki/Sound#Roland

Auch gibt es seriöse MT-32 Emulation für DosBox, wenn auch nicht ganz einfach zu beschaffen, weil die Originalroms benötigt werden. Für Retrofreaks und Suchfreudige aber sicherlich kein Hindernis.
http://vogons.zetafleet.com/viewtopic.php?t=26424

Mau1wurf1977
2010-11-25, 04:27:49
DosBox kann Rolandkarten per Midi ansteuern und das Signal via Line-in aufnehmen.

Ja das weiss ich doch :-) Schau mal auf meinen YouTube channel...

Wie gesagt probiers mal aus und schau was passiert wenn du die Bild und Tonspur zusammentust...

Auch gibt es seriöse MT-32 Emulation für DosBox

Ich habe eine feine Sammlung an Originalen ;-)

http://img201.imageshack.us/img201/1945/dsc01822hl.jpg

Der naechste Teil ist in Englisch (weil ich in Australien bin und meistens auf VOGONS und OCAU poste). Das thema "warum bitte upscalest du alte DOS Videos auf 1080" kommt immer wieder hoch und deswegen habe ich einen post vorbereitet denn ich dann immer hernehme fuer die YouTube noobs sozusagen...

Also just in case anyone is wondering WTF why am I uploading old Retro videos in 1080...

The cropped source footage is pretty close to 480p (614 x 490) so it's natural to scale it to 640 x 480 and upload the video like that. Now I know that upscaling does increase the quality of the encode slightly from having done DOSBox videos in the past.

Still I might as well document this, because the "WTF why am I uploading old Retro videos in 1080" question keeps popping up :-)

So I took a small recording, added the deinterlacing filter, cropped the image and scaled it to 640 x 480 (and then again to 1440 x 1080).

Codec is x264 and I use "Constant Quantizer" of 16. The 480 file ended up being 17.6 MB and the 1080 file 76 MB. File length is just under 4 minutes.

This is how the videos compare:
http://img442.imageshack.us/img442/7603/480vs1080.png
http://img690.imageshack.us/img690/2691/480vs10802ndimage.png

Now once you upload the files it gets interesting. YouTube reencodes the videos and this is something you have no control over. So after the videos are uploaded and YouTube has done the reencode, I can download the file that is stored on YouTube and let's take a look. Note this option is only available to me (Because it's my YouTube account)

The 480 file has shrunk down to 9.09MB and the 1080 file is now only 41.2MB. Let's take a look at what the videos look like after YouTube "got it's hands on them"...

http://img337.imageshack.us/img337/9384/480vs1080backfromyoutub.png
http://img834.imageshack.us/img834/9384/480vs1080backfromyoutub.png

Looking at the DOS command line, the 480 version has clearly lost detail. Looking at the other image we can see that there is lost detail on the 480 video (Markings on the floor, detail on the prince and on the shadow on the skull)...

There you have it :-)

PS: You can watch the 480 version here: http://www.youtube.com/watch?v=-Em0zK821V4

and the 1080 version here: http://www.youtube.com/watch?v=rOz3P3fZHq8

HeldImZelt
2010-11-25, 06:27:05
Die YouTube Problematik ist durchaus klar. Ich frage mich eher, warum du dieses Niveau akzeptierst.. Es gibt entsprechende Portale für Enthusiasten, die die Videos in Originalqualität (h264/HighProfile@unrestricted) und bei YouTube als höher privilegiertes Mitglied (und somit mit mehr Bitrate) bereitstellen. Beispiel World of Longplays (http://www.longplays.org/).

and the 1080 version here: http://www.youtube.com/watch?v=rOz3P3fZHq8
Ghosting ist weg, aber die Framerate ist nicht homogen. Die Frames haben zum Teil starken Versatz (Tearing). Refreshrate vs Capture FPS vs YouTube.

Mau1wurf1977
2010-11-25, 06:49:10
Hehe von "Qualitätssteigerung=Null" zu "Die YouTube Problematik ist durchaus klar." ;-)

Longplays per Emulator sind ja kein Problem. Solche Aufnahmen sehen immer sehr gut aus und trotzdem vergessen die meisten das aspect ratio zu richten...

Siehe mein DOSBox video von Space Quest 4: http://www.youtube.com/watch?v=dIZhFbOH_9U. Stelle es auf 1080 und du hast ein perfektes Video. So also ob du eine DOSBox Sitzung vor dir laufen hast.

Ich möchte aber von einem echten Retro PC (386 oder 486 Zeit) aufnehmen, und S-Video hat nunmal so seine Beschränkungen. Mehr Bitrate hilft hier leider überhaupt nichts. Wenn man die Beschränkungen von S-Video berücksichtigt meine ich doch dass meine Videos eine extrem hohe Qualität aufweisen.

Ich lade jetzt die RAW MPEG2 file hoch, daran kann sich jetzt jeder versuchen und das erstellte Video auf YouTube hochladen. Ich lerne gerne neues dazu :-)

File kommt ca. in einer halben Stunde...

Mau1wurf1977
2010-11-25, 07:18:05
So hier ist also die RAW MPEG2 datei!

http://www.mediafire.com/?omtn685oead64jf

Betrachtet dies als Mau1wurf1977s YouTube encoding challenge :-)

Dies ist eure Referenz: http://www.youtube.com/watch?v=rOz3P3fZHq8 (auf 1080 klicken)

It's on like Donkey Kong :-)

HeldImZelt
2010-11-25, 08:34:40
Hehe von "Qualitätssteigerung=Null" zu "Die YouTube Problematik ist durchaus klar." ;-)
Die interpolierten Videos sind niemals besser als dein Original. Was du machst ist lediglich Schadensminimierung aufgrund der technischen Einschränkungen, die dir YouTube aufdrückt.

trotzdem vergessen die meisten das aspect ratio zu richten...
Das ist gewollt, um Subpixel zu vermeiden. Die Frames sind (im Gegensatz zu analogen Aufnahmen) pixelexakt.

Mau1wurf1977
2010-11-25, 09:00:07
Das ist gewollt, um Subpixel zu vermeiden. Die Frames sind (im Gegensatz zu analogen Aufnahmen) pixelexakt.

So ein Topfen...

Das ist doch nicht gewollt...

Die Spiele alle gestreckt wie Widescreen. Rundes ist Eierfoermig, das glaubst du doch jetzt selbst nicht das dies gewollt ist...

Die haben einfach vergessen das Aspect Ratio zu korrigieren...

Die interpolierten Videos sind niemals besser als dein Original

Ja wer bitte behauptet denn sowas? Habe ich doch nie behauptet!

Du sagtest das upscaling null Qualitätssteigerung bringt, ich habe dir mit Bildern und Video Material das Gegenteil aufgezeigt und jetzt redest du auf einmal vom Original?

Deine Behauptung "Qualitätssteigerung=Null" ist einfach falsch gewesen. Kein Grund sich jetzt rauszureden, wir lernen alle etwas dazu...