Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-111900

FFMPEG library incompatibility on desktop builds

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P1: Critical P1: Critical
    • 6.5.1, 6.6.0
    • 6.5.0
    • Multimedia
    • None
    • Linux/X11
    • d4a1ab3fc (dev), 1845e6dd9 (6.5)

      Make sure you have the development headers of your distro installed (apt install libavdevice-dev). Init a brand new checkout of a Qt build configuration including qtmultimedia. The configuration will configure your local ffmpeg libraries into the build. In this case, the build will fail with:

      error: ‘struct AVFrame’ has no member named ‘time_base’

      This new field was introduced into FFMPEG in https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/b236ef0a594e20038b4045e2fecd414f1886d212 which appeared in version 5.0. However, Ubuntu and Debian has 4.4 and 4.5 versions of this lib, so qtmultimedia fails the build.

      The qtmultimedia commit breaking the build is https://codereview.qt-project.org/gitweb?p=qt/qtmultimedia.git;a=commit;h=fa6c59824d7a2c3dcc80c812b85db398e74dc7e3 which implicitly bumped the required version of FFMPEG. Before this commit, qtmultimedia was compiling with FFMPEG 4.4.

      It would be good to at least use a find_package call which specifies a minimal FFMPEG version, so if the user has older locally, the library is not configured to be used at all.

        For Gerrit Dashboard: QTBUG-111900
        # Subject Branch Project Status CR V

            laknoll Lars Knoll
            zogera Zoltán Gera
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes