Мне нужно закодировать несколько изображений (из которых у меня есть полный путь) в видео определенного FPS на Android.
Испытания:
Как создать видео из массива изображений в Android?
Почему я не мог заставить его работать:
Я добавил зависимость Jcodec в файл Gradle (
compile 'org.jcodec:jcodec:0.2.3'
compile 'org.jcodec:jcodec-android:0.2.2'
)
Затем я вставил код в функцию, и вот что я получил:
Как видите, мне удалось импортировать SequenceEncoder (import org.jcodec.api.SequenceEncoder;)
Но он не распознает буферизованное изображение (я думаю, это потому, что я должен использовать растровое изображение)
И это дает мне ошибку в SequenceEncoder.
Также не распознает метод encodeImage.
Затем я попытался с кодом, найденным на веб-сайте JCodec:
SeekableByteChannel out = null;
try {
out = NIOUtils.writableFileChannel("/tmp/output.mp4");
// for Android use: AndroidSequenceEncoder
AWTSequenceEncoder encoder = new AWTSequenceEncoder(out, Rational.R(25, 1));
for (...) {
// Generate the image, for Android use Bitmap
BufferedImage image = ...;
// Encode the image
encoder.encodeImage(image);
}
// Finalize the encoding, i.e. clear the buffers, write the header, etc.
encoder.finish();
} finally {
NIOUtils.closeQuietly(out);
}
Но он не распознает AWTSequenceEncoder и, следовательно, методы encodeImage и finish.
Что я делаю не так?