4#ifndef QFFMPEGFRAME_P_H
5#define QFFMPEGFRAME_P_H
21#include "QtCore/qsharedpointer.h"
39 if (
frame->pts != AV_NOPTS_VALUE)
47 const auto &avgFrameRate =
codec.stream()->avg_frame_rate;
48 duration =
mul(
qint64(1000000), { avgFrameRate.den, avgFrameRate.num }).value_or(0);
\macro QT_RESTRICTED_CAST_FROM_ASCII
int64_t getAVFrameDuration(const AVFrame &frame)
std::unique_ptr< AVFrame, AVDeleter< decltype(&av_frame_free), &av_frame_free > > AVFrameUPtr
std::optional< qint64 > mul(qint64 a, AVRational b)
Combined button and popup list for selecting options.
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
GLenum GLuint GLintptr offset
unsigned long long quint64
Data(const LoopOffset &offset, const QString &text, qint64 pts, qint64 duration, quint64 sourceId)
std::optional< Codec > codec
Data(const LoopOffset &offset, AVFrameUPtr f, const Codec &codec, qint64, quint64 sourceId)
AVFrameUPtr takeAVFrame()
qint64 absolutePts() const
const LoopOffset & loopOffset() const
AVFrame * avFrame() const
Frame(const LoopOffset &offset, AVFrameUPtr f, const Codec &codec, qint64 pts, quint64 sourceIndex)
const Codec * codec() const
qint64 absoluteEnd() const
Frame(const LoopOffset &offset, const QString &text, qint64 pts, qint64 duration, quint64 sourceIndex)