У меня есть процесс трубопровод с 3 этапом:Реактивных расширения: Создание трубопровода с Rx, который работает с файлами
- видео к изображениям: У меня есть видео, которое преобразуется в стоп-кадры (фреймы)
- Кадры для zip-файла: Когда все кадры в видео обработаны, я должен создать с ними Zip-файл.
- зип файл => Загрузить на FTP
Она включает в себя 2: одноразовые видео захвата и почтовый файл.
Как я могу справиться с этим с помощью Rx? Есть идеи? Извините, что не публиковал какой-либо код, я не знаю, с чего начать.
Заранее благодарен!
Начните с разбивки кода на эти три шага. Затем убедитесь, что каждый из этих методов возвращает «IObservable» для представления асинхронного характера перекодирования/записи/загрузки. Наконец, используйте SelectMany/Concat/Merge/etc для создания конвейера Rx, используя эти 3 метода. –
Спасибо, Ли! Дело в том, что я не знаю, действительно ли имеет смысл создать IObservabe, так как эта абстракция на самом деле не представляет данные, а абстракцию для создания .zip. Если мне удастся создать такой вид наблюдения, я получаю поток удаленных ZipArchives. –
SuperJMN
В более общем плане, я чувствую, что прогнозы, которые в конечном итоге попадают в файл, в конечном итоге становятся сложными. Возможно, способ сделать это - спроектировать маркер (строка), который представляет имя видео и с помощью Do, для создания Zip и передачи маркера на следующий шаг в конвейере. Наконец, абонент получит токен, чтобы узнать, какой файл загрузить. – SuperJMN