img_load_file()

Декодирование кадра из файла в файловой системе

Прототип:

#include <img.h>
int img_load_file( img_lib_t ilib,
const char *path,
const img_decode_callouts_t *callouts,
img_t *img );

Аргументы:

ilib
Дескриптор библиотеки, заполенный img_lib_attach().
path
Полный путь к файлу, из которого можно производить чтение данных.
callouts
Указатель на структуру img_decode_callouts_t, передающей колбэки декодера. Если указать NULL в качестве данного значения, будет применяться набор колбэков по умолчанию, которые позволяют:
img
Адрес структуры img_t, которая заполняется функцией с информацией о декодируемом кадре. Перед вызовом img_load_file() можно переопределить такие элементы структуры, как формат:
img.format = IMG_FMT_G8;
img.flags |= IMG_FORMAT;
img_load_file( ... );
В приведенном примере, поскольку формат установлен до загрузки, libimg переведет загруженное изображение в формат IMG_FMT_G8, независимо от фактического формата исходного изображения.

Библиотека:

img

Описание:

Функция производит чтение и декодирование кадра из файла в файловой системе (первого встретившегося кадра). Если нужно изменить размер файла при его загрузке, примените img_load_resize_file() .

Возвращаемое значение:

IMG_ERR_OK
Успешное завершение.
IMG_ERR_CORRUPT
В файле обнаружены недопустимые данные, препятствующие продолжению декодирования. Часть кадра может быть неповрежденной.
IMG_ERR_DLL
Произошла ошибка при обработке DLL, обрабатывающей этот тип файла. Убедитесь, что DLL отсутствует или повреждена.
IMG_ERR_FILE
Ошибка доступа к пути (установлен errno).
IMG_ERR_FORMAT
Не удалось найти подходящий кодек. Требуемый кодек отсутствует или поврежден, либо файл поврежден.
IMG_ERR_INTR
Декодирование было прервано приложением.
IMG_ERR_MEM
Ошибка выделения памяти.
IMG_ERR_NODATA
Отсутствуют данные о кадре. Ошибка является маловероятной, т.к. файлы обычно содержат хотя бы один кадр.
IMG_ERR_NOSUPPORT
Формат входных данных не поддерживается; кодеку и приложению не удалось согласовать формат выходных данных.
IMG_ERR_TRUNC
Размер обрабатываемого файла меньше одидаемого. Часть кадра может быть неповрежденной.

Классификация:

Графическая подсистема ЗОСРВ «Нейтрино», Библиотека Image

Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Нет

Тематические ссылки:

img_decode_callouts_t, img_load(), img_load_resize_file(), img_t, img_lib_attach()




Предыдущий раздел: Image API