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

Memory leak in GStreamer Camerabinsession

    XMLWordPrintable

Details

    • Linux/Yocto
    • 466a4f29c2 (qt/tqtc-qtmultimedia/5.15-opensource)

    Description

      It is observed on Imx6 board, that during the lifecycle of a Camera qml item, without changing the deviceId property, CameraBinSession::setDevice is called after buildCameraSource() and is setting a different device, buildCameraSource will then get called again, which results in the leaking of m_videoSrc and m_cameraSrc object. The first time the camera source is built using the default device in availableCameras, the second time the camera source is built using the actual deviceId property set in the Camera qml item. A tentative fix has been made to counter the observed memory leak

      1) is it anticipated that another device could be set after buildCameraSource and trigger buildCameraSource one more time by any allowed operation on Camera item during its lifecycle ? In this case, similar fix of recycling the m_videoSrc and m_cameraSrc objects seems to be necessary. Another question is, if the tentative fix has done enough work to recycling all the resources allocated at this stage.

      2) if the second call to buildCameraSource is not anticipated ( please note that it happened without changing deviceId after Camera qml item has been loaded ), there should be some logic between QCamera and CameraBinSession that caused this misbehavior

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            laknoll Lars Knoll
            yifei Yi Fei (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes