FFmpeg.
Причем, лучше скачать из SVN, компилируется легко.
Для использования три библиотеки линкуют: -lavcodec -lavformat -lavutil
pkg-config --cflags ffmpeg или pkg-config --lflags ffmpeg выдадут все нужные флаги.
В исходниках есть примеры, на сайте ffmpeg есть ссылки на обучающие материалы.
Хотя, документация довольно бедна, и лучший источник информации - исходники.
Что-то типа такого должно получиться:
av_open_input_file(...)
av_find_stream_info(..)
codec=avcodec_find_decoder(...)
avcodec_open()
while(!is_exit()){
AVFrame *frame;
av_read_frame(input)
avcodec_decode_video2( )
}
В итоге, в frame появляется декодированная картинка, там же есть поля
uint8_t *mbskip_table;
int16_t (*motion_val[2])[2];
uint32_t *mb_type;
Вероятно, это то, что нужно.
Использование IPP мне представляется стрельбой из пушки по воробьям.
Тогда уж стоит взглянуть в сторону OpenCV, где эта библиотека широко используется.
FFmpeg можно на этапе ./configure оптимизировать под свои нужды, отключив все ненужные кодеки, форматы и девайсы - это уменьшит размер библиотек.