Bug 274817 - k3b-2.0.2 fails to build with libav-0.7 (Gentoo bug #369523)
Summary: k3b-2.0.2 fails to build with libav-0.7 (Gentoo bug #369523)
Status: RESOLVED FIXED
Alias: None
Product: k3b
Classification: Applications
Component: Audio Project (other bugs)
Version First Reported In: 2.0.2
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: ---
Assignee: Michał Małek
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-03 10:44 UTC by Paolo Pedroni
Modified: 2011-09-11 20:26 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In: 2.0.3
Sentry Crash Report:


Attachments
Patch to compile k3b with ffmpeg 0.8 (2.79 KB, patch)
2011-06-22 16:59 UTC, madcatx
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Paolo Pedroni 2011-06-03 10:44:58 UTC
Version:           2.0.2 (using KDE 4.6.3) 
OS:                Linux

I decided to upgrade my libav libraries to 0.7_beta2 to test some new video
filters, and now k3b does not compile anymore. There was an API change
in libav-0.7 and it seems that k3b is not compliant with the new API.

Compilation yields the following error:
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:112: error: 'CODEC_TYPE_AUDIO' was not declared in this scope
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:140: warning: 'void dump_format(AVFormatContext*, int, const char*, int)' is deprecated (declared at /usr/include/libavformat/avformat.h:1381)
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:140: warning: 'void dump_format(AVFormatContext*, int, const char*, int)' is deprecated (declared at /usr/include/libavformat/avformat.h:1381)
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp: In member function 'QString K3bFFMpegFile::title() const':
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:228: error: 'struct AVFormatContext' has no member named 'title'
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:229: error: 'struct AVFormatContext' has no member named 'title'
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp: In member function 'QString K3bFFMpegFile::author() const':
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:238: error: 'struct AVFormatContext' has no member named 'author'
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:239: error: 'struct AVFormatContext' has no member named 'author'
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp: In member function 'QString K3bFFMpegFile::comment() const':
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:248: error: 'struct AVFormatContext' has no member named 'comment'
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:249: error: 'struct AVFormatContext' has no member named 'comment'
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp: In member function 'int K3bFFMpegFile::fillOutputBuffer()':
/var/tmp/portage/app-cdr/k3b-2.0.2-r1/work/k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp:312: error: '::avcodec_decode_audio2' has not been declared
make[2]: *** [plugins/decoder/ffmpeg/CMakeFiles/k3bffmpegdecoder.dir/k3bffmpegwrapper.o] Error 1
make[1]: *** [plugins/decoder/ffmpeg/CMakeFiles/k3bffmpegdecoder.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

Reproducible: Always

Steps to Reproduce:
1. emerge -1 =libav-0.7_beta2
2. emerge -1 k3b

Actual Results:  
The error above.

Expected Results:  
Correct compilation of the package.

# emerge --info
Portage 2.1.9.42 (default/linux/amd64/10.0/desktop/kde, gcc-4.4.5, libc-0-r0, 2.6.38-gentoo-r6 x86_64)
=================================================================
System uname: Linux-2.6.38-gentoo-r6-x86_64-Intel-R-_Pentium-R-_4_CPU_3.20GHz-with-gentoo-2.0.2
Timestamp of tree: Fri, 03 Jun 2011 06:15:01 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.1_p9
dev-java/java-config: 2.1.11-r3
dev-lang/python:     2.7.1-r1, 3.1.3-r1
dev-util/ccache:     2.4-r9
dev-util/cmake:      2.8.4-r1
sys-apps/baselayout: 2.0.2
sys-apps/openrc:     0.8.2-r1
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.5
sys-devel/gcc-config: 1.4.1-r1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.82
sys-kernel/linux-headers: 2.6.36.1
sys-libs/glibc:      2.12.2
virtual/os-headers:  0
Comment 1 madcatx 2011-06-22 16:59:44 UTC
Created attachment 61237 [details]
Patch to compile k3b with ffmpeg 0.8
Comment 2 Paolo Pedroni 2011-06-23 11:23:41 UTC
This works fine for me with libav-0.7 final. K3b compiles fine now.
Comment 3 Niels Ole Salscheider 2011-08-12 08:50:59 UTC
Please apply this patch...
Comment 4 Michał Małek 2011-09-11 20:26:38 UTC
Git commit 61ca30beb978f68e72257408777c6433f33129bd by Michal Malek.
Committed on 28/08/2011 at 20:18.
Pushed by mmalek into branch '2.0'.

Fixed compilation with new FFMPEG

BUG: 274817
FIXED-IN: 2.0.3

M  +31   -7    plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp

http://commits.kde.org/k3b/61ca30beb978f68e72257408777c6433f33129bd
Comment 5 Michał Małek 2011-09-11 20:26:39 UTC
Git commit 2f845b34badb614882b7e38ac38b00041ac2832d by Michal Malek.
Committed on 28/08/2011 at 20:18.
Pushed by mmalek into branch 'master'.

Fixed compilation with new FFMPEG

BUG: 274817
FIXED-IN: 2.0.3

M  +31   -7    plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp

http://commits.kde.org/k3b/2f845b34badb614882b7e38ac38b00041ac2832d