C# - Video-editor?
Möchte ich ein video-editor in C# aber ich weiß nicht, wo zu beginnen.
Welche Klassen sollte ich verwenden? Was würde ich kompilieren Sie es in(MOV, MPEG4, ect)? Wie sollte ich Sie Lesen?
Das wichtigste, was ich auf der Suche bin, obwohl, ist, Sie zu Lesen.
- ist eine kommerzielle Bibliothek eine option ?
- Welche Art von Erfahrung haben Sie mit dem schreiben von software und videos-Editoren?
- im Grunde tun Sie das nicht in C# sind Sie gehen zu wollen, um mit Direct Show -, Medien-Stiftung, oder einige andere video-frame arbeiten, die nicht in C# geschrieben. Die interop-Schicht wird Komplex sein und Sie werden im Umgang mit großen Brocken von Daten, die Sie nicht wirklich wollen, um marshalling hin und her zwischen verwalteten und nicht verwalteten land.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einen video-editor ist eine ziemlich komplexe Anwendung mit vielen unabhängigen Subsystemen. Sie benötigen asset management, eine Zeitleiste, eine player-Komponente, video-und audio-Effekte und Filter, Titel-Generierung, usw.., plus eine GUI, die vereint alle diese und präsentiert Sie dem Benutzer.
Aus all den oben genannten, die ich empfehlen, dass Sie beginnen mit dem erstellen der video-player. Es gibt mehrere Bibliotheken, die helfen können, mit dieser, werde ich empfehlen, zwei von Ihnen:
Beachten Sie, dass DirectShow funktioniert nativ in C#, aber die QuickTime-SDK ist in C, so müssen Sie die glue-code, mit dem Ihr C# - app an die C-Funktionen im QuickTime-DLLs.
Beide Bibliotheken haben high-level-Spieler, die erfordern nur eine Handvoll Anrufe auf setup, und auch low-level-APIs, mit denen Sie Ihre eigenen player-code. Für ein video-editor, die Sie benötigen, um einen benutzerdefinierten player, da Sie nicht nur die Wiedergabe von video-Dateien, sondern auch gerenderte Effekte werden in Echtzeit erzeugt. So sollten Sie arbeiten mit dem low-level-APIs, die in der oben genannten frameworks und schreiben Sie einen Spieler, der zunächst liest eine movie-Datei, erhält die frames, und gibt diese an die richtigen Decoder und Renderer.
Sobald Sie diese arbeiten können Sie sich auf die anderen Aufgaben und die Nutzung der video-player als Grundlage für Ihre editor.
Glück.
Können Sie ffmpeg als einfachste Lösung für viele video-editing.
Hier ist der Beispiel-code für immer ein screenshot von einem video: Wie konvertiert hochgeladene video, und bekommen Sie einen screenshot von dieser Datei?
Diese kann getan werden, in DirectX
Ich möchte empfehlen, Sie zu verwenden DirectShow..