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.

Questions about swMs setting in RDK 01.06.00.11

Hi everyone,

    I have questions about swMs:

1. Can five swMs run concurrently?

2. The swMs setting is as below:

    swMsId[0]  = SYSTEM_LINK_ID_SW_MS_MULTI_INST_0;
    swMsPrm[0].numSwMsInst = 1;
    swMsPrm[0].swMsInstId[0] = SYSTEM_SW_MS_SC_INST_SC5;

Can we change  swMsPrm[0].numSwMsInst = 2 then do two swMs function? And how to set the relative parameters?

Sincerely,

James

  • answer is as below:

    1. in theory, 5 swms can run concurrently, but we never use it that way.

    2. please try following in latest release.

        swMsPrm[0].swMsInstId[0]        = SYSTEM_SW_MS_SC_INST_VIP1_SC;
        swMsPrm[0].swMsInstId[1]        = SYSTEM_SW_MS_SC_INST_DEI_SC_NO_DEI;

        swMsPrm[0].numSwMsInst          = 2;

        swMsPrm[0].swMsInstStartWin[0]  = 0;
        swMsPrm[0].swMsInstStartWin[1]  = 16;

  • Dear Shawn,

         Thanks for your reply.  But I still have some questions.

    1. If we use numSwMsInst =2, does the swMs can generate two outputs?  And these

    two outputs can be different resolutions?

    2. Because we want to do five swMs functions, and these five swMs has five different

    resolution.  If the above method (swMsInst=2) can not work, we need 5 swMs run

    concurrently.  So, how to we need to modify if we want to do 5 swMs function? (I try to

    use 5 swMs and run the chain it will be down.

    Thanks.

    Sincerely,

    James

  • 1. numSwMsInst =2, means using 2 scaler in one swms, for example, one scaler can scale 16 channel, and if you use 2 scale in one swms, that means you can do 32 channel in one display.

    2. for netra, it support 3 different content to display , so that means you can only use 3 swms. more than 3 swms is meanless.

  • Hi,

    Just for us to understand, what is the usecase where you need upto 5 SWMs? Shawn has replied to all your answers, but a minor correction. We can have a separate SWMs also which is not tied to display. But at the end, one needs to note that the SWMs should not cross the total available bandwidth on the scalars.

    Regards,

    Anshuman

  • Dear Anshuman,

         We need to encoder different resolution of bitstream concurrently, so we need more swMs.

    And what is the maximum total available bandwidth on the scalars?  How to use 5 swMs concurrently?

    Thanks.

    Sincerely,

    James

  • Hello, Shawn

    If there are 4 input channels with 1080P to swMs, do I need to set numSwMsInst=2 to increase the performance (generated frame rate)? Or we will get the same result between numSwMsInst=1 and numSwMsInst=2? 

    In addition, what's the difference between these swMs instance? Which one has better performance? Which one is suitable for HD image scaling?

    /** \brief DEI HQ DEI path Scalar */
    #define SYSTEM_SW_MS_SC_INST_DEIHQ_SC (1)
    /** \brief DEI MQ DEI path Scalar */
    #define SYSTEM_SW_MS_SC_INST_DEI_SC (2)
    /** \brief SE0 WB VIP0 path Scalar */
    #define SYSTEM_SW_MS_SC_INST_VIP0_SC (3)
    /** \brief SE0 WB VIP1 path Scalar */
    #define SYSTEM_SW_MS_SC_INST_VIP1_SC (4)
    /** \brief WB path SC5 Scalar */
    #define SYSTEM_SW_MS_SC_INST_SC5 (5)
    /** \brief DEI MQ DEI path Scalar with DEIH in bypass mode */
    #define SYSTEM_SW_MS_SC_INST_DEIHQ_SC_NO_DEI (6)
    /** \brief DEI MQ DEI path Scalar with DEI in bypass mode */
    #define SYSTEM_SW_MS_SC_INST_DEI_SC_NO_DEI (7)

    Thanks a lot.

    p.s. I'm using DM8168_DVRRDK_V03.00.00.00 on ti8168. 

  • One scaler instance can do 1 channel 1080P60 scaling. If you input is 4 channels 1080P30 you should use atleast 2 scalers and assign half the channels to scaler 0 and remaining to scaler 1. RDK 3.5 supports only static assignment of scalers to swms windows. In RDK 4.0 you can dynamically change the scaler to window mapping .

    The scalers you have listed all have the same performance. There are restrictions on which scalers you can use simulataneously  due to h/w limitation. If you are using only SwMs in your data flow you can use the following scalers:

    SYSTEM_SW_MS_SC_INST_DEI_SC_NO_DEI;
    SYSTEM_SW_MS_SC_INST_VIP1_SC;

    SYSTEM_SW_MS_SC_INST_DEIHQ_SC_NO_DEI;
    SYSTEM_SW_MS_SC_INST_VIP0_SC;

    You cannot use SYSTEM_SW_MS_SC_INST_DEIHQ_SC  & SYSTEM_SW_MS_SC_INST_DEI_SC as you don't want to do Deinterlacing in SwMs (Input is not interlaced).

    You cannot use SYSTEM_SW_MS_SC_INST_SC5 if you use  SYSTEM_SW_MS_SC_INST_VIP0_SC due to h/w resource conflict