Unverified Commit 9f18ceba authored by janssontoftg's avatar janssontoftg
Browse files

Add reading and packing/unpacking of ISM PI data, under define ISM_PI_DATA.

parent e8f7aeb9
Loading
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -226,6 +226,9 @@ static const char *PiDataNames[IVAS_PI_MAX_ID] = {
static void IVAS_RTP_LogPiData( FILE *f_piDataOut, PIDATA_TS *piData, uint32_t nPiDataPresent )
{
    uint32_t timestamp = ~0u;
#ifdef ISM_PI_DATA
    uint16_t n;
#endif
    if ( f_piDataOut == NULL || piData == NULL || nPiDataPresent == 0 )
    {
        return;
@@ -387,6 +390,30 @@ static void IVAS_RTP_LogPiData( FILE *f_piDataOut, PIDATA_TS *piData, uint32_t n
                fprintf( f_piDataOut, "{}" );
            }
            break;
#ifdef ISM_PI_DATA
            case IVAS_PI_ISM_ORIENTATION:
            {
                fprintf( f_piDataOut, "[\n" );
                for ( n = 0; n < cur->data.ismOrientation.size / 8; n++ )
                {
                    fprintf( f_piDataOut, "\t\t\t{\n\t\t\t\t\"w\": %f,\n\t\t\t\t\"x\": %f,\n\t\t\t\t\"y\": %f,\n\t\t\t\t\"z\": %f \n\t\t\t},\n",
                             cur->data.ismOrientation.orientation[n].w, cur->data.ismOrientation.orientation[n].x, cur->data.ismOrientation.orientation[n].y, cur->data.ismOrientation.orientation[n].z );
                }
                fprintf( f_piDataOut, "\t\t]" );
            }
            break;
            case IVAS_PI_ISM_NUM:
            case IVAS_PI_ISM_ID:
            case IVAS_PI_ISM_GAIN:

            case IVAS_PI_ISM_POSITION:
            case IVAS_PI_ISM_DISTANCE_ATTENUATION:
            case IVAS_PI_ISM_DIRECTIVITY:
            case IVAS_PI_PI_LATENCY:
            case IVAS_PI_R_ISM_ID:
            case IVAS_PI_R_ISM_GAIN:
            case IVAS_PI_R_ISM_DIRECTION:
#else
            case IVAS_PI_ISM_NUM:
            case IVAS_PI_ISM_ID:
            case IVAS_PI_ISM_GAIN:
@@ -398,6 +425,7 @@ static void IVAS_RTP_LogPiData( FILE *f_piDataOut, PIDATA_TS *piData, uint32_t n
            case IVAS_PI_R_ISM_ID:
            case IVAS_PI_R_ISM_GAIN:
            case IVAS_PI_R_ISM_DIRECTION:
#endif
#endif /* RTP_S4_251135_CR26253_0016_REV1 */
            case IVAS_PI_NO_DATA:
            {
+1 −0
Original line number Diff line number Diff line
@@ -160,6 +160,7 @@

#define RTP_S4_251135_CR26253_0016_REV1                /* RTP Pack/Unpack API corresponding to CR 26253 */
#define IVAS_RTPDUMP                                   /* RTPDUMP writing and reading for IVAS payloads */
#define ISM_PI_DATA                                    /* Add reading and packing/unpacking of ISM PI data */

/* ################### Start BE switches ################################# */
/* only BE switches wrt selection floating point code */
+9 −0
Original line number Diff line number Diff line
@@ -72,6 +72,15 @@ extern const float mapRT60[1u << NBITS_RT60];
extern const float mapRoomDims[1u << NBITS_DIM];
extern const float mapAbsorbtion[1u << NBITS_ABS];

#ifdef ISM_PI_DATA
extern const int16_t ismGains[98];
extern const float refDistances[64];
extern const float maxDistances[65];
extern const float rollOffFactors[41];
extern const int16_t innerOuterAngles[25];
extern const float outerAttenuations[32];
#endif

enum IVAS_RTP_HEADER_BITS
{

+604 −12

File changed.

Preview size limit exceeded, changes collapsed.

+0 −1
Original line number Diff line number Diff line
@@ -334,7 +334,6 @@ extern "C"
        IVAS_COORDINATE position; /* Position of audio objects in ISM(s)   */
    } IVAS_PIDATA_LISTENER_POSITION;


    /* Dynamic Audio Suppression describes receiver’s preference with respect to the
     * type of audio content that should be enhanced and the amount of suppression to
     * be applied to the background noise
Loading