📄 parse_audio_cmdline.c
字号:
if (argc > i+1) { RMasciiToUInt32(argv[i+1], &(options->chconfig)); i += 2; err = RM_OK; } else err = RM_ERROR; } else if (RMCompareAscii(argv[i], "-drc")) { if (argc > i+1) { RMasciiToUInt32(argv[i+1], &(options->drcenable)); i += 2; err = RM_OK; } else err = RM_ERROR; } else if (RMCompareAscii(argv[i], "-boost")) { if (argc > i+1) { RMasciiToUInt32(argv[i+1], &(options->drcboost)); i += 2; err = RM_OK; } else err = RM_ERROR; } else if (RMCompareAscii(argv[i], "-cut")) { if (argc > i+1) { RMasciiToUInt32(argv[i+1], &(options->drccut)); i += 2; err = RM_OK; } else err = RM_ERROR; } else if (RMCompareAscii(argv[i], "-dialref")) { if (argc > i+1) { RMasciiToInt32(argv[i+1], &(options->drcdialref)); i += 2; err = RM_OK; } else err = RM_ERROR; } else if (RMCompareAscii(argv[i], "-lossless")) { options->lossless = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-audioin")) { printf("(((((((((((((********************* 2 *******************))))))))\n"); options->AudioIn = TRUE; options->Codec = AudioDecoder_Codec_PCM; options->SubCodec = 0; options->PcmCdaParams.ChannelAssign = PcmCda2_LR; options->PcmCdaParams.BitsPerSample = 16; //24; options->PcmCdaParams.MsbFirst = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-aialign")) { if (argc > i+1) { options->AudioInAlign = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-ailsbfirst")) { options->AudioInLSBfirst = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-i2salign")) { if (argc > i+1) { options->I2SAlign = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-i2ssclknormal")) { options->I2SSClkNormal = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-i2sframenormal")) { options->I2SFrameNormal = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-i2slsbfirst")) { options->I2SLSBFirst = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-i2s16bit")) { options->I2S16Bit = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-source")) { if (argc > i+1) { options->CaptureSource = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-capture_bts")) { if (argc > i+1) { options->CaptureBitstream = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-channel_delay")) { if (argc > i+2) { RMint32 ch = strtol(argv[i+1], NULL, 10); if(ch < 0 || ch > 7){ err = RM_ERROR; } else{ switch(ch){ case 0: options->ChannelDelay.Delay_ch0 = strtol(argv[i+2], NULL, 10); RMDBGLOG((LOCALDBG, "DELAY for CH0 is %d\n", options->ChannelDelay.Delay_ch0)); break; case 1: options->ChannelDelay.Delay_ch1 = strtol(argv[i+2], NULL, 10); break; case 2: options->ChannelDelay.Delay_ch2 = strtol(argv[i+2], NULL, 10); break; case 3: options->ChannelDelay.Delay_ch3 = strtol(argv[i+2], NULL, 10); break; case 4: options->ChannelDelay.Delay_ch4 = strtol(argv[i+2], NULL, 10); break; case 5: options->ChannelDelay.Delay_ch5 = strtol(argv[i+2], NULL, 10); break; case 6: options->ChannelDelay.Delay_ch6 = strtol(argv[i+2], NULL, 10); break; case 7: options->ChannelDelay.Delay_ch7 = strtol(argv[i+2], NULL, 10); break; } i+=3; err = RM_OK; } } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-pl2x_mode")) { if (argc > i+1) { options->PL2xParams.mode = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-pl2x")) { options->PL2xParams.on = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-pl2x_autoEX")) { options->PL2xParams.autoEX = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-pl2x_Autobal_Off")) { options->PL2xParams.a = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-pl2x_ShelfFilter")) { options->PL2xParams.f = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-pl2x_RsPolarity")) { options->PL2xParams.r = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-pl2x_Panorama")) { options->PL2xParams.t = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-pl2x_CenterWidth")) { if (argc > i+1) { options->PL2xParams.w = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-pl2x_InvMatrix")) { options->PL2xParams.x = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-pl2x_DimCtrl")) { if (argc > i+1) { options->PL2xParams.d = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-type")) { if (argc > i+1) { options->CaptureType = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-delay")) { if (argc > i+1) { options->CaptureDelay = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-spdif")) { if (argc > i+1) { if (! strcmp(argv[i+1], "n")) options->Spdif = OutputSpdif_Disable; else if (! strcmp(argv[i+1], "u")) options->Spdif = OutputSpdif_Uncompressed; else if (! strcmp(argv[i+1], "c")) options->Spdif = OutputSpdif_Compressed; else if (! strcmp(argv[i+1], "cnd")) options->Spdif = OutputSpdif_NoDecodeCompressed; else err = RM_ERROR; } else err = RM_ERROR; if (err != RM_ERROR) err = RM_OK; i+=2; } else if ( ! strcmp(argv[i], "-subcodebit")) { if (argc > i+1) { options->SubcodeDataForce = TRUE; options->SubcodeDataBit = (strtol(argv[i+1], NULL, 10) ? TRUE : FALSE); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-hdmi_pass")) { options->HDMIPassThrough = TRUE; options->Spdif = OutputSpdif_Compressed; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-hdmi_lines")) { if (argc > i+1) { options->HDMIPassThroughI2SLines = strtol(argv[i+1], NULL, 10); i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! strcmp(argv[i], "-hdmi_hbr")) { options->HBR_Enable = TRUE; options->HBR_Compressed = TRUE; i++; if ((argc > i) && (argv[i][0] != '-')) { options->HBR_HeaderID = strtol(argv[i], NULL, 10); i++; } err = RM_OK; } else if ( ! strcmp(argv[i], "-so")) { if (argc > i+1) { options->SerialOut = (strtol(argv[i+1], NULL, 10)) ? TRUE : FALSE; i+=2; err = RM_OK; } else err = RM_ERROR; } else if ( ! (strcmp(argv[i], "-dual"))) { if (argc > i+1) { if ( ! (strcmp(argv[i+1], "stereo"))) { options->OutputDualMode = DualMode_Stereo; } else if ( ! (strcmp(argv[i+1], "left"))) { options->OutputDualMode = DualMode_LeftMono; } else if ( ! (strcmp(argv[i+1], "right"))) { options->OutputDualMode = DualMode_RightMono; } else if ( ! (strcmp(argv[i+1], "mix"))) { options->OutputDualMode = DualMode_MixMono; } else err = RM_ERROR; } else err = RM_ERROR; if (err != RM_ERROR) err = RM_OK; i+=2; } else if ( ! (strcmp(argv[i], "-kmode"))) { if (argc > i+1) { if ( ! (strcmp(argv[i+1], "mix"))) { options->KaraokeMode = KaraokeMode_Mix; } else if ( ! (strcmp(argv[i+1], "left"))) { options->KaraokeMode = KaraokeMode_Left; } else if ( ! (strcmp(argv[i+1], "right"))) { options->KaraokeMode = KaraokeMode_Right; } else if ( ! (strcmp(argv[i+1], "novocal"))) { options->KaraokeMode = KaraokeMode_NoVocal; } else err = RM_ERROR; } else err = RM_ERROR; if (err != RM_ERROR) err = RM_OK; i+=2; } else if ( ! (strcmp(argv[i], "-lsbfirst"))) { options->PcmCdaParams.MsbFirst = FALSE; i++; err = RM_OK; } else if ( ! (strcmp(argv[i], "-lfe"))) {// options->Ac3Params.OutputLfe = TRUE; options->OutputLfe = TRUE; i++; err = RM_OK; } else if ( ! (strcmp(argv[i], "-acmod2dual"))) { options->Ac3Params.Acmod2DualMode = TRUE; options->MpegParams.Acmod2DualMode = TRUE; options->AACParams.Acmod2DualMode = TRUE; RMDBGLOG((LOCALDBG, "!!!!!!!!!!!!! Set acmod2dual \n")); i++; err = RM_OK; } else if ( ! (strcmp(argv[i], "-downsample"))) { options->LpcmAobParams.DownSample = TRUE; options->DownSample = TRUE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-unsigned")) { RMDBGLOG((LOCALDBG, ">>>>>>>>>>>>Unsigned PCM is set\n")); options->SignedPCM = FALSE; i++; err = RM_OK; } else if ( ! strcmp(argv[i], "-bassmode")) { RMDBGLOG((LOCALDBG, ">>>>>>>>>>>>BassMode is set\n")); if (argc > i+1) { options->BassMode = strtol(argv[i+1], NULL, 10); } else err = RM_ERROR; i+=2; err = RM_OK; } else if (RMCompareAscii(argv[i], "-afifo")) { if (argc > i+1) { RMasciiToUInt32(argv[i+1], &(options->fifo_size)); options->fifo_size *= 1024; i += 2; err = RM_OK; } else
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -