У меня есть очень простой вопрос относительно Android и ffmpeg. Я получил ffmpeg от http://bambuser.com/opensource и смог скомпилировать его для ARM.
Результатами являются двоичные файлы (ffmpeg
), а также несколько libsomething.so
файлов.
Мой вопрос: достаточно ли этого для декодирования видео? Как тогда я на самом деле использую ffmpeg?
Для загрузки библиотеки у меня есть:
static {
System.load("/data/data/com.package/lib/libavcodec.so");
}
Хорошо загружается. Но что тогда?
Более подробное объяснение: я видел другие проекты, где люди имели свой источник ffmpeg в каталоге JNI в проекте. Они также создали несколько файлов Android.mk и немного кода на C вместе с ним. Мне это тоже нужно? Зачем мне сначала создавать файлы .so, а затем снова копировать исходный код ffmpeg?
Я знаю NDK и как он должен работать, но я никогда не видел пример того, как можно было бы вызвать функции ffmpeg, используя его, потому что люди, кажется, скрывают свои реализации (что-то понятно), но даже не дают полезных указателей или Примеры.
Скажем так, я хотел декодировать видео файл. Какие родные методы мне нужно реализовать? Как мне запустить проект? Какие типы данных должны быть переданы? и т.д. Конечно, здесь есть несколько человек, которые, по крайней мере, сделали это, я знаю это по поиску часов и часов.