[devel] ffmpeg update: help needed.

Pavlov Konstantin =?iso-8859-1?q?thresh_=CE=C1_altlinux=2Eru?=
Вс Сен 10 14:29:29 MSD 2006


On Sunday 10 September 2006 13:55, Alexey Tourbin wrote:
> On Sun, Sep 10, 2006 at 03:31:54AM +0400, Pavlov Konstantin wrote:
> > Вот такая ситуация:
> > с одной стороны, надо включать в ffmpeg поддержку swscaler.
> > с другой, если ее включить, то все становится плохо:
> >
> >         12 symbols removed
> > T align_get_bits
> > T check_marker
> > T get_bits_long
> > T img_convert
> > T img_resample
> > T img_resample_close
> > T img_resample_full_init
> > T img_resample_init
> > T show_bits_long
> > T sws_freeContext
> > T sws_getContext
> > T sws_scale
>
> К сожалению эти символы уже используются различными программами в
> репозитарии.
Ну, это я заметил. :)

> > Т.е., как видим, удалены функции из public api, но soname не изменился.
> > хуже того, обьявления этих функций все еще есть в avcodec.h.
> > Из-за этого становятся нерабочими все программы, которые используют
> > ffmpeg. Пересборка, конечно, помогает, но...
>
> Не ясно, каков механизм, что после пересборки эти функции перестают
> использоваться.  Там в хедерах простыни ifdef/define'ов что ли?
В хедерах как раз нет. Они есть в исходных кодах самой библиотеки. К фатальным 
последствиям приводит включение swscale-библиотеки в сборке ffmpeg (которая, 
в принципе, довольно нужна).

> > Пересобираем без swscaler, становится несколько лучше, но все же:
> >
> > thresh на exchange repo/i686/RPMS.hasher $ rpmsodiff
> > libavcodec-0.5.0-alt1.svn5987.1.i686.rpm
> > libavcodec-0.5.0-alt1.svn6217.1.i686.rpm
> >         common sonames:
> > libavcodec.so.51        /usr/lib/libavcodec.so.51.11.0 
> > /usr/lib/libavcodec.so.51.14.0 libavutil.so.49
> > /usr/lib/libavutil.so.49.0.0    /usr/lib/libavutil.so.49.0.0
> >
> >         4 symbols removed
> > T align_get_bits
> > T check_marker
> > T get_bits_long
> > T show_bits_long
>
> А вот эти почти не используются:
>
> $ grep -f ffmpeg-minus2 ref
> libavformat     /usr/lib/libavformat.so.50.5.0  U       get_bits_long
> $
>
> т.е. это из того же исходного пакета, что и libavcodec.
>
> >         9 symbols added
> > D vmnc_decoder
> > D vp5_decoder
> > D vp6_decoder
> > D vp6f_decoder
> > T av_audio_convert
> > T vp56_decode_frame
> > T vp56_free
> > T vp56_init
> > T vp56_init_dequant
> >
> > Подскажите, что мне с этим делать?
>
> Ну, надо разбираться. :)

на http://87.236.24.51/hasher/sisyphus32/ есть собранные пакеты и src.rpm к 
ним.
5987.1 -- "старая версия"
6217 -- "новая" с swscaler:on
6217.1 -- "новая" с swscaler:off.

-- 
Pavlov Konstantin,
ALT Linux Team,
VideoLAN Team,
jid: thresh на altlinux.org
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20060910/6d80e087/attachment-0001.bin>


Подробная информация о списке рассылки Devel