Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] FFmpeg 6 #535

Closed
wants to merge 1 commit into from
Closed

[WIP] FFmpeg 6 #535

wants to merge 1 commit into from

Conversation

1div0
Copy link

@1div0 1div0 commented Aug 23, 2023

Various changes in order to be able run with the latest and greatest FFmpeg.

Please review, comment, criticize.

Thank you so much for the cool tool.

qmake6 -spec linux-clang CONFIG+=debug

int width;
int height;
AVRational sample_aspect_ratio;
AVRational framerate;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see this framerate setting being added in the 6.0 interface.

Comment on lines +214 to +216
int64_t start_time_realtime;
int fps_probe_size;
int error_recognition;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why add these 3 values to the struct? They are not used anywhere in the code ...

{
auto p = reinterpret_cast<AVFrameSideData_59 *>(sideData);
auto p = reinterpret_cast<AVFrameSideData_57_58 *>(sideData);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice. Thx for catching this.

Comment on lines +116 to +132
typedef struct AVPacket_60
{
AVBufferRef * buf;
int64_t pts;
int64_t dts;
uint8_t * data;
int size;
int stream_index;
int flags;
AVPacketSideData *side_data;
int side_data_elems;
int64_t duration;
int64_t pos;
void * opaque;
AVBufferRef * opaque_ref;
AVRational time_base;
} AVPacket_60;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But nothing about the struct changed ...

// reserved_message
throw std::logic_error("Not implemented yet");
}
// throw std::logic_error("Not implemented yet");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this change in this class needed? Does not look related to ffmpeg 6 support.

@@ -261,14 +261,14 @@ playlistItemCompressedVideo::playlistItemCompressedVideo(const QString &compress
return;
}
if (this->rawFormat == video::RawFormat::Invalid ||
(this->rawFormat == video::RawFormat::YUV && !formatYuv.isValid()) ||
/* (this->rawFormat == video::RawFormat::YUV && !formatYuv.isValid()) || */
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why?

@@ -247,7 +247,7 @@ bool PixelFormatYUV::isValid() const
if (!planar)
{
// Check the packing mode
if ((this->packingOrder == PackingOrder::YUV || this->packingOrder == PackingOrder::YVU ||
if ((/* this->packingOrder == PackingOrder::YUV || this->packingOrder == PackingOrder::YVU || */
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why?

@ChristianFeldmann
Copy link
Member

Merged support for ffmpeg 6 in the linked PR.

@1div0
Copy link
Author

1div0 commented Sep 4, 2023

Vielen Dank.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants