ich eine Prozess-Pipeline mit 3 Schritten haben:Reactive Extensions: eine Pipeline mit Rx Erstellen, die mit Dateien arbeitet
- Video Bilder: Ich habe ein Video, das Bilder auf noch umgewandelt wird (Frames)
- Frames in zip-Datei: Wenn alle Frames in einem Video verarbeitet wurden, sollte ich eine Zip-Datei mit ihnen erstellen.
- zip file => Laden
Es beinhaltet 2 Disposables FTP: die Videoaufnahme und die Zip-Datei.
Wie könnte ich mit Rx umgehen? Irgendwelche Ideen? Entschuldigung dafür, dass ich keinen Code gepostet habe, ich weiß nicht, wie ich anfangen soll.
Vielen Dank im Voraus!
Beginnen Sie damit, den Code in genau diese drei Schritte zu zerlegen. Stellen Sie als nächstes sicher, dass jede dieser Methoden ein IObservable zurückgibt, um die asynchrone Art des Transcodierens/Zipping/Uploads darzustellen. Verwenden Sie schließlich SelectMany/Concat/Merge/etc, um eine Rx-Pipeline mit diesen drei Methoden zu erstellen. –
Danke, Lee! Die Sache ist, dass ich nicht weiß, ob es wirklich Sinn macht, eine IObservabe zu erstellen, da diese Abstraktion nicht wirklich Daten darstellt, sondern eine Abstraktion zum Erstellen einer .zip. Wenn es mir gelingt, diese Art von Observablen zu erstellen, würde ich einen Strom von entsorgten ZipArchiven erhalten. –
SuperJMN
Allgemeiner denke ich, dass eine Projektionen, die am Ende auf das Dateisystem treffen, am Ende schwierig sind. Vielleicht besteht die Möglichkeit, ein Token (String) zu projizieren, das den Namen des Videos darstellt, und mit Do, um eine Zip-Datei zu erstellen und das Token an den nächsten Schritt in der Pipeline zu übergeben. Schließlich erhält der Abonnent das Token, um zu wissen, welche Datei hochgeladen werden soll. – SuperJMN