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.

what should I do for IPNC3.5 supporting 32K audio sample?

Hi,

     I use IPNC3.5 RDK on EVM8148, what should I do for  32K audio sample?  by default , It only suportes 8k and 16k

sample G711 codec!

thanks in advance,

Best Regards,

Stone

  • Hello,

    I notified the IPNC team for help.

    Best Regards,

    Margarita

  • Hi,

    You can pass 32000 audio sample rate from system server as explained below:

    In the StartStream() fn defined in ..\ipnc_rdk\ipnc_app\sys_server\src\stream_env_ctrl.c file change the audio string from  "char *audio_SR[2] = {"AUDIO 8000","AUDIO 16000"};" to "char *audio_SR[2] = {"AUDIO 8000","AUDIO 32000"};" so that when you select 16K from GUI 32K is passed to the MCFW process.

    And look for the warning 'Rate doesn't match (requested %iHz, get %iHz)' if 32K is not supported by the audio device.

    regards,
    Anand

  • Hi,

    thanks for your answer, I will try it and tell you the result!

    Best Regards,

    Stone

  • hi,

       I'm sorry for my response so lately . I had try that as you said,but it still failed when sample frequence is 32K ,let's see the following linux  prompt  :

    *****************************************************************

        IPNC BUILD VERSION: DM8127 IPNC RDK VERSION 03.50.00.08

    *****************************************************************

    ./bin/ipnc_rdk_mcfw.out   VNF_QUALITY SINGLESTREAM SINGLE_H264 AUDIO AAC 32000 TI2A AEWB 1080P_D1 H264 HIGH_SPEED1 &
    Ready
    Go to sleep:0

     [host] gUI_mcfw_config.audioCfg.sampleRate = 32000

     [host] gUI_mcfw_config.audioCfg.codecType = 1

     [host]  0: SYSTEM: System Common Init in progress !!!

     [host]  0: SYSTEM: IPC init in progress !!!

     [host]  12: SYSTEM: CPU [DSP] syslink proc ID is [0] !!!

     [host]  12: SYSTEM: CPU [VIDEO-M3] syslink proc ID is [1] !!!

     [host]  12: SYSTEM: CPU [VPSS-M3] syslink proc ID is [2] !!!

     [host]  12: SYSTEM: CPU [HOST] syslink proc ID is [3] !!!

     [host]  12: SYSTEM: Opening MsgQ Heap [IPC_MSGQ_MSG_HEAP] ...

     [host]  14: SYSTEM: Creating MsgQ [HOST_MSGQ] ...

     [host]  16: SYSTEM: Creating MsgQ [HOST_ACK_MSGQ] ...

     [host] DMA: ChannelID allocated:4
     18: SYSTEM: OpeDMA: ChannelID allocated:10
    ning MsgQ [DSP_MSGQ] ...

     [host]  18: SYSTEM: Opening MsgQ [VIDEO-M3_MSGQ] ...

     [host]  19: SYSTEM: Opening MsgQ [VPSS-M3_MSGQ] ...

     [host]  20: SYSTEM: Notify register to [DSP] line 0, event 12 ...

     [host]  20: SYSTEM: Notify register to [VIDEO-M3] line 0, event 12 ...

     [host]  21: SYSTEM: Notify register to [VPSS-M3] line 0, event 12 ...

     [host]  21: SYSTEM: IPC init DONE !!!

     [host]  23: SYSTEM: Creating ListMP [HOST_IPC_OUT_28] in region 0 ...

     [host]  25: SYSTEM: Creating ListMP [HOST_IPC_IN_28] in region 0 ...

     [host]  26: SYSTEM: ListElem Shared Addr = 0x40593180

     [host]  27: SYSTEM: Creating ListMP [HOST_IPC_OUT_29] in region 0 ...

     [host]  29: SYSTEM: Creating ListMP [HOST_IPC_IN_29] in region 0 ...

     [host]  30: SYSTEM: ListElem Shared Addr = 0x405ace00

     [host]  32: SYSTEM: Creating ListMP [HOST_IPC_OUT_23] in region 0 ...

     [host]  34: SYSTEM: Creating ListMP [HOST_IPC_IN_23] in region 0 ...

     [host]  36: SYSTEM: ListElem Shared Addr = 0x405c6a80

     [host]  36: SYSTEM: Creating ListMP [HOST_IPC_OUT_24] in region 0 ...

     [host]  39: SYSTEM: Creating ListMP [HOST_IPC_IN_24] in region 0 ...

     [host]  40: SYSTEM: ListElem Shared Addr = 0x405e6480

     [host]  41: SYSTEM: Creating ListMP [HOST_IPC_OUT_25] in region 0 ...

     [host]  43: SYSTEM: Creating ListMP [HOST_IPC_IN_25] in region 0 ...

     [host]  45: SYSTEM: ListElem Shared Addr = 0x40605e80

     [host]  45: SYSTEM: System Common Init Done !!!

     [host] Vsys_allocBuf - addr = 0x4d0d1000,size = 65011712

     [host] MCFW_IPCBITS:App_streamSysInit:virt addr of 85000000 cir buffer  is 4d0d1000
    ##########pInfo->totalsize 63897600

     [host] MemMng_memcpy_open:OSA_dmaOpen passed with ch id = 4

     [host] CacheMng_MemCpy_open:OSA_dmaOpen passed with ch id = 10
    Creat queue id:131076
    queue id:131076
    queue id:65538

     [host] MCFW_IPCBITS:App_ipcBitsRecvStreamFxn:Entered...
     [host] MCFW_IPCFRAMES:App_ipcFramesSendRecvFxn:Entered...
     [host] Before System_linkControl SYSTEM_M3VPSS_CMD_GET_DISPLAYCTRL_INIT
     [m3vpss ] VPS_DCTRL_INST_0
     [m3vpss ] IOCTL_VPS_DCTRL_SET_VENC_OUTPUT SYSTEM_DC_VENC_DVO2
     [m3vpss ] IOCTL_VPS_DCTRL_SET_VENC_OUTPUT SYSTEM_DC_VENC_HDMI
     [m3vpss ] IOCTL_VPS_DCTRL_SET_VENC_OUTPUT SYSTEM_DC_VENC_SD
     [m3vpss ] IOCTL_VPS_DCTRL_SET_VENC_CLK_SRC VPS_DC_VENC_HDMI | VPS_DC_VENC_DVO2

     [host]
    ********** FULL FEATURE USECASE ********

     [host] ********* Entered  usecase - vcap + dis +venc  ********


     [host]  193: MCFW  : CPU Revision [ES2.1] !!!

     [host]  193: MCFW  : Detected [UNKNOWN] Board !!!

     [host]  193: MCFW  : Base Board Revision [REV A] !!!
     [m3vpss ]  9435: CAPTURE: Create in progress !!!
     [m3vpss ] CAPTURELINK:!!WARNING.FORCIBLY DISABLING TILER since tiler is disabled at build time
     [m3vpss ]  9471: CAPTURE: VIP1 PortA capture mode is [16-bit, Non-mux Embedded Sync] !!!
     [m3vpss ] CAPTURE::HEAPID:0    USED:320
     [m3vpss ]  10037: CAPTURE: Create Done !!!
     [m3vpss ]  10038: NSF: Create in progress !!!
     [m3vpss ] NSF::HEAPID:0        USED:128
     [m3vpss ] NSF::HEAPID:1        USED:4928
     [m3vpss ]  10202: NSF: Create Done !!!
     [m3vpss ] {SWOSD} edma3Handle->tccVal = 36
     [m3vpss ] {SWOSD} edma3Handle->chId   = 36
     [m3vpss ]  10156: SWOSD   : Create Done !!!
     [m3video]  10237: IPC_IN_M3   : Create in progress !!!
     [m3vpss ]  10235: DUP   : Create Done !!!
     [m3video]  10237: SYSTEM: Opening ListMP [VPSS-M3_IPC_OUT_0] ...
     [m3vpss ]  10236: IPC_OUT_M3   : Create in progress !!!
     [m3video]  10238: SYSTEM: Opening ListMP [VPSS-M3_IPC_IN_0] ...
     [m3vpss ]  10237: IPC_OUT_M3   : Create Done !!!
     [m3video]  10240: IPC_IN_M3   : Create Done !!!
     [m3video]  10240: ENCODE: Create in progress ... !!!
     [m3video]  10269: ENCODE: Creating CH0 of 1920 x 1080, pitch = (1920, 1920) [PROGRESSIVE] [NON-TILED  ], bitrate = 8000 Kbps ...

     [host] IpcBitsInLink_tskMain:Entered
     [host]  2088: IPC_BITS_IN   : Create in progress !!!

     [host]  2088: IPC_BITS_IN   : ListMPOpen start !!!

     [host]  2088: SYSTEM: Opening ListMP [VIDEO-M3_IPC_OUT_28] ...

     [host]  2090: SYSTEM: Opening ListMP [VIDEO-M3_IPC_IN_28] ...

     [host]  2091: IPC_BITS_IN   : ListMPOpen done !!!

     [host]  2093: IPC_BITS_IN   : System_linkGetInfo done !!!

     [host]  2093: IPC_BITS_IN   : Create Done !!!
     [m3vpss ]  10385: DISPLAY: Create in progress !!!
     [m3video] ENCLINK_H264:HEAPID:0        USED:13808
     [m3vpss ] DisplayId = 1,DataFormat = 7
     [m3video]  10376: ENCODE: All CH Create ... DONE !!!
     [m3vpss ] SC2 displayInstId = 6
     [m3vpss ]  10386: DISPLAY: Create Done !!!

     [host] USECASE SETUP DONE
     [m3video] ENCLINK:HEAPID:0     USED:14048
     [m3vpss ]  10386: DISPLAY: Create in progress !!!
     [m3video]  10379: ENCODE: Create ... DONE !!!
     [m3vpss ] DisplayId = 4,DataFormat = 7
     [m3video]  10379: IPC_BITS_OUT   : Create in progress !!!
     [m3vpss ] SD displayInstId = 2
     [m3vpss ]  10387: DISPLAY: Create Done !!!
     [m3vpss ]  10388: DISPLAY: Start in progress !!!
     [m3video]  10381: IPC_BITS_OUT   : Create Done !!!
     [m3vpss ]  10417: DISPLAY: Start Done !!!
     [m3vpss ]  10418: DISPLAY: AUX PATH: 66 fps, Latency (Min / Max) = ( 255 / 0 ), Callback Interval (Min / Max) = ( 255 / 0 ) !!!
     [m3vpss ]  10418: DISPLAY: Start in progress !!!
     [m3vpss ]  10447: DISPLAY: Start Done !!!
     [m3vpss ]  10447: DISPLAY: SDDAC(SEC1): 34 fps, Latency (Min / Max) = ( 255 / 0 ), Callback Interval (Min / Max) = ( 255 / 0 ) !!!
     [m3vpss ]  10448: CAPTURE: Start in progress !!!
     [m3vpss ]  10448: CAPTURE: Start Done !!!

     [host] aencParams.bitRate = 96000...........

     [host] aencParams.encoderType = 1...........

     [host] aencParams.numberOfChannels = 1...........

     [host] aencParams.sampleRate = 32000...........

     [host] ..............................

     [host]
     Rpe_control (ctx->encControlCallDesc) status = 0
     [host]
     AUDIO: Enc creation <malloc> starting
     [host]
     AUDIO: Enc creation <malloc> successfully
     [host]
     [host] AUDIO: ENC Handle 2C1A98, Int Handle 2C1AA4

     [host]
     [host] AUDIO: ENC -> bitrate - 96000 inputBitsPerSample - 16, sampleRate - 32000, numberOfChannels - 1...

     [host]
     Audio capture task created
     [host]
     Rpe_create starting status = 0
     [host]
     [host] AUDIO: ENC -> Rpe_create(AAC_ENC) done....

     [host]
     Rpe_acquireCallDescriptor starting status = 0
     [host]
     Rpe_control (ctx->encControlCallDesc) status = 0
     [host] AAC_LC ENC Create done...........
     [m3vpss ]  10573: CAPTURE: Fields = 0 (fps = 0), Total Resets = 0 (Avg 0 ms per reset)

     [host] AUDIO : period size = 500 frames, dir = 0

     [host] AUDIO : period time = 15625 us, dir = 0
     [m3video]  Channel:0 inputframerate:60 targetfps:60

     [host] MCFW_IPCBITS: Callback function:App_ipcBitsInCbFxn
     [host] MCFW_IPCBITS:App_ipcBitsRecvStreamFxn:INFO: periodic print..
     [host]
    Application Run Completed
     inside autorun
    INIT: Entering runlevel: 5
     sbulla: unknown partition table
     sbulla: unknown partition table
    Starting telnet daemonApproDrvInit: 7
    queue id:131076

     stream_feature_setup set nFeature 53

     stream_flag=0================== ;  

     codectype1=0=============== ;  

     codectype2=3 =============;  
    .
    Starting syslogd/klogd: done

     _____                    _____           _         _   
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
                  |___|                    |___|            

    Arago Project http://arago-project.org DM8127_IPNC ttyO0

    Arago 2011.09 DM8127_IPNC ttyO0

    DM8127_IPNC login: root (automatic login)
    root@DM8127_IPNC:~# mkdosfs 3.0.12 (29 Oct 2011)
    unable to get drive geometry, using default 255/63
    /dev/sbulla has 255 heads and 63 sectors per track,
    logical sector size is 512,
    using 0xf8 media descriptor, with 1024 sectors;
    file system has 2 12-bit FATs and 4 sectors per cluster.
    FAT size is 1 sector, and provides 247 clusters.
    There is 1 reserved sector.
    Root directory contains 512 slots and uses 32 sectors.
    Volume ID is 665bed98, no volume label.
    ApproDrvExit: 7
    Error: WaitStreamReady Fail.
    Error: SemWait: Invalid Semaphore handler

     stream_feature_setup set nFeature 46

     [host]
    Force IDR on Channel: 0
     [host]
    Force IDR on Channel: 1Error: SemRelease: Invalid Semaphore handler
    SystemInit success
    Schedule manager init success
    Dmva Schedule manager init success
    insmod: can't read 'g_zero.ko': No such file or directory
    g_file_storage gadget: No serial-number string provided!
    g_file_storage gadget: File-backed Storage Gadget, version: 1 September 2010
    g_file_storage gadget: Number of LUNs=1
    g_file_storage gadget-lun0: ro=0, nofua=0, file: /dev/sbulla
    musb-hdrc musb-hdrc.0: MUSB HDRC host driver
    musb-hdrc musb-hdrc.0: new USB bus registered, assigned bus number 1
    hub 1-0:1.0: USB hub found
    hub 1-0:1.0: 1 port detected
    Simple mixer control 'PGA',0
      Capabilities: cvolume cswitch penum
      Capture channels: Front Left - Front Right
      Limits: Capture 0 - 119
      Front Left: Capture 80 [67%] [40.00dB] [on]
      Front Right: Capture 80 [67%] [40.00dB] [on]
    queue id:0

    SystemServer:============================ SYS_MSG_DO_BOOT_PROC

    SystemServer:doning at SYS_MSG_DO_BOOT_PROC

    SystemServer:============================ SYS_MSG_DO_BOOT_PROC
    umount: can't umount /mnt/mmc: Invalid argument
    dhcp enable
    killall: dhcpcd: no process killed
     ERROR  (audio_capture.c|Audio_recordMain|370): Audio short read, read 580 frames
     ERROR  (audio_capture.c|RecordAudio|622): audio overrun occurred
     ERROR  (audio_capture.c|RecordAudio|622): audio overrun occurred
    ApproDrvInit: 3
    queue id:131076
    queue id:0
    queue id:32769
     ERROR  (audio_capture.c|Audio_recordMain|370): Audio short read, read 520 frames
     ERROR  (audio_capture.c|RecordAudio|622): audio overrun occurred
    queue id:0

     from the linux prompt, i think that  not enough audio data can be readed cause the error , is that rigtht ?

    could you help me or give me some sugesstions?

    thanks in advances.

    Best Regards,

    stone

  • Hi,

    There are audio overrun errors and not audio capture errors.

    Can you playback the captured audio?

    regards,

    Anand