sdk icon indicating copy to clipboard operation
sdk copied to clipboard

Build failure with ffmpeg 4.4

Open pastalian opened this issue 3 years ago • 3 comments

Since ffmpeg 4.4, AVStream.skip_to_keyframe is no longer public. From the comments, it seems that it should not have been used in the first place.

See: https://github.com/FFmpeg/FFmpeg/commit/108864acee1d7b0cde653cee113f3001f1b8915a

log

mega/src/gfx/qt.cpp:1212:18: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘skip_to_keyframe’
 1212 |     videoStream->skip_to_keyframe = true;

pastalian avatar May 04 '21 04:05 pastalian

This field is now in AVStreamInternal which is an opaque pointer, internal, inside the AVStream struct.

Lucretia avatar Jul 10 '21 14:07 Lucretia

This is still a fatal error. MEGAcmd doesn't build with ffmpeg 4.4 because of this line in src/gfx/freeimage.cpp. Is there a fix, aside from just commenting out the offending line?

detetiveselvagem avatar Sep 10 '21 09:09 detetiveselvagem

Hi all. I stumbled across this issue on the 3.9.12 tag build on Arch Linux.

A temporary workaround, if applicable to your case, is to launch the configuration step as ./configure --without-freeimage as depicted in the readme

Sure, you'll lose those features, but at least it compiles and run

lorefx avatar Jan 13 '22 08:01 lorefx