Commit 79235d02 authored by Phil's avatar Phil

k3b: sound-stack rebuild

parent 085539bd
Index: src/option/k3bpluginoptiontab.cpp
===================================================================
--- src/option/k3bpluginoptiontab.cpp (revision 1168967)
+++ src/option/k3bpluginoptiontab.cpp (working copy)
@@ -43,12 +43,28 @@
layout->addWidget( label );
layout->addWidget( pluginSelector );
+ // find all categories
+ QHash<QString, QString> categoryNames;
+
foreach( K3b::Plugin* plugin, k3bcore->pluginManager()->plugins() ) {
- kDebug() << "Adding plugin" << plugin->pluginInfo().name();
- pluginSelector->addPlugins( QList<KPluginInfo>() << plugin->pluginInfo(),
+ categoryNames[ plugin->category() ] = plugin->categoryName();
+ }
+
+ // add all plugins in each category
+ foreach( const QString &category, categoryNames.keys() ) {
+ QList<KPluginInfo> plugins;
+
+ foreach( K3b::Plugin* plugin, k3bcore->pluginManager()->plugins() ) {
+ if ( plugin->category() == category ) {
+ plugins << plugin->pluginInfo();
+ kDebug() << "Adding plugin" << plugin->pluginInfo().name();
+ }
+ }
+ pluginSelector->addPlugins( plugins,
KPluginSelector::ReadConfigFile,
- plugin->categoryName(),
- plugin->category() );
+ categoryNames[ category ],
+ category
+ );
}
}
commit 61ca30beb978f68e72257408777c6433f33129bd
Author: Michal Malek <michalm@jabster.pl>
Date: Sun Aug 28 20:18:53 2011 +0200
Fixed compilation with new FFMPEG
BUG: 274817
FIXED-IN: 2.0.3
diff --git a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
index 0ad59fc..0c5f366 100644
--- a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
+++ b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
@@ -109,7 +109,13 @@ bool K3bFFMpegFile::open()
#else
::AVCodecContext* codecContext = d->formatContext->streams[0]->codec;
#endif
- if( codecContext->codec_type != CODEC_TYPE_AUDIO ) {
+ if( codecContext->codec_type !=
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 64, 0)
+ AVMEDIA_TYPE_AUDIO)
+#else
+ CODEC_TYPE_AUDIO)
+#endif
+ {
kDebug() << "(K3bFFMpegFile) not a simple audio stream: " << m_filename;
return false;
}
@@ -225,8 +231,11 @@ QString K3bFFMpegFile::typeComment() const
QString K3bFFMpegFile::title() const
{
// FIXME: is this UTF8 or something??
- if( d->formatContext->title[0] != '\0' )
- return QString::fromLocal8Bit( d->formatContext->title );
+ AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "TITLE", NULL, 0 );
+ if( ade == NULL )
+ return QString();
+ if( ade->value != '\0' )
+ return QString::fromLocal8Bit( ade->value );
else
return QString();
}
@@ -235,8 +244,11 @@ QString K3bFFMpegFile::title() const
QString K3bFFMpegFile::author() const
{
// FIXME: is this UTF8 or something??
- if( d->formatContext->author[0] != '\0' )
- return QString::fromLocal8Bit( d->formatContext->author );
+ AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "ARTIST", NULL, 0 );
+ if( ade == NULL )
+ return QString();
+ if( ade->value != '\0' )
+ return QString::fromLocal8Bit( ade->value );
else
return QString();
}
@@ -245,8 +257,11 @@ QString K3bFFMpegFile::author() const
QString K3bFFMpegFile::comment() const
{
// FIXME: is this UTF8 or something??
- if( d->formatContext->comment[0] != '\0' )
- return QString::fromLocal8Bit( d->formatContext->comment );
+ AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "COMMENT", NULL, 0 );
+ if( ade == NULL )
+ return QString();
+ if( ade->value != '\0' )
+ return QString::fromLocal8Bit( ade->value );
else
return QString();
}
@@ -309,8 +324,13 @@ int K3bFFMpegFile::fillOutputBuffer()
#if LIBAVCODEC_VERSION_MAJOR < 52
int len = ::avcodec_decode_audio(
#else
+ #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 64, 0)
+ int len = ::avcodec_decode_audio3(
+ #else
int len = ::avcodec_decode_audio2(
+ #endif
#endif
+
#ifdef FFMPEG_BUILD_PRE_4629
&d->formatContext->streams[0]->codec,
#else
@@ -318,7 +338,11 @@ int K3bFFMpegFile::fillOutputBuffer()
#endif
(short*)d->alignedOutputBuffer,
&d->outputBufferSize,
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 64, 0)
+ &d->packet );
+#else
d->packetData, d->packetSize );
+#endif
if( d->packetSize <= 0 || len < 0 )
::av_free_packet( &d->packet );
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment