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.

Improvement in audio on DaVinci PSP 03.01 GA Release(Build r37) , decreases performance on video in DM365EVM

I am using the Davinci PSP 03.01 GA Release, I noticed that some changes were done on the audio driver. Using gstreamer audio pipelines and comparing them with previous psp revision, the audio has improved. However, when trying to reproduce both audio and video together, the video performance decreased. Could it be possible that some changes related with dma  affects? or why this could be happening?

Regards,

Maria

 

  • Maria,

    I assume you are using DM365? Yes there was an audio data EDMA queue change between before the GA which could have affected you:

    http://arago-project.org/git/projects/?p=linux-davinci.git;a=commit;h=9d7571fc0e687b8233cf5045b78bc78367564328

    The queue number was changed from EDMAQ_0 to EDMAQ_3 to protect audio quality against large video transfers going on on EDMAQ_0. If in your system EDMAQ_3 was being used for video transfers, having audio on the same queue could have affected video (though it is tough to imagine audio data causing a change in video performance).

    Are you able to reproduce the issue on the EVM? If not, can you re-look at the EDMAQ assignments in your system and try to match with the assignment used in DVSDK?

    Thanks,
    Sekhar

     

  • Nori,

    Could you explain the EDMAQ_0 usage that you are talking about?

    If we have a system that has the default queue set to EVENTQ_2 (mach-davinci/dm365.c) and uses DVSDK/DMAI Framecopy_Accel (which uses default queue) for the video frame copies, is this ok?  I am assuming that you are referring to the DVSDK codecs' use of EVENTQ_0 which is built in and that the video frame copies on EVENTQ_2 is acceptable.

    Steve

  • Steve,

    DMAI framecopy module uses dm365mm kernel module for its dma data transfer and i believe this kernel module is requesting DEFAULT_EVENTQ (see dm365mm-module_xx_xx/module/dm365mmap.c).  Either you can change your kernel to default to EVENTQ_2 or you can change dm365mmap module from DEFAULT to EVENTQ_2 to see if it helps.

    And as per Gstreamer is concerned, we are looking at zero copy implemention to avoid using HW accelerated framecopy (if possible). In process of that we have already implemented user allocated buffer in TIDmaiVideoSink and now taking a closer look at how to do peer allocation to avoid any copies.  For gstreamer plugin question, please ask on gstreamer.ti.com fourms.

    Thanks

    Brijesh