Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 105415 - ffmpeg-0.4.9_p20050906 breaks Kino at runtime and K3B build
Summary: ffmpeg-0.4.9_p20050906 breaks Kino at runtime and K3B build
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-09-09 11:40 UTC by Neil Darlow
Modified: 2005-09-19 19:10 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
k3b-0.12.3-ffmpeg-fix.patch (k3b-0.12.3-ffmpeg-fix.patch,2.27 KB, patch)
2005-09-10 02:02 UTC, Raul Metsma
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Neil Darlow 2005-09-09 11:40:12 UTC
I just upgraded ffmpeg and performed a revdep-rebuild. Nothing rebuilt for this
upgrade however when I next ran Kino it displayed instability until I rebuilt it.

I then decided to rebuild all applications that depend on ffmpeg and the K3B
build failed due to a type conversion error ** to * in the plugins ffmpegwrapper.

There are some issues with this version of ffmpeg.

Regards,
Neil Darlow

Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Neil Darlow 2005-09-09 11:42:35 UTC
The affected application versions are:

kino-0.7.6
k3b-0.12.3

Regards,
Neil Darlow
Comment 2 Raul Metsma 2005-09-10 01:21:32 UTC
For k3b there seems to be fix in kde svn
http://lists.kde.org/?l=kde-commits&m=112631268215288&w=2
Comment 3 Raul Metsma 2005-09-10 02:02:08 UTC
Created attachment 68090 [details, diff]
k3b-0.12.3-ffmpeg-fix.patch

Patch against k3b-0.12.3
Comment 4 Neil Darlow 2005-09-10 04:42:43 UTC
I can't understand why, if the API has changed, the library .so number hasn't
also changed to allow forced upgrades.

There's potential to break a lot of applications, which won't have been updated
by revdep-rebuild, because the library .so number hasn't changed.
Comment 5 Andrey Falko 2005-09-10 13:13:27 UTC
ffmpeg-0.4.9_p20050906 causes a segfault (when launching videos) in vlc 0.8.2-r1.

As soon as, I downgrabed to the previous version, vlc started working properly.

Cago-Ma3oxuct portage # emerge info 
Portage 2.0.52-r1 (default-linux/x86/2005.1, gcc-3.4.4, glibc-2.3.5-r1,
2.6.12-gentoo-r9 i686)
=================================================================
System uname: 2.6.12-gentoo-r9 i686 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.12.0_pre8
ccache version 2.4 [enabled]
dev-lang/python:     2.3.5, 2.4.1-r1
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -mtune=athlon-xp -pipe -O3 -fweb -frename-registers
-fforce-addr -momit-leaf-frame-pointer -fomit-frame-pointer -ftracer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env
/usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=athlon-xp -mtune=athlon-xp -pipe -O3 -fweb -frename-registers
-fforce-addr -momit-leaf-frame-pointer -fomit-frame-pointer -ftracer
-fvisibility-inlines-hidden"
DISTDIR="/in/portage"
FEATURES="autoconfig ccache distlocks sandbox sfperms strict userpriv usersandbox"
GENTOO_MIRRORS="http://gentoo.mirrors.tds.net/gentoo/ http://ccccom.com"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X a52 aac aalib alsa apm arts avi berkdb bitmap-fonts cdr crypt cups
curl divx4linux dvd dvdr dvdread eds emboss encode esd fam fame ffmpeg flac
foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 imagemagick imlib ipv6
jpeg jpeg2k kde libg++ libwww mad matroska mikmod mjpeg mng motif mozilla mp3
mpeg ncurses nls nptl ogg oggvorbis openal opengl oss pam pdflib perl png python
qt quicktime rar readline sdl spell sse sse2 ssl svga tcltk tcpd theora tiff
truetype truetype-fonts type1-fonts vorbis win32codecs wxwindows xml2 xmms xv
xvid zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 6 Neil Darlow 2005-09-10 14:26:15 UTC
(In reply to comment #5)
> ffmpeg-0.4.9_p20050906 causes a segfault (when launching videos) in vlc 0.8.2-r1.

Did you try emergeing vlc again after ffmpeg was updated? Assuming the changed
API of ffmpeg doesn't break the build of vlc, it might fix the segfault.
Comment 7 Andrey Falko 2005-09-10 15:48:37 UTC
Yes that did fix it. It applied a new patch to vlc (not sure what had motivated
it to do that because I did not find any bug reports). Thanks for the suggesstion.
Comment 8 David Li 2005-09-10 21:46:16 UTC
/bin/sh ../../../libtool --silent --mode=compile --tag=CXX i686-pc-linux-gnu-g++
-DHAVE_CONFIG_H -I. -I. -I../../..  -I./../../../libk3b/core
-I./../../../libk3b/plugin -I./../../../libk3bdevice -I/usr/kde/3.4/include
-I/usr/qt/3/include -I.  -DQT_THREAD_SUPPORT  -D_REENTRANT  -Wnon-virtual-dtor
-Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align
-Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wno-non-virtual-dtor
-DNDEBUG -DNO_DEBUG -O2 -O2 -pipe -march=pentium-m -fomit-frame-pointer -ftracer
-fforce-addr -fprefetch-loop-arrays -falign-functions=64 -frename-registers
-fvisibility-inlines-hidden -Wformat-security -Wmissing-format-attribute
-fno-exceptions -fno-check-new -fno-common  -c -o k3bffmpegdecoder.lo `test -f
'k3bffmpegdecoder.cpp' || echo './'`k3bffmpegdecoder.cpp
k3bffmpegwrapper.cpp: In member function `bool K3bFFMpegFile::open()':
k3bffmpegwrapper.cpp:85: error: cannot convert `AVCodecContext**' to
`AVCodecContext*' in initialization
k3bffmpegwrapper.cpp: In member function `void K3bFFMpegFile::close()':
k3bffmpegwrapper.cpp:127: error: cannot convert `AVCodecContext**' to
`AVCodecContext*' for argument `1' to `int avcodec_close(AVCodecContext*)'
k3bffmpegwrapper.cpp: In member function `int K3bFFMpegFile::sampleRate() const':
k3bffmpegwrapper.cpp:146: error: request for member `sample_rate' in
`((K3bFFMpegFile::Private*)((const
K3bFFMpegFile*)this)->K3bFFMpegFile::d)->K3bFFMpegFile::Private::formatContext->AVFormatContext::streams[0]->AVStream::codec',
which is of non-class type `AVCodecContext*'
k3bffmpegwrapper.cpp: In member function `int K3bFFMpegFile::channels() const':
k3bffmpegwrapper.cpp:152: error: request for member `channels' in
`((K3bFFMpegFile::Private*)((const
K3bFFMpegFile*)this)->K3bFFMpegFile::d)->K3bFFMpegFile::Private::formatContext->AVFormatContext::streams[0]->AVStream::codec',
which is of non-class type `AVCodecContext*'
k3bffmpegwrapper.cpp: In member function `int K3bFFMpegFile::type() const':
k3bffmpegwrapper.cpp:158: error: request for member `codec_id' in
`((K3bFFMpegFile::Private*)((const
K3bFFMpegFile*)this)->K3bFFMpegFile::d)->K3bFFMpegFile::Private::formatContext->AVFormatContext::streams[0]->AVStream::codec',
which is of non-class type `AVCodecContext*'
k3bffmpegwrapper.cpp: In member function `QString K3bFFMpegFile::typeComment()
const':
k3bffmpegwrapper.cpp:164: error: request for member `codec_id' in
`((K3bFFMpegFile::Private*)((const
K3bFFMpegFile*)this)->K3bFFMpegFile::d)->K3bFFMpegFile::Private::formatContext->AVFormatContext::streams[0]->AVStream::codec',
which is of non-class type `AVCodecContext*'
k3bffmpegwrapper.cpp: In member function `int K3bFFMpegFile::fillOutputBuffer()':
k3bffmpegwrapper.cpp:262: error: cannot convert `AVCodecContext**' to
`AVCodecContext*' for argument `1' to `int avcodec_decode_audio(AVCodecContext*,
int16_t*, int*, uint8_t*, int)'
make[4]: *** [k3bffmpegwrapper.lo] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory
`/var/tmp/portage/k3b-0.12.3/work/k3b-0.12.3/plugins/decoder/ffmpeg'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory
`/var/tmp/portage/k3b-0.12.3/work/k3b-0.12.3/plugins/decoder'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/var/tmp/portage/k3b-0.12.3/work/k3b-0.12.3/plugins'make[1]: ***
[all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/k3b-0.12.3/work/k3b-0.12.3'
make: *** [all] Error 2

!!! ERROR: app-cdr/k3b-0.12.3 failed.
!!! Function kde_src_compile, Line 170, Exitcode 2
!!! died running emake, kde_src_compile:make
!!! If you need support, post the topmost build error, NOT this status message.

Yes, I have a bunch of stuff in my CFLAGS...
Comment 9 Christian Lemke 2005-09-11 03:36:45 UTC
This bug is fixed in k3b 0.12.4a. It was an api-change in ffmpeg. 
Comment 10 Ryan Hill (RETIRED) gentoo-dev 2005-09-11 21:47:57 UTC
add avifile-0.7.43.20050224-r2 to the list of things ffmpeg-0.4.9_p20050906
breaks.  see bug #105597
Comment 11 Neil Darlow 2005-09-12 05:59:01 UTC
And probably transcode too ;-)
Comment 12 Caleb Tennis (RETIRED) gentoo-dev 2005-09-19 19:10:24 UTC
k3b 0.12.4a is now in portage