[devel] ffmpeg update: help needed.
Led
=?iso-8859-1?q?led_=CE=C1_altlinux=2Eru?=
Пн Сен 11 11:54:24 MSD 2006
В сообщении от 10 сентября 2006 02:31 Pavlov Konstantin написал(a):
> Всем привет.
>
> Вот такая ситуация:
> с одной стороны, надо включать в ffmpeg поддержку swscaler.
> с другой, если ее включить, то все становится плохо:
> 17.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
>
> --- libavcodec-0.5.0-alt1.svn5987.1/libavcodec.so.51 2006-09-09 14:36:29
> +0400
> +++ libavcodec-0.5.0-alt1.svn6217/libavcodec.so.51 2006-09-10 02:01:52
> +0400
> @@ -64,3 +64,2 @@
> alac_decoder D
> -align_get_bits T
> align_put_bits T
> @@ -74,2 +73,3 @@
> audio_resample_init T
> +av_audio_convert T
> av_bitstream_filter_close T
> @@ -159,3 +159,2 @@
> cavsvideo_parser D
> -check_marker T
> cinepak_decoder D
> @@ -408,3 +407,2 @@
> free_vlc T
> -get_bits_long T
> h261_decoder D
> @@ -430,3 +428,2 @@
> idcin_decoder D
> -img_convert T
> img_copy T
> @@ -435,6 +432,2 @@
> img_pad T
> -img_resample T
> -img_resample_close T
> -img_resample_full_init T
> -img_resample_init T
> indeo2_decoder D
> @@ -583,3 +576,2 @@
> shorten_decoder D
> -show_bits_long T
> simple_idct T
> @@ -603,5 +595,2 @@
> svq3_decoder D
> -sws_freeContext T
> -sws_getContext T
> -sws_scale T
> tab_frw_01234567_sse2 D
> @@ -618,2 +607,3 @@
> vmdvideo_decoder D
> +vmnc_decoder D
> vorbis_decoder D
> @@ -621,2 +611,9 @@
> vp3_decoder D
> +vp56_decode_frame T
> +vp56_free T
> +vp56_init T
> +vp56_init_dequant T
> +vp5_decoder D
> +vp6_decoder D
> +vp6f_decoder D
> vqa_decoder D
>
> 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
>
> 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
>
> # template for libavcodec.so.51 version script
> LIBAVCODEC_0.5.0 {
> global:
> av_audio_convert;
> vmnc_decoder;
> vp56_decode_frame;
> vp56_free;
> vp56_init;
> vp56_init_dequant;
> vp5_decoder;
> vp6_decoder;
> vp6f_decoder;
> };
>
> libavutil.so.49 definitions unchanged
>
> vim:ft=diff
> thresh на exchange repo/i686/RPMS.hasher $
>
> Т.е., как видим, удалены функции из public api, но soname не изменился.
> хуже того, обьявления этих функций все еще есть в avcodec.h.
> Из-за этого становятся нерабочими все программы, которые используют 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
>
> --- libavcodec-0.5.0-alt1.svn5987.1/libavcodec.so.51 2006-09-09 14:36:29
> +0400
> +++ libavcodec-0.5.0-alt1.svn6217.1/libavcodec.so.51 2006-09-10 02:21:11
> +0400
> @@ -64,3 +64,2 @@
> alac_decoder D
> -align_get_bits T
> align_put_bits T
> @@ -74,2 +73,3 @@
> audio_resample_init T
> +av_audio_convert T
> av_bitstream_filter_close T
> @@ -159,3 +159,2 @@
> cavsvideo_parser D
> -check_marker T
> cinepak_decoder D
> @@ -408,3 +407,2 @@
> free_vlc T
> -get_bits_long T
> h261_decoder D
> @@ -583,3 +581,2 @@
> shorten_decoder D
> -show_bits_long T
> simple_idct T
> @@ -618,2 +615,3 @@
> vmdvideo_decoder D
> +vmnc_decoder D
> vorbis_decoder D
> @@ -621,2 +619,9 @@
> vp3_decoder D
> +vp56_decode_frame T
> +vp56_free T
> +vp56_init T
> +vp56_init_dequant T
> +vp5_decoder D
> +vp6_decoder D
> +vp6f_decoder D
> vqa_decoder D
>
> 4 symbols removed
> T align_get_bits
> T check_marker
> T get_bits_long
> T show_bits_long
>
> 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
>
> # template for libavcodec.so.51 version script
> LIBAVCODEC_0.5.0 {
> global:
> av_audio_convert;
> vmnc_decoder;
> vp56_decode_frame;
> vp56_free;
> vp56_init;
> vp56_init_dequant;
> vp5_decoder;
> vp6_decoder;
> vp6f_decoder;
> };
>
> libavutil.so.49 definitions unchanged
>
> vim:ft=diff
>
>
> Подскажите, что мне с этим делать?
>
> Апстрим невменяем, если что.
Может попробовать при сборке "запихнуть" libswscale.a в libavcodec.so.* (до
смены soname у последней в апстриме)?
--
Led.
Подробная информация о списке рассылки Devel