This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/AM5728: VPE dynamic change of resize resolution

Part Number: AM5728

Tool/software: Linux

Hi,

I am using VPE to do resize and chroma conversion (from 422ILE to 420SP) using PSDK_2_00_00_00 on AM57x. For one use case, I need to dynamically change the VPE output resolution from W1xH to W2xH  (W1 > W2) seamlessly. I followed below steps in order to enable this

1.  Put both CAPTURE and OUTPUT planes in STREAM_OFF state

2. Do VIDIOC_G_FMT on CAPTURE plane (VPE output)

3. Change only the following parameters with respect to change in width (from W1 to W2)

fmt.pix_mp.width = W2

fmt.pix_mp.plane_fmt[0].bytesperline = W2

fmt.pix_mp.plane_fmt[1].bytesperline = W2

4. Do “VIDIOC_S_FMT” on CAPTURE Plane

5. Put both CAPTURE and OUTPUT planes in STREAM_ON state

Note: As W2 < W1, I am using the same buffers as allocated w.r.t. W1

When I run my application following the above steps, I see "Device or resource busy" error at Step 4.

Please let me know if such a use case can be realized using VPE (changing the resolution dynamically seamlessly using the same buffers).  If yes, let me know if I am missing something with respect to the steps mentioned.

 

Regards,

Mahender

  • Hi Mahi,

    Processor SDK 2.0 is quite old version. This is no longer supported. Can you migrate to latest processor SDK version 5.0 or prior version 4.3, try your use case and share the observation ?

    Regards,
    Manisha
  • H Manisha,

    Thanks for your response

    We can try with the latest PSDK. But are there any major updates or bug fixes w.r.t VPE

    Also would you let us know if the steps (1-5) followed are proper? or any thing further needs to be done
  • Hi Mahi,

    You will need to free the buffer and re-allocate it again. This is a requirement by V4L2 VIDIOC_S_FMT IOCTL.

    Please check the Processor SDK release notes document to get the list of bug fixes and updates for all software components from Processor SDK. For driver related fixes, please check the git logs of kernel repository from Processor SDK for that particular driver.

    We do not support 2.x processor SDK version anymore. Processor SDK support is for 2 release versions (latest version and a version before).