sysutils/k3b-kde4:
- Update to 2.0.3 - Remove patches merged upstream, regenerate patches - Add patch obtained from Gentoo to fix build with modern ffmpeg/libav PR: 202561 Submitted by: matthew@reztek.cz
This commit is contained in:
parent
310fec0aaf
commit
8162989ab7
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=395247
22 changed files with 266 additions and 553 deletions
|
@ -2,10 +2,10 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= k3b
|
||||
PORTVERSION= 2.0.2
|
||||
PORTREVISION= 23
|
||||
PORTVERSION= 2.0.3
|
||||
CATEGORIES= sysutils multimedia kde
|
||||
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${PORTVERSION}
|
||||
MASTER_SITES= KDE/${PORTNAME}
|
||||
DISTFILES= ${DISTNAME}a${EXTRACT_SUFX}
|
||||
|
||||
MAINTAINER= kde@FreeBSD.org
|
||||
COMMENT= KDE CD/DVD writing suite
|
||||
|
@ -15,7 +15,7 @@ LIB_DEPENDS= libcdda_paranoia.so:${PORTSDIR}/audio/cdparanoia \
|
|||
RUN_DEPENDS= cdrecord:${PORTSDIR}/sysutils/cdrtools
|
||||
BUILD_DEPENDS= cdrecord:${PORTSDIR}/sysutils/cdrtools
|
||||
|
||||
USES= cmake gettext pkgconfig shared-mime-info tar:bzip2
|
||||
USES= cmake gettext pkgconfig shared-mime-info tar:xz
|
||||
CMAKE_ARGS= -DK3B_BUILD_K3BSETUP:BOOL=OFF \
|
||||
-DK3B_ENABLE_MUSICBRAINZ:BOOL=OFF
|
||||
USE_KDE4= automoc4 kdeprefix kdelibs libkcddb
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
SHA256 (k3b-2.0.2.tar.bz2) = af176f29c1d2339c4648d461476227cb07bcd0c75056f2a4006f253e3ef5b7cd
|
||||
SIZE (k3b-2.0.2.tar.bz2) = 12833321
|
||||
SHA256 (k3b-2.0.3a.tar.xz) = 2d0bb2746802c1d3ad7ddd10e29234cf2053074f376feb200306a5570c39c081
|
||||
SIZE (k3b-2.0.3a.tar.xz) = 9864468
|
||||
|
|
15
sysutils/k3b-kde4/files/patch-CMakeLists.txt
Normal file
15
sysutils/k3b-kde4/files/patch-CMakeLists.txt
Normal file
|
@ -0,0 +1,15 @@
|
|||
--- CMakeLists.txt.orig 2014-11-04 18:43:47 UTC
|
||||
+++ CMakeLists.txt
|
||||
@@ -106,10 +106,10 @@ if(K3B_BUILD_FFMPEG_DECODER_PLUGIN)
|
||||
include(CMakePushCheckState)
|
||||
cmake_push_check_state()
|
||||
|
||||
- if(CMAKE_COMPILER_IS_GNUCC)
|
||||
+ if(CMAKE_COMPILER_IS_GNUCC OR "${CMAKE_C_COMPILER_ID}" MATCHES "Clang")
|
||||
# FindKDE4Internal.cmake screws things up
|
||||
set(CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS} -std=c99)
|
||||
- endif(CMAKE_COMPILER_IS_GNUCC)
|
||||
+ endif(CMAKE_COMPILER_IS_GNUCC OR "${CMAKE_C_COMPILER_ID}" MATCHES "Clang")
|
||||
|
||||
if(FFMPEG_INCLUDE_DIR_OLD_STYLE)
|
||||
set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${FFMPEG_INCLUDE_DIR_OLD_STYLE})
|
|
@ -1,6 +1,6 @@
|
|||
--- cmake/modules/FindMuse.cmake.orig 2011-01-15 20:47:29.000000000 +0000
|
||||
--- cmake/modules/FindMuse.cmake.orig 2014-11-04 18:37:31 UTC
|
||||
+++ cmake/modules/FindMuse.cmake
|
||||
@@ -15,13 +15,10 @@ if( MUSE_INCLUDE_DIR AND MUSE_LIBRARIES
|
||||
@@ -15,13 +15,10 @@ if( MUSE_INCLUDE_DIR AND MUSE_LIBRARIES
|
||||
endif( MUSE_INCLUDE_DIR AND MUSE_LIBRARIES )
|
||||
|
||||
include(CheckIncludeFiles)
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
https://bugs.gentoo.org/show_bug.cgi?id=476494
|
||||
|
||||
A better patch using avcodec_decode_audio4 will be needed but for now this
|
||||
fixes the problem.
|
||||
|
||||
Index: k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
===================================================================
|
||||
--- plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp.orig
|
||||
+++ plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
@@ -37,6 +37,9 @@ extern "C" {
|
||||
|
||||
#include <klocale.h>
|
||||
|
||||
+#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
|
||||
+#define AVCODEC_MAX_AUDIO_FRAME_SIZE (192000 * 4)
|
||||
+#endif
|
||||
|
||||
#if LIBAVFORMAT_BUILD < 4629
|
||||
#define FFMPEG_BUILD_PRE_4629
|
|
@ -1,11 +0,0 @@
|
|||
--- plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp.orig 2011-01-15 21:47:29.000000000 +0100
|
||||
+++ plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp 2015-07-04 07:21:54.284708677 +0200
|
||||
@@ -159,7 +159,7 @@ void K3bFFMpegFile::close()
|
||||
}
|
||||
|
||||
if( d->formatContext ) {
|
||||
- ::av_close_input_file( d->formatContext );
|
||||
+ ::avformat_close_input( &d->formatContext );
|
||||
d->formatContext = 0;
|
||||
}
|
||||
}
|
|
@ -1,96 +0,0 @@
|
|||
commit 2f845b34badb614882b7e38ac38b00041ac2832d
|
||||
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
|
||||
--- ./plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
+++ ./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 );
|
|
@ -1,42 +0,0 @@
|
|||
commit 6f34e14b28d2f9103151c6ba08b3bb40448ffe46
|
||||
Author: Alex Merry <kde@randomguy3.me.uk>
|
||||
Date: Thu Aug 23 23:45:34 2012 +0100
|
||||
|
||||
Fix K3B to build with recent FFMPEG versions
|
||||
|
||||
FFMPEG 0.11 (shipped on ArchLinux, for example) has renamed some
|
||||
functions.
|
||||
|
||||
The exact versions in the #ifdefs are taken from the Mobile Robot
|
||||
Programming Toolkit.
|
||||
|
||||
BUG: 300731
|
||||
|
||||
diff --git a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
index 0c5f366..024c18c 100644
|
||||
--- ./plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
+++ ./plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
@@ -88,7 +88,11 @@ bool K3bFFMpegFile::open()
|
||||
close();
|
||||
|
||||
// open the file
|
||||
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(53,2,0)
|
||||
+ int err = ::avformat_open_input( &d->formatContext, m_filename.toLocal8Bit(), 0, 0 );
|
||||
+#else
|
||||
int err = ::av_open_input_file( &d->formatContext, m_filename.toLocal8Bit(), 0, 0, 0 );
|
||||
+#endif
|
||||
if( err < 0 ) {
|
||||
kDebug() << "(K3bFFMpegFile) unable to open " << m_filename << " with error " << err;
|
||||
return false;
|
||||
@@ -143,7 +147,11 @@ bool K3bFFMpegFile::open()
|
||||
}
|
||||
|
||||
// dump some debugging info
|
||||
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(53,2,0)
|
||||
+ ::av_dump_format( d->formatContext, 0, m_filename.toLocal8Bit(), 0 );
|
||||
+#else
|
||||
::dump_format( d->formatContext, 0, m_filename.toLocal8Bit(), 0 );
|
||||
+#endif
|
||||
|
||||
return true;
|
||||
}
|
|
@ -1,25 +0,0 @@
|
|||
commit 79cd49cac3a6b7031556aae53ce3ecff8c360cb9
|
||||
Author: Pino Toscano <pino@kde.org>
|
||||
Date: Sun Jul 8 22:20:15 2012 +0200
|
||||
|
||||
fix sox detection with sox >= 14.4.0
|
||||
|
||||
sox 1.14.0 changed the string that is printed out on --version, breaking the simply string matching done;
|
||||
add a new case to cover also this new version
|
||||
|
||||
BUG: 301544
|
||||
|
||||
diff --git a/plugins/encoder/sox/k3bsoxencoder.cpp b/plugins/encoder/sox/k3bsoxencoder.cpp
|
||||
index 3559d5d..af5b013 100644
|
||||
--- ./plugins/encoder/sox/k3bsoxencoder.cpp
|
||||
+++ ./plugins/encoder/sox/k3bsoxencoder.cpp
|
||||
@@ -69,6 +69,9 @@ public:
|
||||
if ( pos >= 0 ) {
|
||||
pos += 17;
|
||||
}
|
||||
+ else if ( ( pos = out.indexOf( "sox: SoX v" ) ) >= 0 ) {
|
||||
+ pos += 15;
|
||||
+ }
|
||||
else if ( ( pos = out.indexOf( "sox: SoX v" ) ) >= 0 ) {
|
||||
pos += 10;
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
commit 8d33a486082cd9eaa857d6042b1b8870e4bf532b
|
||||
Author: Rex Dieter <rdieter@fedoraproject.org>
|
||||
Date: Sat Feb 11 08:34:04 2012 -0600
|
||||
|
||||
fix for newer (kde-4.7+) FindFFMPEG.cmake
|
||||
which sets ${FFMPEG_INCLUDE_DIRS} instead of ${FFMPEG_INCLUDE_DIR}
|
||||
|
||||
diff --git a/plugins/decoder/ffmpeg/CMakeLists.txt b/plugins/decoder/ffmpeg/CMakeLists.txt
|
||||
index d7e25eb..d420a3c 100644
|
||||
--- ./plugins/decoder/ffmpeg/CMakeLists.txt
|
||||
+++ ./plugins/decoder/ffmpeg/CMakeLists.txt
|
||||
@@ -9,7 +9,7 @@ if(FFMPEG_INCLUDE_DIR_OLD_STYLE)
|
||||
else(FFMPEG_INCLUDE_DIR_OLD_STYLE)
|
||||
message(STATUS "found new ffmpegcodecpath")
|
||||
add_definitions(-DNEWFFMPEGAVCODECPATH)
|
||||
- include_directories (${FFMPEG_INCLUDE_DIR})
|
||||
+ include_directories (${FFMPEG_INCLUDE_DIR} ${FFMPEG_INCLUDE_DIRS})
|
||||
endif(FFMPEG_INCLUDE_DIR_OLD_STYLE)
|
||||
|
||||
set(k3bffmpegdecoder_PART_SRCS k3bffmpegdecoder.cpp k3bffmpegwrapper.cpp )
|
138
sysutils/k3b-kde4/files/patch-libav11
Normal file
138
sysutils/k3b-kde4/files/patch-libav11
Normal file
|
@ -0,0 +1,138 @@
|
|||
From 52d3d64863d2fab4128f524870851f18f5cae1fc Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Old=C5=99ich=20Jedli=C4=8Dka?= <oldium.pro@seznam.cz>
|
||||
Date: Sat, 14 Feb 2015 15:31:07 +0100
|
||||
Subject: [PATCH] Fixed compilation with newer ffmpeg/libav.
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Oldřich Jedlička <oldium.pro@seznam.cz>
|
||||
---
|
||||
plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp | 60 ++++++++++++++++++++++++-----
|
||||
1 file changed, 50 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
index 5451fd3..2f80fd6 100644
|
||||
--- plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
+++ plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
@@ -86,8 +86,12 @@ public:
|
||||
K3b::Msf length;
|
||||
|
||||
// for decoding. ffmpeg requires 16-byte alignment.
|
||||
+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
|
||||
+ ::AVFrame* frame;
|
||||
+#else
|
||||
char outputBuffer[AVCODEC_MAX_AUDIO_FRAME_SIZE + 15];
|
||||
char* alignedOutputBuffer;
|
||||
+#endif
|
||||
char* outputBufferPos;
|
||||
int outputBufferSize;
|
||||
::AVPacket packet;
|
||||
@@ -102,14 +106,29 @@ K3bFFMpegFile::K3bFFMpegFile( const QString& filename )
|
||||
d = new Private;
|
||||
d->formatContext = 0;
|
||||
d->codec = 0;
|
||||
+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
|
||||
+# if LIBAVCODEC_BUILD < AV_VERSION_INT(55,28,1)
|
||||
+ d->frame = avcodec_alloc_frame();
|
||||
+# else
|
||||
+ d->frame = av_frame_alloc();
|
||||
+# endif
|
||||
+#else
|
||||
int offset = 0x10 - (reinterpret_cast<intptr_t>(&d->outputBuffer) & 0xf);
|
||||
d->alignedOutputBuffer = &d->outputBuffer[offset];
|
||||
+#endif
|
||||
}
|
||||
|
||||
|
||||
K3bFFMpegFile::~K3bFFMpegFile()
|
||||
{
|
||||
close();
|
||||
+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
|
||||
+# if LIBAVCODEC_BUILD < AV_VERSION_INT(55,28,1)
|
||||
+ av_free(d->frame);
|
||||
+# else
|
||||
+ av_frame_free(&d->frame);
|
||||
+# endif
|
||||
+#endif
|
||||
delete d;
|
||||
}
|
||||
|
||||
@@ -326,26 +345,36 @@ int K3bFFMpegFile::fillOutputBuffer()
|
||||
return 0;
|
||||
}
|
||||
|
||||
+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
|
||||
+ int gotFrame = 0;
|
||||
+ int len = ::avcodec_decode_audio4(
|
||||
+#else
|
||||
d->outputBufferPos = d->alignedOutputBuffer;
|
||||
d->outputBufferSize = AVCODEC_MAX_AUDIO_FRAME_SIZE;
|
||||
-
|
||||
-#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3
|
||||
+# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3
|
||||
int len = ::avcodec_decode_audio3(
|
||||
-#else
|
||||
-# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO2
|
||||
- int len = ::avcodec_decode_audio2(
|
||||
# else
|
||||
+# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO2
|
||||
+ int len = ::avcodec_decode_audio2(
|
||||
+# else
|
||||
int len = ::avcodec_decode_audio(
|
||||
+# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
FFMPEG_CODEC(d->formatContext->streams[0]),
|
||||
+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
|
||||
+ d->frame,
|
||||
+ &gotFrame,
|
||||
+ &d->packet );
|
||||
+#else
|
||||
(short*)d->alignedOutputBuffer,
|
||||
&d->outputBufferSize,
|
||||
-#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3
|
||||
+# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3
|
||||
&d->packet );
|
||||
-#else
|
||||
+# else
|
||||
d->packetData, d->packetSize );
|
||||
+# endif
|
||||
#endif
|
||||
|
||||
if( d->packetSize <= 0 || len < 0 )
|
||||
@@ -355,6 +384,17 @@ int K3bFFMpegFile::fillOutputBuffer()
|
||||
return -1;
|
||||
}
|
||||
|
||||
+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
|
||||
+ if ( gotFrame ) {
|
||||
+ d->outputBufferSize = ::av_samples_get_buffer_size(
|
||||
+ NULL,
|
||||
+ FFMPEG_CODEC(d->formatContext->streams[0])->channels,
|
||||
+ d->frame->nb_samples,
|
||||
+ FFMPEG_CODEC(d->formatContext->streams[0])->sample_fmt,
|
||||
+ 1 );
|
||||
+ d->outputBufferPos = reinterpret_cast<char*>( d->frame->data[0] );
|
||||
+ }
|
||||
+#endif
|
||||
d->packetSize -= len;
|
||||
d->packetData += len;
|
||||
}
|
||||
@@ -420,9 +460,9 @@ K3bFFMpegFile* K3bFFMpegWrapper::open( const QString& filename ) const
|
||||
// mp3 being one of them sadly. Most importantly: allow the libsndfile decoder to do
|
||||
// its thing.
|
||||
//
|
||||
- if( file->type() == CODEC_ID_WMAV1 ||
|
||||
- file->type() == CODEC_ID_WMAV2 ||
|
||||
- file->type() == CODEC_ID_AAC )
|
||||
+ if( file->type() == AV_CODEC_ID_WMAV1 ||
|
||||
+ file->type() == AV_CODEC_ID_WMAV2 ||
|
||||
+ file->type() == AV_CODEC_ID_AAC )
|
||||
#endif
|
||||
return file;
|
||||
}
|
||||
--
|
||||
2.0.5
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
Index: k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
|
||||
===================================================================
|
||||
--- plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp.orig 2013-04-22 17:46:13.523959500 +0200
|
||||
+++ plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp 2013-04-22 18:40:49.890007513 +0200
|
||||
@@ -95,7 +95,7 @@ bool K3bFFMpegFile::open()
|
||||
}
|
||||
|
||||
// analyze the streams
|
||||
- ::av_find_stream_info( d->formatContext );
|
||||
+ ::avformat_find_stream_info( d->formatContext, 0 );
|
||||
|
||||
// we only handle files containing one audio stream
|
||||
if( d->formatContext->nb_streams != 1 ) {
|
||||
@@ -129,7 +129,7 @@ bool K3bFFMpegFile::open()
|
||||
|
||||
// open the codec on our context
|
||||
kDebug() << "(K3bFFMpegFile) found codec for " << m_filename;
|
||||
- if( ::avcodec_open( codecContext, d->codec ) < 0 ) {
|
||||
+ if( ::avcodec_open2( codecContext, d->codec, 0 ) < 0 ) {
|
||||
kDebug() << "(K3bFFMpegDecoderFactory) could not open codec.";
|
||||
return false;
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
--- libk3b/core/k3bglobals.cpp.orig 2010-07-30 06:36:01.794731453 +0000
|
||||
+++ libk3b/core/k3bglobals.cpp 2010-07-30 06:37:34.104075238 +0000
|
||||
@@ -321,6 +321,13 @@
|
||||
--- libk3b/core/k3bglobals.cpp.orig 2014-11-04 18:37:31 UTC
|
||||
+++ libk3b/core/k3bglobals.cpp
|
||||
@@ -322,6 +322,13 @@ QString K3b::externalBinDeviceParameter(
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- libk3b/core/k3bglobals.h.orig 2010-07-30 06:40:13.000000000 +0200
|
||||
+++ libk3b/core/k3bglobals.h 2010-07-30 06:41:05.000000000 +0200
|
||||
@@ -230,6 +230,7 @@
|
||||
--- libk3b/core/k3bglobals.h.orig 2014-11-04 18:37:31 UTC
|
||||
+++ libk3b/core/k3bglobals.h
|
||||
@@ -231,6 +231,7 @@ namespace K3b {
|
||||
* Takes care of SCSI and ATAPI.
|
||||
*/
|
||||
LIBK3B_EXPORT QString externalBinDeviceParameter( Device::Device* dev, const ExternalBin* );
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- libk3b/projects/k3bcdrecordwriter.cpp.orig 2010-06-06 20:49:38.000000000 +0200
|
||||
+++ libk3b/projects/k3bcdrecordwriter.cpp 2010-07-30 06:43:53.000000000 +0200
|
||||
@@ -228,7 +228,11 @@
|
||||
--- libk3b/projects/k3bcdrecordwriter.cpp.orig 2014-11-04 18:37:31 UTC
|
||||
+++ libk3b/projects/k3bcdrecordwriter.cpp
|
||||
@@ -228,7 +228,11 @@ bool K3b::CdrecordWriter::prepareProcess
|
||||
d->process << "gracetime=2"; // 2 is the lowest allowed value (Joerg, why do you do this to us?)
|
||||
|
||||
// Again we assume the device to be set!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- ./libk3b/CMakeLists.txt.orig 2009-04-21 21:54:02.000000000 +0400
|
||||
+++ ./libk3b/CMakeLists.txt 2010-01-30 03:22:10.208943627 +0300
|
||||
@@ -230,12 +230,8 @@
|
||||
--- libk3b/CMakeLists.txt.orig 2014-11-04 18:37:31 UTC
|
||||
+++ libk3b/CMakeLists.txt
|
||||
@@ -230,12 +230,8 @@ target_link_libraries(k3b
|
||||
${KCDDB_LIBRARIES}
|
||||
${SAMPLERATE_LIBRARIES}
|
||||
k3bdevice
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- libk3bdevice/k3bdevice.cpp.orig 2010-06-06 15:32:49.000000000 +0200
|
||||
+++ libk3bdevice/k3bdevice.cpp 2010-07-30 06:44:02.000000000 +0200
|
||||
@@ -309,6 +309,12 @@
|
||||
--- libk3bdevice/k3bdevice.cpp.orig 2014-11-04 18:37:31 UTC
|
||||
+++ libk3bdevice/k3bdevice.cpp
|
||||
@@ -322,6 +322,12 @@ QString K3b::Device::Device::blockDevice
|
||||
}
|
||||
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
|||
int K3b::Device::Device::maxWriteSpeed() const
|
||||
{
|
||||
return d->maxWriteSpeed;
|
||||
@@ -363,6 +369,14 @@
|
||||
@@ -376,6 +382,14 @@ bool K3b::Device::Device::init( bool bCh
|
||||
if( !open() )
|
||||
return false;
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- libk3bdevice/k3bdevice.h.orig 2010-07-30 06:33:55.000000000 +0200
|
||||
+++ libk3bdevice/k3bdevice.h 2010-07-30 06:35:35.000000000 +0200
|
||||
@@ -222,6 +222,11 @@
|
||||
--- libk3bdevice/k3bdevice.h.orig 2014-11-04 18:37:31 UTC
|
||||
+++ libk3bdevice/k3bdevice.h
|
||||
@@ -222,6 +222,11 @@ namespace K3b {
|
||||
*/
|
||||
QString blockDeviceName() const;
|
||||
|
||||
|
|
|
@ -1,284 +0,0 @@
|
|||
diff --git a/libk3bdevice/k3bscsicommand_bsd.cpp b/libk3bdevice/k3bscsicommand_bsd.cpp
|
||||
index ce6508e..63a8fd5 100644
|
||||
--- ./libk3bdevice/k3bscsicommand_bsd.cpp
|
||||
+++ ./libk3bdevice/k3bscsicommand_bsd.cpp
|
||||
@@ -1,6 +1,7 @@
|
||||
/*
|
||||
*
|
||||
* Copyright (C) 2003-2009 Sebastian Trueg <trueg@k3b.org>
|
||||
+ * Copyright (C) 2011 Andriy Gapon <avg@FreeBSD.org>
|
||||
*
|
||||
* This file is part of the K3b project.
|
||||
* Copyright (C) 1998-2009 Sebastian Trueg <trueg@k3b.org>
|
||||
@@ -23,41 +24,43 @@
|
||||
#include <cam/scsi/scsi_message.h>
|
||||
#include <cam/scsi/scsi_pass.h>
|
||||
|
||||
-#define ERRCODE(s) ((((s)[2]&0x0F)<<16)|((s)[12]<<8)|((s)[13]))
|
||||
-#define EMEDIUMTYPE EINVAL
|
||||
-#define ENOMEDIUM ENODEV
|
||||
-#define CREAM_ON_ERRNO(s) do { \
|
||||
- switch ((s)[12]) \
|
||||
- { case 0x04: errno=EAGAIN; break; \
|
||||
- case 0x20: errno=ENODEV; break; \
|
||||
- case 0x21: if ((s)[13]==0) errno=ENOSPC; \
|
||||
- else errno=EINVAL; \
|
||||
- break; \
|
||||
- case 0x30: errno=EMEDIUMTYPE; break; \
|
||||
- case 0x3A: errno=ENOMEDIUM; break; \
|
||||
- } \
|
||||
- } while(0)
|
||||
-
|
||||
+namespace /*anonymous*/
|
||||
+{
|
||||
+ inline int sense_to_err( const struct scsi_sense_data& s )
|
||||
+ {
|
||||
+ int errorCode, senseKey, addSenseCode, addSenseCodeQual;
|
||||
+ scsi_extract_sense( (struct scsi_sense_data*) &s, &errorCode,
|
||||
+ &senseKey, &addSenseCode, &addSenseCodeQual );
|
||||
+ return (errorCode << 24) | (senseKey << 16) |
|
||||
+ (addSenseCode << 8) | addSenseCodeQual;
|
||||
+ }
|
||||
+}
|
||||
|
||||
|
||||
class K3b::Device::ScsiCommand::Private
|
||||
{
|
||||
+ typedef union ccb CCB;
|
||||
+
|
||||
public:
|
||||
- union ccb ccb;
|
||||
+ Private();
|
||||
+ int transport( const Device* device, TransportDirection dir, void* data, size_t len );
|
||||
+ unsigned char& operator[]( size_t i );
|
||||
+ void clear();
|
||||
+ const CCB& get_ccb() { return ccb; }
|
||||
+
|
||||
+private:
|
||||
+ CCB ccb;
|
||||
};
|
||||
|
||||
|
||||
void K3b::Device::ScsiCommand::clear()
|
||||
{
|
||||
- memset (&d->ccb,0,sizeof(ccb));
|
||||
+ d->clear();
|
||||
}
|
||||
|
||||
-
|
||||
unsigned char& K3b::Device::ScsiCommand::operator[]( size_t i )
|
||||
{
|
||||
- if( d->ccb.csio.cdb_len < i+1 )
|
||||
- d->ccb.csio.cdb_len = i+1;
|
||||
- return d->ccb.csio.cdb_io.cdb_bytes[i];
|
||||
+ return (*d)[i];
|
||||
}
|
||||
|
||||
int K3b::Device::ScsiCommand::transport( TransportDirection dir,
|
||||
@@ -78,130 +81,102 @@ int K3b::Device::ScsiCommand::transport( TransportDirection dir,
|
||||
m_device->usageUnlock();
|
||||
return -1;
|
||||
}
|
||||
- d->ccb.ccb_h.path_id = m_device->handle()->path_id;
|
||||
- d->ccb.ccb_h.target_id = m_device->handle()->target_id;
|
||||
- d->ccb.ccb_h.target_lun = m_device->handle()->target_lun;
|
||||
|
||||
- kDebug() << "(K3b::Device::ScsiCommand) transport command " << QString::number((int)d->ccb.csio.cdb_io.cdb_bytes[0], 16) << ", length: " << (int)d->ccb.csio.cdb_len;
|
||||
- int ret=0;
|
||||
- int direction = CAM_DEV_QFRZDIS;
|
||||
- if (!len)
|
||||
- direction |= CAM_DIR_NONE;
|
||||
- else
|
||||
- direction |= (dir & TR_DIR_READ)?CAM_DIR_IN : CAM_DIR_OUT;
|
||||
- cam_fill_csio (&(d->ccb.csio), 1, 0 /* NULL */, direction, MSG_SIMPLE_Q_TAG, (u_int8_t *)data, len, sizeof(d->ccb.csio.sense_data), d->ccb.csio.cdb_len, 30*1000);
|
||||
- unsigned char * sense = (unsigned char *)&d->ccb.csio.sense_data;
|
||||
+ int ret = d->transport( m_device, dir, data, len );
|
||||
+ if( ret != 0 ) {
|
||||
+ const struct scsi_sense_data& s = d->get_ccb().csio.sense_data;
|
||||
+ int errorCode, senseKey, addSenseCode, addSenseCodeQual;
|
||||
+ scsi_extract_sense( (struct scsi_sense_data*) &s, &errorCode, &senseKey,
|
||||
+ &addSenseCode, &addSenseCodeQual );
|
||||
+ debugError( d->get_ccb().csio.cdb_io.cdb_bytes[0],
|
||||
+ errorCode,
|
||||
+ senseKey,
|
||||
+ addSenseCode,
|
||||
+ addSenseCodeQual );
|
||||
+ }
|
||||
|
||||
- ret = cam_send_ccb(m_device->handle(), &d->ccb);
|
||||
+ if( needToClose )
|
||||
+ m_device->close();
|
||||
+ m_device->usageUnlock();
|
||||
|
||||
- if (ret < 0) {
|
||||
- kDebug() << "(K3b::Device::ScsiCommand) transport failed: " << ret;
|
||||
+ return ret;
|
||||
+}
|
||||
|
||||
- if( needToClose )
|
||||
- m_device->close();
|
||||
+K3b::Device::ScsiCommand::Private::Private()
|
||||
+{
|
||||
+ clear();
|
||||
+}
|
||||
|
||||
- m_device->usageUnlock();
|
||||
+void K3b::Device::ScsiCommand::Private::clear()
|
||||
+{
|
||||
+ memset( &ccb, 0, sizeof(ccb) );
|
||||
+}
|
||||
|
||||
- struct scsi_sense_data* senset = (struct scsi_sense_data*)sense;
|
||||
- debugError( d->ccb.csio.cdb_io.cdb_bytes[0],
|
||||
- senset->error_code & SSD_ERRCODE,
|
||||
- senset->flags & SSD_KEY,
|
||||
- senset->add_sense_code,
|
||||
- senset->add_sense_code_qual );
|
||||
+unsigned char& K3b::Device::ScsiCommand::Private::operator[]( size_t i )
|
||||
+{
|
||||
+ if( ccb.csio.cdb_len < i + 1 )
|
||||
+ ccb.csio.cdb_len = i + 1;
|
||||
+ return ccb.csio.cdb_io.cdb_bytes[i];
|
||||
+}
|
||||
|
||||
- int result = (((senset->error_code & SSD_ERRCODE)<<24) & 0xF000 |
|
||||
- ((senset->flags & SSD_KEY)<<16) & 0x0F00 |
|
||||
- (senset->add_sense_code<<8) & 0x00F0 |
|
||||
- (senset->add_sense_code_qual) & 0x000F );
|
||||
+int K3b::Device::ScsiCommand::Private::transport( const Device* device, TransportDirection dir, void* data, size_t len )
|
||||
+{
|
||||
+ ccb.ccb_h.path_id = device->handle()->path_id;
|
||||
+ ccb.ccb_h.target_id = device->handle()->target_id;
|
||||
+ ccb.ccb_h.target_lun = device->handle()->target_lun;
|
||||
|
||||
- return result ? result : ret;
|
||||
+ kDebug() << "(K3b::Device::ScsiCommand) transport command " << commandString(ccb.csio.cdb_io.cdb_bytes[0])
|
||||
+ << " (" << QString::number((int)ccb.csio.cdb_io.cdb_bytes[0], 16) << "), length: " << (int)ccb.csio.cdb_len;
|
||||
+ int direction = CAM_DEV_QFRZDIS;
|
||||
+ if (!len)
|
||||
+ direction |= CAM_DIR_NONE;
|
||||
+ else
|
||||
+ direction |= (dir & TR_DIR_READ) ? CAM_DIR_IN : CAM_DIR_OUT;
|
||||
+
|
||||
+ cam_fill_csio( &(ccb.csio), 1, NULL, direction, MSG_SIMPLE_Q_TAG, (uint8_t*)data, len, sizeof(ccb.csio.sense_data), ccb.csio.cdb_len, 30*1000 );
|
||||
+ int ret = cam_send_ccb( device->handle(), &ccb );
|
||||
+ if( ret < 0 ) {
|
||||
+ kError() << "(K3b::Device::ScsiCommand) transport cam_send_ccb failed: ret = " << ret
|
||||
+ << ", errno = " << errno << ", cam_errbuf = " << cam_errbuf;
|
||||
+ return 1;
|
||||
}
|
||||
-
|
||||
- else if ((d->ccb.ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP) {
|
||||
- if( needToClose )
|
||||
- m_device->close();
|
||||
- m_device->usageUnlock();
|
||||
+ else if( (ccb.ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP ) {
|
||||
+ kDebug() << "(K3b::Device::ScsiCommand) transport succeeded";
|
||||
return 0;
|
||||
}
|
||||
|
||||
- errno = EIO;
|
||||
- // FreeBSD 5-CURRENT since 2003-08-24, including 5.2 fails to
|
||||
- // pull sense data automatically, at least for ATAPI transport,
|
||||
- // so I reach for it myself...
|
||||
- if ((d->ccb.csio.scsi_status==SCSI_STATUS_CHECK_COND) &&
|
||||
- !(d->ccb.ccb_h.status&CAM_AUTOSNS_VALID))
|
||||
- {
|
||||
- u_int8_t _sense[18];
|
||||
- u_int32_t resid=d->ccb.csio.resid;
|
||||
-
|
||||
- memset(_sense,0,sizeof(_sense));
|
||||
+ kDebug() << "(K3b::Device::ScsiCommand) transport command failed: scsi_status = " << QString::number(ccb.csio.scsi_status, 16);
|
||||
|
||||
- operator[](0) = 0x03; // REQUEST SENSE
|
||||
- d->ccb.csio.cdb_io.cdb_bytes[4] = sizeof(_sense);
|
||||
- d->ccb.csio.cdb_len = 6;
|
||||
- d->ccb.csio.ccb_h.flags |= CAM_DIR_IN|CAM_DIS_AUTOSENSE;
|
||||
- d->ccb.csio.data_ptr = _sense;
|
||||
- d->ccb.csio.dxfer_len = sizeof(_sense);
|
||||
- d->ccb.csio.sense_len = 0;
|
||||
+ if( ccb.csio.scsi_status == SCSI_STATUS_CHECK_COND &&
|
||||
+ !(ccb.ccb_h.status & CAM_AUTOSNS_VALID) &&
|
||||
+ ccb.csio.cdb_io.cdb_bytes[0] != MMC_REQUEST_SENSE )
|
||||
+ {
|
||||
+ kDebug() << "(K3b::Device::ScsiCommand) transport requesting sense data";
|
||||
|
||||
- ret = cam_send_ccb(m_device->handle(), &d->ccb);
|
||||
+ struct scsi_sense_data sense;
|
||||
+ ScsiCommand::Private cmd;
|
||||
+ cmd[0] = MMC_REQUEST_SENSE;
|
||||
+ cmd[4] = SSD_MIN_SIZE;
|
||||
+ cmd[5] = 0; // Necessary to set the proper command length
|
||||
|
||||
- d->ccb.csio.resid = resid;
|
||||
- if (ret<0)
|
||||
- {
|
||||
- kDebug() << "(K3b::Device::ScsiCommand) transport failed (2): " << ret;
|
||||
- ret = -1;
|
||||
- struct scsi_sense_data* senset = (struct scsi_sense_data*)sense;
|
||||
- debugError( d->ccb.csio.cdb_io.cdb_bytes[0],
|
||||
- senset->error_code & SSD_ERRCODE,
|
||||
- senset->flags & SSD_KEY,
|
||||
- senset->add_sense_code,
|
||||
- senset->add_sense_code_qual );
|
||||
-
|
||||
- if( needToClose )
|
||||
- m_device->close();
|
||||
- m_device->usageUnlock();
|
||||
-
|
||||
- return -1;
|
||||
- }
|
||||
- if ((d->ccb.ccb_h.status&CAM_STATUS_MASK) != CAM_REQ_CMP)
|
||||
+ memset( &sense, 0, sizeof(sense) );
|
||||
+ ret = cmd.transport( device, TR_DIR_READ, &sense, SSD_MIN_SIZE );
|
||||
+ if( ret < 0 )
|
||||
{
|
||||
- kDebug() << "(K3b::Device::ScsiCommand) transport failed (3): " << ret;
|
||||
- errno=EIO,-1;
|
||||
- ret = -1;
|
||||
- struct scsi_sense_data* senset = (struct scsi_sense_data*)sense;
|
||||
- debugError( d->ccb.csio.cdb_io.cdb_bytes[0],
|
||||
- senset->error_code & SSD_ERRCODE,
|
||||
- senset->flags & SSD_KEY,
|
||||
- senset->add_sense_code,
|
||||
- senset->add_sense_code_qual );
|
||||
-
|
||||
- if( needToClose )
|
||||
- m_device->close();
|
||||
- m_device->usageUnlock();
|
||||
-
|
||||
- return -1;
|
||||
+ kWarning() << "(K3b::Device::ScsiCommand) transport getting sense data failed: " << ret;
|
||||
+ return 1;
|
||||
}
|
||||
|
||||
- memcpy(sense,_sense,sizeof(_sense));
|
||||
+ ccb.csio.sense_data = sense;
|
||||
+ ccb.ccb_h.status |= CAM_AUTOSNS_VALID;
|
||||
}
|
||||
|
||||
- ret = ERRCODE(sense);
|
||||
- kDebug() << "(K3b::Device::ScsiCommand) transport failed (4): " << ret;
|
||||
- if (ret == 0)
|
||||
- ret = -1;
|
||||
- else
|
||||
- CREAM_ON_ERRNO(((unsigned char *)&d->ccb.csio.sense_data));
|
||||
- struct scsi_sense_data* senset = (struct scsi_sense_data*)sense;
|
||||
- debugError( d->ccb.csio.cdb_io.cdb_bytes[0],
|
||||
- senset->error_code & SSD_ERRCODE,
|
||||
- senset->flags & SSD_KEY,
|
||||
- senset->add_sense_code,
|
||||
- senset->add_sense_code_qual );
|
||||
-
|
||||
- if( needToClose )
|
||||
- m_device->close();
|
||||
- m_device->usageUnlock();
|
||||
+ if( !(ccb.ccb_h.status & CAM_AUTOSNS_VALID) )
|
||||
+ kDebug() << "(K3b::Device::ScsiCommand) sense data is not available";
|
||||
|
||||
+ ret = sense_to_err(ccb.csio.sense_data);
|
||||
+ if( ret == 0 )
|
||||
+ ret = 1;
|
||||
+ kDebug() << "(K3b::Device::ScsiCommand) transport failed: " << ret;
|
||||
return ret;
|
||||
}
|
|
@ -1,10 +1,10 @@
|
|||
--- ./libk3bdevice/CMakeLists.txt.orig 2009-04-06 14:13:39.000000000 -0400
|
||||
+++ ./libk3bdevice/CMakeLists.txt 2009-10-19 10:55:39.000000000 -0400
|
||||
@@ -27,6 +27,7 @@
|
||||
--- libk3bdevice/CMakeLists.txt.orig 2014-11-04 18:37:31 UTC
|
||||
+++ libk3bdevice/CMakeLists.txt
|
||||
@@ -27,6 +27,7 @@ kde4_add_library(k3bdevice SHARED ${k3bd
|
||||
target_link_libraries(k3bdevice
|
||||
${KDE4_KDECORE_LIBS}
|
||||
${KDE4_SOLID_LIBS}
|
||||
+ cam
|
||||
)
|
||||
|
||||
set_target_properties(k3bdevice PROPERTIES VERSION ${K3B_LIB_VERSION_MAJOR}.${K3B_LIB_VERSION_MINOR}.${K3B_LIB_VERSION_RELEASE} SOVERSION ${K3B_LIB_VERSION_MAJOR})
|
||||
if (CMAKE_SYSTEM_NAME MATCHES "kFreeBSD")
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- ./plugins/encoder/lame/CMakeLists.txt.orig 2008-08-28 10:41:55.000000000 -0400
|
||||
+++ ./plugins/encoder/lame/CMakeLists.txt 2009-10-19 10:55:39.000000000 -0400
|
||||
@@ -26,7 +26,7 @@
|
||||
--- plugins/encoder/lame/CMakeLists.txt.orig 2014-11-04 18:37:31 UTC
|
||||
+++ plugins/encoder/lame/CMakeLists.txt
|
||||
@@ -26,7 +26,7 @@ kde4_add_plugin(k3blameencoder
|
||||
target_link_libraries(k3blameencoder
|
||||
${KDE4_KDECORE_LIBS}
|
||||
k3b k3bdevice
|
||||
|
|
|
@ -299,6 +299,18 @@ share/apps/solid/actions/k3b_copy_disc.desktop
|
|||
share/apps/solid/actions/k3b_create_audio_cd_from_blank_medium.desktop
|
||||
share/apps/solid/actions/k3b_create_data_project_from_blank_medium.desktop
|
||||
%%LIBDVDREAD%%share/apps/solid/actions/k3b_videodvd_rip.desktop
|
||||
share/doc/HTML/ca/k3b/K3bAddButton.png
|
||||
share/doc/HTML/ca/k3b/K3bAdvancedSettings.png
|
||||
share/doc/HTML/ca/k3b/K3bDiskChoice.png
|
||||
share/doc/HTML/ca/k3b/K3bMoreActions.png
|
||||
share/doc/HTML/ca/k3b/K3bSetVerify.png
|
||||
share/doc/HTML/ca/k3b/K3bsetup.png
|
||||
share/doc/HTML/ca/k3b/common
|
||||
share/doc/HTML/ca/k3b/index.cache.bz2
|
||||
share/doc/HTML/ca/k3b/index.docbook
|
||||
share/doc/HTML/de/k3b/common
|
||||
share/doc/HTML/de/k3b/index.cache.bz2
|
||||
share/doc/HTML/de/k3b/index.docbook
|
||||
share/doc/HTML/en/k3b/K3bAddButton.png
|
||||
share/doc/HTML/en/k3b/K3bAdvancedSettings.png
|
||||
share/doc/HTML/en/k3b/K3bDiskChoice.png
|
||||
|
@ -308,6 +320,42 @@ share/doc/HTML/en/k3b/K3bsetup.png
|
|||
share/doc/HTML/en/k3b/common
|
||||
share/doc/HTML/en/k3b/index.cache.bz2
|
||||
share/doc/HTML/en/k3b/index.docbook
|
||||
share/doc/HTML/es/k3b/common
|
||||
share/doc/HTML/es/k3b/index.cache.bz2
|
||||
share/doc/HTML/es/k3b/index.docbook
|
||||
share/doc/HTML/et/k3b/common
|
||||
share/doc/HTML/et/k3b/index.cache.bz2
|
||||
share/doc/HTML/et/k3b/index.docbook
|
||||
share/doc/HTML/fr/k3b/K3bAddButton.png
|
||||
share/doc/HTML/fr/k3b/K3bAdvancedSettings.png
|
||||
share/doc/HTML/fr/k3b/K3bDiskChoice.png
|
||||
share/doc/HTML/fr/k3b/K3bMoreActions.png
|
||||
share/doc/HTML/fr/k3b/K3bsetup.png
|
||||
share/doc/HTML/fr/k3b/common
|
||||
share/doc/HTML/fr/k3b/index.cache.bz2
|
||||
share/doc/HTML/fr/k3b/index.docbook
|
||||
share/doc/HTML/fr/k3b/k3bSetVerify.png
|
||||
share/doc/HTML/it/k3b/common
|
||||
share/doc/HTML/it/k3b/index.cache.bz2
|
||||
share/doc/HTML/it/k3b/index.docbook
|
||||
share/doc/HTML/nl/k3b/common
|
||||
share/doc/HTML/nl/k3b/index.cache.bz2
|
||||
share/doc/HTML/nl/k3b/index.docbook
|
||||
share/doc/HTML/pt/k3b/common
|
||||
share/doc/HTML/pt/k3b/index.cache.bz2
|
||||
share/doc/HTML/pt/k3b/index.docbook
|
||||
share/doc/HTML/pt_BR/k3b/common
|
||||
share/doc/HTML/pt_BR/k3b/index.cache.bz2
|
||||
share/doc/HTML/pt_BR/k3b/index.docbook
|
||||
share/doc/HTML/uk/k3b/K3bAddButton.png
|
||||
share/doc/HTML/uk/k3b/K3bAdvancedSettings.png
|
||||
share/doc/HTML/uk/k3b/K3bDiskChoice.png
|
||||
share/doc/HTML/uk/k3b/K3bMoreActions.png
|
||||
share/doc/HTML/uk/k3b/K3bSetVerify.png
|
||||
share/doc/HTML/uk/k3b/K3bsetup.png
|
||||
share/doc/HTML/uk/k3b/common
|
||||
share/doc/HTML/uk/k3b/index.cache.bz2
|
||||
share/doc/HTML/uk/k3b/index.docbook
|
||||
share/icons/hicolor/128x128/apps/k3b.png
|
||||
share/icons/hicolor/16x16/apps/k3b.png
|
||||
share/icons/hicolor/22x22/apps/k3b.png
|
||||
|
@ -352,6 +400,11 @@ share/locale/bg/LC_MESSAGES/k3b.mo
|
|||
share/locale/bg/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/bg/LC_MESSAGES/libk3b.mo
|
||||
share/locale/bg/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/bs/LC_MESSAGES/k3b.mo
|
||||
share/locale/bs/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/bs/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/bs/LC_MESSAGES/libk3b.mo
|
||||
share/locale/bs/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/ca/LC_MESSAGES/k3b.mo
|
||||
share/locale/ca/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/ca/LC_MESSAGES/kio_videodvd.mo
|
||||
|
@ -381,6 +434,7 @@ share/locale/de/LC_MESSAGES/libk3b.mo
|
|||
share/locale/de/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/el/LC_MESSAGES/k3b.mo
|
||||
share/locale/el/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/el/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/el/LC_MESSAGES/libk3b.mo
|
||||
share/locale/el/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/en_GB/LC_MESSAGES/k3b.mo
|
||||
|
@ -408,10 +462,12 @@ share/locale/eu/LC_MESSAGES/libk3b.mo
|
|||
share/locale/eu/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/fi/LC_MESSAGES/k3b.mo
|
||||
share/locale/fi/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/fi/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/fi/LC_MESSAGES/libk3b.mo
|
||||
share/locale/fi/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/fr/LC_MESSAGES/k3b.mo
|
||||
share/locale/fr/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/fr/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/fr/LC_MESSAGES/libk3b.mo
|
||||
share/locale/fr/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/ga/LC_MESSAGES/k3b.mo
|
||||
|
@ -421,6 +477,7 @@ share/locale/ga/LC_MESSAGES/libk3b.mo
|
|||
share/locale/ga/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/gl/LC_MESSAGES/k3b.mo
|
||||
share/locale/gl/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/gl/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/gl/LC_MESSAGES/libk3b.mo
|
||||
share/locale/gl/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/he/LC_MESSAGES/k3b.mo
|
||||
|
@ -452,6 +509,7 @@ share/locale/is/LC_MESSAGES/libk3b.mo
|
|||
share/locale/is/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/it/LC_MESSAGES/k3b.mo
|
||||
share/locale/it/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/it/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/it/LC_MESSAGES/libk3b.mo
|
||||
share/locale/it/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/ja/LC_MESSAGES/k3b.mo
|
||||
|
@ -459,12 +517,19 @@ share/locale/ja/LC_MESSAGES/k3bsetup.mo
|
|||
share/locale/ja/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/ja/LC_MESSAGES/libk3b.mo
|
||||
share/locale/ja/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/kk/LC_MESSAGES/k3b.mo
|
||||
share/locale/kk/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/kk/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/kk/LC_MESSAGES/libk3b.mo
|
||||
share/locale/kk/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/km/LC_MESSAGES/k3b.mo
|
||||
share/locale/km/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/km/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/km/LC_MESSAGES/libk3b.mo
|
||||
share/locale/km/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/ko/LC_MESSAGES/k3b.mo
|
||||
share/locale/ko/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/ko/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/ko/LC_MESSAGES/libk3b.mo
|
||||
share/locale/ko/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/ku/LC_MESSAGES/k3b.mo
|
||||
|
@ -473,11 +538,17 @@ share/locale/lt/LC_MESSAGES/k3bsetup.mo
|
|||
share/locale/lt/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/lt/LC_MESSAGES/libk3b.mo
|
||||
share/locale/lt/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/lv/LC_MESSAGES/k3b.mo
|
||||
share/locale/lv/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/lv/LC_MESSAGES/libk3b.mo
|
||||
share/locale/lv/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/mai/LC_MESSAGES/k3b.mo
|
||||
share/locale/mai/LC_MESSAGES/libk3b.mo
|
||||
share/locale/mr/LC_MESSAGES/k3b.mo
|
||||
share/locale/mr/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/mr/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/mr/LC_MESSAGES/libk3b.mo
|
||||
share/locale/mr/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/ms/LC_MESSAGES/k3b.mo
|
||||
share/locale/ms/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/ms/LC_MESSAGES/kio_videodvd.mo
|
||||
|
@ -513,6 +584,7 @@ share/locale/pa/LC_MESSAGES/libk3b.mo
|
|||
share/locale/pa/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/pl/LC_MESSAGES/k3b.mo
|
||||
share/locale/pl/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/pl/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/pl/LC_MESSAGES/libk3b.mo
|
||||
share/locale/pl/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/pt/LC_MESSAGES/k3b.mo
|
||||
|
@ -527,6 +599,7 @@ share/locale/pt_BR/LC_MESSAGES/libk3b.mo
|
|||
share/locale/pt_BR/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/ro/LC_MESSAGES/k3b.mo
|
||||
share/locale/ro/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/ro/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/ro/LC_MESSAGES/libk3b.mo
|
||||
share/locale/ro/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/ru/LC_MESSAGES/k3b.mo
|
||||
|
@ -545,6 +618,7 @@ share/locale/sk/LC_MESSAGES/libk3b.mo
|
|||
share/locale/sk/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/sl/LC_MESSAGES/k3b.mo
|
||||
share/locale/sl/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/sl/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/sl/LC_MESSAGES/libk3b.mo
|
||||
share/locale/sl/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/sr/LC_MESSAGES/k3b.mo
|
||||
|
@ -581,6 +655,11 @@ share/locale/tr/LC_MESSAGES/k3bsetup.mo
|
|||
share/locale/tr/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/tr/LC_MESSAGES/libk3b.mo
|
||||
share/locale/tr/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/ug/LC_MESSAGES/k3b.mo
|
||||
share/locale/ug/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/ug/LC_MESSAGES/kio_videodvd.mo
|
||||
share/locale/ug/LC_MESSAGES/libk3b.mo
|
||||
share/locale/ug/LC_MESSAGES/libk3bdevice.mo
|
||||
share/locale/uk/LC_MESSAGES/k3b.mo
|
||||
share/locale/uk/LC_MESSAGES/k3bsetup.mo
|
||||
share/locale/uk/LC_MESSAGES/kio_videodvd.mo
|
||||
|
|
Loading…
Reference in a new issue