aboutsummaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2018-08-04 22:28:16 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2018-08-04 22:28:16 +0000
commit4444443a14035245134da531c06f4aa179446354 (patch)
tree302eea695be538ba649dfbd35341da512d018625 /src/plugins
parent1ea609bbe5a5e83168ba77379439eaf1dc4ef475 (diff)
downloadqmmp-4444443a14035245134da531c06f4aa179446354.tar.gz
qmmp-4444443a14035245134da531c06f4aa179446354.tar.bz2
qmmp-4444443a14035245134da531c06f4aa179446354.zip
ffmpeg: recent api support
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@8227 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/Input/Input.pro2
-rw-r--r--src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp5
-rw-r--r--src/plugins/Input/ffmpeg/decoderffmpegfactory.h2
-rw-r--r--src/plugins/Input/ffmpeg/ffmpegmetadatamodel.cpp30
-rw-r--r--src/plugins/Input/ffmpeg/ffmpegmetadatamodel.h3
5 files changed, 8 insertions, 34 deletions
diff --git a/src/plugins/Input/Input.pro b/src/plugins/Input/Input.pro
index c05586521..92449114e 100644
--- a/src/plugins/Input/Input.pro
+++ b/src/plugins/Input/Input.pro
@@ -20,7 +20,7 @@ contains(CONFIG, MODPLUG_PLUGIN){
}
contains(CONFIG, FFMPEG_PLUGIN){
-# SUBDIRS += ffmpeg
+ SUBDIRS += ffmpeg
}
contains(CONFIG, GME_PLUGIN){
diff --git a/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp b/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp
index c14dfb604..b40a558c8 100644
--- a/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp
+++ b/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp
@@ -237,9 +237,10 @@ QList<TrackInfo *> DecoderFFmpegFactory::createPlayList(const QString &path, Tra
return QList<TrackInfo*>() << info;
}
-MetaDataModel* DecoderFFmpegFactory::createMetaDataModel(const QString &path, QObject *parent)
+MetaDataModel* DecoderFFmpegFactory::createMetaDataModel(const QString &path, bool readOnly, QObject *parent)
{
- return new FFmpegMetaDataModel(path,parent);
+ Q_UNUSED(readOnly);
+ return new FFmpegMetaDataModel(path, parent);
}
void DecoderFFmpegFactory::showSettings(QWidget *parent)
diff --git a/src/plugins/Input/ffmpeg/decoderffmpegfactory.h b/src/plugins/Input/ffmpeg/decoderffmpegfactory.h
index 559fa1b4b..605e26725 100644
--- a/src/plugins/Input/ffmpeg/decoderffmpegfactory.h
+++ b/src/plugins/Input/ffmpeg/decoderffmpegfactory.h
@@ -35,7 +35,7 @@ public:
DecoderProperties properties() const;
Decoder *create(const QString &, QIODevice *);
QList<TrackInfo *> createPlayList(const QString &path, TrackInfo::Parts parts, QStringList *);
- MetaDataModel* createMetaDataModel(const QString &path, QObject *parent = 0);
+ MetaDataModel* createMetaDataModel(const QString &path, bool readOnly = true, QObject *parent = 0);
void showSettings(QWidget *parent);
void showAbout(QWidget *parent);
QString translation() const;
diff --git a/src/plugins/Input/ffmpeg/ffmpegmetadatamodel.cpp b/src/plugins/Input/ffmpeg/ffmpegmetadatamodel.cpp
index adef44a30..14feeaf03 100644
--- a/src/plugins/Input/ffmpeg/ffmpegmetadatamodel.cpp
+++ b/src/plugins/Input/ffmpeg/ffmpegmetadatamodel.cpp
@@ -21,7 +21,7 @@
#include <stdint.h>
#include "ffmpegmetadatamodel.h"
-FFmpegMetaDataModel::FFmpegMetaDataModel(const QString &path, QObject *parent) : MetaDataModel(parent)
+FFmpegMetaDataModel::FFmpegMetaDataModel(const QString &path, QObject *parent) : MetaDataModel(true, parent)
{
m_in = 0;
#ifdef Q_OS_WIN
@@ -40,33 +40,7 @@ FFmpegMetaDataModel::~FFmpegMetaDataModel()
avformat_close_input(&m_in);
}
-QHash<QString, QString> FFmpegMetaDataModel::audioProperties()
-{
- QHash<QString, QString> ap;
- if(!m_in)
- return ap;
- QString text = QString("%1").arg(int(m_in->duration/AV_TIME_BASE)/60);
- text +=":"+QString("%1").arg(int(m_in->duration/AV_TIME_BASE)%60,2,10,QChar('0'));
- ap.insert(tr("Length"), text);
- ap.insert(tr("File size"), tr("%1 KB").arg(avio_size(m_in->pb) / 1000));
- ap.insert(tr("Bitrate"), tr("%1 kbps").arg(m_in->bit_rate/1000));
-
- int idx = av_find_best_stream(m_in, AVMEDIA_TYPE_AUDIO, -1, -1, 0, 0);
-
- if(idx >= 0)
- {
-#if (LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57,48,0)) //ffmpeg-3.1: 57.48.101
- AVCodecParameters *c = m_in->streams[idx]->codecpar;
-#else
- AVCodecContext *c = m_in->streams[idx]->codec;
-#endif
- ap.insert(tr("Sample rate"), tr("%1 Hz").arg(c->sample_rate));
- ap.insert(tr("Channels"), QString("%1").arg(c->channels));
- }
- return ap;
-}
-
-QPixmap FFmpegMetaDataModel::cover()
+QPixmap FFmpegMetaDataModel::cover() const
{
if(!m_in)
return QPixmap();
diff --git a/src/plugins/Input/ffmpeg/ffmpegmetadatamodel.h b/src/plugins/Input/ffmpeg/ffmpegmetadatamodel.h
index 79ebafdc3..e22acee1c 100644
--- a/src/plugins/Input/ffmpeg/ffmpegmetadatamodel.h
+++ b/src/plugins/Input/ffmpeg/ffmpegmetadatamodel.h
@@ -37,8 +37,7 @@ Q_OBJECT
public:
FFmpegMetaDataModel(const QString &path, QObject *parent);
~FFmpegMetaDataModel();
- QHash<QString, QString> audioProperties();
- QPixmap cover();
+ QPixmap cover() const override;
private:
AVFormatContext *m_in;