Я работаю над проектом, использующим кодек MPEG2 для декодирования видео.Мой кодек находится в C.
После декодирования видео он возвращает беззнаковый указатель char буфера RGB, который является указателем на биты изображения, которые хранятся в виде байтового массива.Моя функция отображения в Android, поэтому я должен отправить эту информацию в Android с помощью JNI.
Перед вызовом функции отображения я скопировал эти данные буфера RGB в байтовый массив и передал их функции отображения:
BitmapFactory.Options opt = new BitmapFactory.Options();
opt.inDither = false;
opt.inPreferredConfig = Bitmap.Config.RGB_565;
Bitmap bit=BitmapFactory.decodeByteArray(data, 0, data.length,opt);
canvas.drawBitmap(bit, draw_x, draw_y, null);
Но когда я запускаю приложение, приходит сообщение:
DEBUG / skia (327): SkImageDecoder :: Factory вернул null.
Я не знаю, почему bitmapFactory возвращает ноль.Поскольку я новичок в Android, я не слишком разбираюсь в программировании Android.Кто-нибудь, пожалуйста, помогите мне ..