aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Input/ffmpeg
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/Input/ffmpeg')
-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
4 files changed, 7 insertions, 33 deletions
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;