3D Filme in 2D abspielen und konvertieren

  • Hallo zusammen !


    Also hier zu Eurem Problem:


    Um einen 3D Side-by-Side MKV-Film, im VLC Player im 2-D Vollbild Modus mit den richtigen Seitenverhältnissen anschauen zu können, muß man nur ein paar kleine Einstellungen im VLC Player vornehmen.


    Ich habe dieses Problem so gelöst :


    01 . Starten Sie VLC ( muss kein Film hierzu geöffnet werden )


    02 . Klickt auf: Werkzeuge - > "Einstellungen" oder ( STRG + P)


    03 . In der unteren linken Ecke wählt " Einstellungen anzeigen " -> "Alle"


    04 . Auf der linken Seite des Fensters , scrollt nach unten und wählt " Video"


    05 . Auf der rechten Seite des Fensters , scrollt runter bis zu dem Eintrag - Seitenverhältnis


    06 . Tragt hier das Seitenverhältnis mit der doppelten Breite ein - zum Beispiel für eine 16:9 Video Ausgabe gebt dort ein 32:9, oder 08:03 für ein 4:3 Video ...


    07 . Klickt auf auf " Speichern" und beendet den VLC Player


    --- Bitte beachtet, dass das geänderte Seitenverhältnis für alle Videos gespeichert wird.


    08 . Öffnet nun erneut den VLC Player und spielt den 3D Film ab den Ihr anschauen möchtet , drückt nun Pause am Anfang des Filmes


    09 . Wenn Ihr nicht wisst welche Videoauflösung der momentan geladen Film hat , unter "Extras " -> "Medieninformationen " oder drückt ( STRG + I )
    dann wählt oben den Reiter -> " Codec" aus , hier könnt Ihr nun die Auflösung des geladenen Films auslesen.(z.B. 1920x1080)


    10 . geht nun auf - > "Anpassungen & Effekte " ( STRG + E)


    11 . geht auf " Videoeffekte " -> " Beschneiden"


    12 . Nun gebt in dem Feld "Rechts" - die Hälfte der der vorher ausgelesenen horizontalen Pixel ein (die Felder unten ,oben & links bleiben leer)
    zum Beispiel : 1920x1080 ---> 1920/2 = 960 px oder : 1280x720 ---> 1280/2 = 640 Pixel


    13 . Klickt auf "Schließen" , anschließend auf " Play" und genießt Euren 3D Film in 2D ;
    sollte aus irgendeinen Grund auch immer die Skalierung zurück gesetzt werden geht während der Film läuft oben in den Reiter "Video" wählt Seitenverhältnis und
    nehmt dort den neueingestellten 32:9 aus.


    ...bin mir nicht sicher, ob es einen einfacheren Weg gäbe, um dieses Problem zu lösen , aber vielleicht konnte ich ja dem ein oder anderen hiermit helfen ! :)

  • Hallo Deadxxy,


    willkommen im Forum. Das Neue Jahr fängt für das Forum hier ja wirklich gut an. Du bist heute schon der zweite, der mit seinem Wissen bemüht ist, anderen zu helfen. Auch Dir dafür mein herzlicher Dank.


    Dann habe ich noch einen Tipp für Dich und alle, die beide Arten von Videos wiedergeben und nicht jedes Mal die Einstellungen ändern wollen:

    • Jede/r von uns hat vermutlich auf dem Desktop ein Icon, über das sie/er den VLC starten kann.


    • Macht von der Konfigurationsdatei vlcrc des VLC eine Kopie und benennt diese zum Beispiel mit vlcrc._3D. Ihr findest diese Datei unter Euren Userdateien im Ordner AppData\Roaming\vlc.


    • Macht von diesem verlinkten Icon eine Kopie und benennt diese zum Beispiel mit VLC 3D.


    • Danach macht Ihr auf dieses Icon einen Klick mit der rechten Maustaste und wählt im sich öffnenden Kontextmenü die Option Eigenschaften.


    • Im Eigenschaften-Dialog findet man etwas oberhalb der Mitte den Eintrag für das Ziel. Dieser sieht bei mir so aus:
      "C:\Program Files\VideoLAN\VLC\vlc.exe" oder "C:\Program Files (86)\VideoLAN\VLC\vlc.exe"


    • Diesem Eintrag fügt ihr nun mit einer Leerstella als Abstand folgende Erweiterung hinzu:
      --config="C:\Users\EuerUserName\AppData\Roaming\vlc\vlcrc_3D"


    • Damit sieht der gesamte Eintrag so aus:
      "C:\Program Files\VideoLAN\VLC\vlc.exe" --config="C:\Users\EuerUserName\AppData\Roaming\vlc\vlcrc_3D"


    • Bei dieser Erweiterung handelt es sich um einen sogenannten Parameter, der beim Start des VLC dem Programm übergeben wird. Im konkreten Fall weiß der VLC, wenn er über dieses verlinkte Icon gestartet wird, dass er nicht die standardmäßige Konfigurationsdatei vlcrc für seine Einstellungen, sondern die Datei vlcrc_3D verwenden soll.


    • Jetzt müssen noch die hier vorgeschlagenen Änderung für die 3D-Wiedergabe im 2D-Vollbildmodus gemacht werden, natürlich in der Instanz, die über das entsprechende Icon aufgerufen wurde.

    Das war es dann schon und man kann sich die Instanz des VLC aufrufen, die man gerade möchte. Man kann sogar gleichzeitig beide Instanzen aufrufen.


    Mit freundlichem Gruß,


    kodela

  • Hi Leute,


    ich bin hier neu, aber ich hoffe ich kann etwas hierzu beitragen. Wenn mich nicht alles täuscht wurde gefragt wie man mit VLC 3D Filme Ohne 3D fähigem Ausgabegerät anschauen kann.


    Aber was ist mit Umwandeln? Das Anschauen wurde hier ja schon besprochen, aber dass Umwandeln noch nicht.


    Mann möge es mir verzeihen, aber ich nutze zum Umwandeln lieber den direkten Weg über ffmpeg an Stelle dem Umweg über VLC.


    VLC nutzt doch ffmpeg oder? Wenn nicht bitte ich schon im voraus um Entschuldigung für meinen Beitrag.


    Also unter Linux lautet ein Beispielbefehl:


    Code
    1. ffmpeg -i 3DFilm.mkv -map 0:0 -map 0:1 -vf "crop=960:1080:0:0" -s 1920x1080 -b:v 5000k -aspect 1.7777 2DFilm.avi


    In diesem Fall hat der Originalfilm eine Auflösung von 1920 Bildpunkten in der Breite und 1080 Bildpunkten in der Höhe.


    Diese Werte findet Ihr im VLC unter (Werkzeuge->Medien-Informationen->Codec).


    Durch crop=960:1080:X:X wird nur die linke Hälfte vom Film genommen, also 960*1080 Bildpunkte. Das ganze muss man sich wie ein Koordinatensystem vorstellen, also wir haben eine X Achse die von links nach rechts geht (1920) und eine Y Achse welche von oben nach unten geht (1080).


    Wenn man jetzt überlegt, dass der Film 2 Bilder nebeneinander (waagerecht) Produziert, welche über gleiche Ausmaße verfügen, ist der zweite Schritt nicht schwer. Wir halbieren einfach den Wert der X Achse und haben als Ergebnis ein Bild. (von den Beiden)


    Warum b:v?
    Das hat was mit dem maximal erlaubten Datenstrom zu tuen. (man möge mich berichtigen, ist nicht mein Gebiet :-( ) Aber dennoch, wird hier nichts eingetragen ist das Ergebnis eher mäßig.


    Nur zur Vollständigkeit der Befehl X:X:0:0, also die beiden letzten Zahlen sagen, das der Schnitt an den Koordinaten X:0 und Y:0 beginnen. „““Gute Möglichkeit um unerwünschte Dinge wie Balken zu entfernen“ Ist aber eine andere Rubrik. Die geben nur den Startpunkt für den Filmschnitt vor. (Bitte um bessere Erläuterung, da ich keine besseren Worte finde).


    Die Optionen map 0:0 und map 0:1 weisen ffmpeg an welche Video- und Audiospur genutzt werden sollen. Dieses wird sicherlich variieren.


    Ihr sollte die Spuren über ffprobe 3DFilm.mkv herausfinden, oder wie oben beschrieben über (Werkzeuge->Medien-Informationen->Codec.


    Soll es beim Umwandeln abgespielt werden dann heißt es:


    Code
    1. ffmpeg -i 3DFilm.mkv -map 0:0 -map 0:1 -vf "crop=960:1080:0:0" -s 1920x1080 -b:v 5000k -aspect 1.7777 2DFilm.avi | vlc 2DFilm.avi


    Ps:
    ich nutze kein Windows, aber so weit ich weis, müsst ihr einfach


    Code
    1. ffmpeg -i 3DFilm.mkv -map 0:0 -map 0:1 -vf "crop=960:1080:0:0" -s 1920x1080 -b:v 5000k -aspect 1.7777 2DFilm.av


    durch:


    Code
    1. ffmpeg.exe -i 3DFilm.mkv -map 0:0 -map 0:1 -vf "crop=960:1080:0:0" -s 1920x1080 -b:v 5000k -aspect 1.7777 2DFilm.av


    ersetzen.


    Ich bin absoluter Neuling und möchte keine Falschinformationen raus geben. Deshalb entschuldige ich mich schon ein mal im Vorraus.


    Mit freundlichen Grüßen


    Spirit051

  • Hallo Spirit05,


    willkommen im Forum und danke für Deine Infos.


    Ich selbst kann zu Deinem Beitrag nicht viel sagen, da ich mich noch nie ernsthaft mit 3D Filmen beschäftigt habe. Eines aber weiß ich, Dein Kommandozeilenstring für Windows setzt voraus, dass man ffmpeg.exe separat installiert hat. Der VLC verwendet zwar die ffmpeg-Bibliothek, bringt aber keine ffmpeg.exe mit.


    Auch Deine Kommandozeilenstrings für Linux sind in ihrer Syntax zwar denen für den VLC ähnlich, haben aber mit dem VLC selbst nichts zu tun.


    Wer sich für ffmpeg.exe interessiert, findet hier Informationen und Downloadmöglichkeiten.


    Mit freundlichem Gruß,


    kodela

  • Kodela hat natürlich recht.


    Bevor man ffmpeg nutzen kann muss es natürlich installiert sein. Ist auch unter Linux, MacOS oder Android oder Beos (na gut jetzt reicht es aber) nicht anders.


    Getreu dem Motto „Wat de Buer nich kennt, dat frett he nich.“


    Da dies ja ein VLC-Forum ist, habe ich mal nach einer reinen (VLC)-Lösung geforscht.


    Also wie gehabt: Ich bin Neuling auf diesem Gebiet und nutze Unix, aber dennoch versuche ich eine konkrete Antwort zu geben.


    Nicht von mir aber hier eine Anleitung.
    http://ciuga.wordpress.com/201…-mit-vlc-in-2d-anschauen/


    Dort wird ein Kommandozeilenbefehl für VLC abgesetzt, welches das Bild genauso wie in meinem ffmpeg Beispiel streckt.


    vlc 3DFilm.mkv --monitor-par=0.5 –video filter=croppadd{cropright=960}


    Die Option cropright=960 bewirkt das gleich wie ich schon oben beschrieben habe, nur dort hieß es crop=960:1080:0:0.


    kodela sagte:

    Auch Deine Kommandozeilenstrings für Linux sind in ihrer Syntax zwar denen für den VLC ähnlich, haben aber mit dem VLC selbst nichts zu tun.

    Na ich denke das ist doch mehr als ähnlich :-)


    In hope that it is resolved


    Mit freundlichen Grüßen


    Spirit051

  • Hallo Spirit05,


    danke, dass Du am Ball geblieben bist.


    Meinen Hinweis bezüglich der Installation von ffmpeg.exe hast Du verständlicher Weise, gelinde gesagt, als sehr eigenartig empfunden. Nun, dass man ein Programm installieren muss, bedarf eigentlich keiner Erwähnung. Warum habe ich trotzdem darauf hingewiesen - einfach deshalb, weil ich schon die Erfahrung gemacht habe, dass ffmpeg.exe im Installationsordner des VLC gesucht und dort natürlich nicht gefunden wurde.


    Der Kommandozeilenstring aus der von Dir verlinkten Page funktioniert für die Wiedergabe, muss allerdings noch an die jeweilige Videobreite angepasst werden, indem für cropright die halbe Videobreite gesetzt wird. Für ein 3D-Video im Format Side-by-Side mit einer Auflösung von 1280x720 sähe er dann so aus:


    Code
    1. "C:\Program Files\VideoLAN\VLC\vlc.exe" D:\VLC\3D_Video_Test.mp4 --monitor-par=0.5 --video-filter=croppadd{cropright=640}


    Aber damit kann das Video zwar wiedergeben, aber nicht umgewandelt werden, was ja Dein Ziel war.


    Vielleicht findest Du dafür auch noch eine VLC-gerechte Lösung. Ansonsten werde ich mich einmal darum bemühen.


    MfG, kodela

  • Hi kodela,


    ich werde sehr gerne am Ball bleiben und nach einer Möglichkeit zum Umwandeln eines 3DFilms via VLC forschen, allerdings bin ich die gesamte nächste Woche auf Grund von Montagearbeiten verhindert.


    Aber sollte bis dahin keine adäquate Lösung gefunden worden sein werde ich, im Bereich meiner Möglichkeiten, versuchen diese nachzureichen.


    Mit freundlichen Grüßen


    Spirit051


    PS:


    Ich glaube allerdings, das es hier nicht ganz richtig wäre, da hier ja nur gefragt wurde, ob man 3DFilme mit VLC abspielen kann.


    Meinerseits gibt es da Bedenken das Menschen, welche nach einer Umwandlungsmöglichkeit mittels VLC über eine Suchmaschine stöbern, auf diesen Beitrag überhaupt stoßen.


    Von daher würde ich vorschlagen dafür entweder einen extra Beitrag zu öffnen, oder dieses in eine Art von Anleitung zu packen,


    Ich kenne mich nicht so wirklich mit Foren aus, aber dennoch erscheint es mir so sinnvoller.

  • Hallo Spirit051,


    ziemlich zeitgleich, als Du Deine letzte Antwort hier geschrieben hast, war ich dabei, einen Kommandozeilenstring für das Konvertieren eines 3D-Videos im Format Side-by-Side zu einen 2D-Video zu testen (3D-Formate im Überblick).


    Hier ein Screenshot vom Ausgangsvideo. Die Originalauflösung beträgt1280x720:



    Und so sah der Teststring aus:


    Code
    1. "C:\Program Files\VideoLAN\VLC\vlc.exe" D:\VLC\3D_Test_1.mp4 --sout=#transcode{vcodec=h264,vb=1700,vfilter=croppadd{cropright=640},acodec=mpga,ab=128,channels=2,samplerate=44100}:file{dst=D:\\VLC\\\3D_Test_2.mp4}


    Das Ergebnis ist nicht wie erwünscht. Es entspricht exakt der linken Bildhälfte des Ausgangsvideos. Außerdem funktioniert dieser String bei mir nur unter der Version 2.0.8, nicht mit 2.1.3.



    Wenn ich jetzt für die Wiedergabe in Einstellungen - Alle - Video die Option Seitenverhältnis der Monitorpixerl auf 0.5 setze, wird das Bild auf die volle Größe gestreckt.


    Statt dessen kann man auch unter Einstellungen - Einfach - Video - Seitenverhältnis erzwingen das ursprünglich Seitenverhältnis (im Beispiel 16:9) eintragen.


    Damit sieht das Bild dann so aus:



    Eine Transkodierung mit Streckung des Videos ist mir bisher nicht gelungen. Ich werde weiter experimentieren und, falls ich Erfolg haben sollte, berichten. Allerdings habe ich erhebliche Zweifel, denn die von Dir angegebenen Parameter können für eine Transkodierung nicht funktionieren, sie beziehen sich nur auf die Wiedergabe. Die funktioniert damit auch. Der croppadd-Filter steht auch für die Transkodierung zur Verfügung und dort habe ich ihn auch eingebunden. Aber ich finde für das Strecken auf doppelte Pixelbreite beziehungsweise die Erzwingung eines festen Seitenverhältnisses für eine Transkodierung keine Möglichkeit.


    Über den Canvas Videofilter lässt sich zwar das Seitenverhältnis einstellen, aber die Anpassung an das vorgegebene Seitenverhältnis erfolgt unter Beibehaltung der Proportionalität. Wenn also in der Breite gestreckt wird, wird auch in der Höhe gestreckt. Das ist bei der Einstellung eines erzwungenen Seitenverhältnisses für die Wiedergabe anders. Hier wird nur die Breitseite gestreckt.


    Den Titel dieses Themas habe ich übrigens auf die Konvertierung erweitert.


    MfG, kodela

  • Hallo Spirit051,


    ich habe heute im VideoLAN-Forum die Frage gestellt, ob und wenn ja, wie es möglich sei, für die Transkodierung eines Videos das Seitenverhältnis zu erzwingen.


    Das ist die alles entscheidende Frage. Wenn dies nicht möglich ist, dann wäre es aber auch schon ein Vorteil, 3D-Videos so zu transkodieren, dass nur eine Sicht verbleibt, die dann über das Erzwingen des Seitenverhältnisses korrekt angezeigt werden kann.


    MfG, kodela

  • Hallo Spirit051,


    im VideoLAN-Forum ist bis heute zu meiner Frage noch keine Antwort eingegangen.


    Fällt Dir zu diesem Thema noch etwas ein? Wenn nicht, betrachte ich es als erledigt.


    MfG, kodela


    Nachtrag vom 10.04.2014:


    Es hat sich nun doch ein sehr erfahrener User im VideoLAN-Forum für das Thema interessiert. Ich habe das Problem dort noch einmal detailliert dargestellt.

  • Hallo,


    nach dem ich nun eine Ewigkeit nach einer Lösung gesucht habe sehe ich es auch als erledigt an.


    Auf dieser Seite,


    https://wiki.videolan.org/Transcode/#Example_script


    habe ich ein Beispiel Script gefunden, mit dessen Hilfe ich das Grundgerüst für eine Transcode Zeile
    aufbauen konnte.


    Code
    1. vlc -I dummy "input.mp4" --sout "#transcode{cropleft=31,cropright=31,croptop=16,cropbottom=16,width=960,height=544,vcodec=h264,vb=2048,acodec=mp4a,ab=128}:standard{mux=mp4,dst="output.mp4 ",access=file}" vlc://quit


    Dort wird auch auf folgendes
    hingewiesen:


    The canvas and cropping must be adjusted for VLC versions newer then 0.9


    Leider konnte ich nirgends Informationen dazu finden, in wie weit diese angepasst
    werden müssen.

    Es hat sich nun doch ein sehr erfahrener User im VideoLAN-Forum für das Thema interessiert. Ich habe das Problem dort noch einmal detailliert dargestellt.

    Da bin ich mal gespannt, ob der eine Lösung parat hat.


    Mit freundlichen Grüßen


    Spirit051

  • Hallo Spirit051,


    ich habe die Lösung, nicht über den VLC, aber über Handbrake.


    Hier mein Vorgehen mit dem Beispielvideo (Auflösung 640x720):

    • Im Register Picture für Anamorphic Custom einstellen.
    • Für Display Width 1280 einstellen.
    • Für PAR Width 2 einstellen.
    • Für PAR Height 1 einstellen.

    Die übrigen Einstellungen kann man belassen.


    Nach der Konvertierung hat das Video unverändert eine Auflösung von 640x720, wird aber mit 1280x720 angezeigt.


    MfG, kodela