Hi! On 03/07/03, Vladimir Alaev wrote: > On Thu, 03 Jul 2003 18:42:45 +0400, AmiS <amis@xxxxxxxxxxxx> wrote: >>> 1. Удалось скомпилить ffmpeg и он даже работает :D >> Было бы странно еесли бы он не работал. > однако порт который есть на аминете у меня глючил конкретно :) Значит нужно залить свой порт! ;) >> Не понял что значит "захардкорены"... Не вижу проблему.... Наоборот, то > это значит что в коде главного модуля прописаны коды, структуры кодеков. терь понял. придётся их конечно рукаи вставлять в кодеки.... обидно блин. >>> 3. Покопался в исходниках xpk :) думаю что действительно надо сделать по >>> ее подобию. >> >> Достаточно было бы глянуть в автодоки. ;l) > нет, хотелось еще увидеть как это реализовано :) Вот и глянь как там проход по списку сделан ;) >>> б) есть либы кодеков - такие же стандартные shared library как и главная >>> библиотека. >>> в) каждый кодек имеет ряд стандартных вызовов: init(вызывается первым >>> понятно для чего :)), finalyze (вызывается последним после окончания >>> работы), decode_frame (может быть "пустым" >> >> Для чего инит? Имея список кодеков мы можем бежать по нему определяя к > инит может понадобиться перед декодированием первого фрейма. В самом > ффмпеге > кстати он есть и используется. мы можем его делать перед началом декодирования. непосредственно в функции деводирования внутри модуля. Зачем выносить это вовне? >> которая возвращает структуру с указателями на присутсвующие функции и >> дополнительную >> информацию... А далее всё ясно. > вообще-то это я и хотел донести :) значит плохо описал.. Так сделано в XAD... и убогое подобие в Dopus5 для модулей. >>> г) главная либа имеет следующие вызовы: exemine (определят тип потока), >>> decode_frame, encode_frame, get_error (возращает >> >> Examine . А лучше что0то типа getInfo. > ну это уже мелочи :) Учитесь писать граматно ;) Это же важная функция амига ос. >> Дык так-же как в xad, xpk, xfd. своя дирректория типа codecs. > а как происходит открытие библиотеки в этом случае? Элементарно... из этой диры делаем список всего что в ней находится DOS:Examine()/ExNext() ну и получаем имена... а дальше OpenLibrary(sys:devs/codecs/имя) > да вроде менять не нужно - у них у все несколько стандартных методов, > примерно таких > как я описал. Замечательно. Regards