VirtualBox

忽略:
時間撮記:
2014-12-4 下午01:49:43 (10 年 以前)
作者:
vboxsync
訊息:

PDM Audio: Branch -> trunk.

位置:
trunk
檔案:
修改 3 筆資料

圖例:

未更動
新增
刪除
  • trunk

  • trunk/src/VBox

  • trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp

    r53407 r53442  
    26122612        InsertConfigInteger(pCfg,  "Object", (uintptr_t)pAudioSniffer);
    26132613#endif
    2614 
    26152614        /*
    2616          * AC'97 ICH / SoundBlaster16 audio / Intel HD Audio
     2615         * AC'97 ICH / SoundBlaster16 audio / Intel HD Audio.
    26172616         */
    26182617        BOOL fAudioEnabled = FALSE;
     
    26302629                case AudioControllerType_AC97:
    26312630                {
    2632                     /* default: ICH AC97 */
     2631                    /* Default: ICH AC97. */
    26332632                    InsertConfigNode(pDevices, "ichac97", &pDev);
    26342633                    InsertConfigNode(pDev,     "0", &pInst);
     
    26402639                case AudioControllerType_SB16:
    26412640                {
    2642                     /* legacy SoundBlaster16 */
     2641                    /* Legacy SoundBlaster16. */
    26432642                    InsertConfigNode(pDevices, "sb16", &pDev);
    26442643                    InsertConfigNode(pDev,     "0", &pInst);
     
    26542653                case AudioControllerType_HDA:
    26552654                {
    2656                     /* Intel HD Audio */
     2655                    /* Intel HD Audio. */
    26572656                    InsertConfigNode(pDevices, "hda", &pDev);
    26582657                    InsertConfigNode(pDev,     "0", &pInst);
     
    26632662            }
    26642663
    2665             /* the Audio driver */
     2664            /* The audio driver. */
    26662665            InsertConfigNode(pInst,    "LUN#0", &pLunL0);
    26672666            InsertConfigString(pLunL0, "Driver", "AUDIO");
     2667            InsertConfigNode(pLunL0,   "Config", &pCfg);
    26682668
    26692669#ifdef VBOX_WITH_PDM_AUDIO_DRIVER
     2670            PCFGMNODE pLunL1;
    26702671            InsertConfigNode(pLunL0, "AttachedDriver", &pLunL1);
    2671             InsertConfigString(pLunL1, "Driver", "PulseAudio");
     2672            InsertConfigNode(pLunL1, "Config", &pCfg);
    26722673#endif
    2673 
    2674             InsertConfigNode(pLunL0,   "Config", &pCfg);
    2675 
    26762674            AudioDriverType_T audioDriver;
    26772675            hrc = audioAdapter->COMGETTER(AudioDriver)(&audioDriver);                       H();
     
    26802678                case AudioDriverType_Null:
    26812679                {
     2680#ifdef VBOX_WITH_PDM_AUDIO_DRIVER
     2681                    InsertConfigString(pLunL1, "Driver", "NullAudio");
     2682#else
    26822683                    InsertConfigString(pCfg, "AudioDriver", "null");
     2684#endif
    26832685                    break;
    26842686                }
    26852687#ifdef RT_OS_WINDOWS
    2686 #ifdef VBOX_WITH_WINMM
     2688# ifdef VBOX_WITH_WINMM
    26872689                case AudioDriverType_WinMM:
    26882690                {
     2691#ifdef VBOX_WITH_PDM_AUDIO_DRIVER
     2692                    #error "Port WinMM audio backend!" /** @todo Still needed? */
     2693#else
    26892694                    InsertConfigString(pCfg, "AudioDriver", "winmm");
     2695#endif
    26902696                    break;
    26912697                }
    2692 #endif
     2698# endif
    26932699                case AudioDriverType_DirectSound:
    26942700                {
    26952701#ifdef VBOX_WITH_PDM_AUDIO_DRIVER
    2696                     InsertConfigString(pCfg, "AudioDriver", "DSoundAudio");
     2702                    InsertConfigString(pLunL1, "Driver", "DSoundAudio");
    26972703#else
    26982704                    InsertConfigString(pCfg, "AudioDriver", "dsound");
     
    27042710                case AudioDriverType_SolAudio:
    27052711                {
     2712#ifdef VBOX_WITH_PDM_AUDIO_DRIVER
     2713                    #error "Port Solaris audio backend!" /** @todo Port Solaris driver. */
     2714#else
    27062715                    InsertConfigString(pCfg, "AudioDriver", "solaudio");
    2707                     break;
    2708                 }
    2709 #endif
    2710 #ifdef RT_OS_LINUX
    2711 # ifdef VBOX_WITH_ALSA
    2712                 case AudioDriverType_ALSA:
    2713                 {
    2714 #ifdef VBOX_WITH_PDM_AUDIO_DRIVER
    2715                     InsertConfigString(pCfg, "AudioDriver", "AlsaAudio");
    2716 #else
    2717                     InsertConfigString(pCfg, "AudioDriver", "alsa");
    27182716#endif
    27192717                    break;
    27202718                }
     2719#endif
     2720#ifdef VBOX_WITH_ALSA
     2721                case AudioDriverType_ALSA:
     2722                {
     2723# ifdef VBOX_WITH_PDM_AUDIO_DRIVER
     2724                    InsertConfigString(pLunL1, "Driver", "AlsaAudio");
     2725# else
     2726                    InsertConfigString(pCfg, "AudioDriver", "alsa");
    27212727# endif
    2722 # ifdef VBOX_WITH_PULSE
     2728                    break;
     2729                }
     2730#endif
     2731#ifdef VBOX_WITH_PULSE
    27232732                case AudioDriverType_Pulse:
    27242733                {
    2725 #ifdef VBOX_WITH_PDM_AUDIO_DRIVER
    2726                     InsertConfigString(pCfg, "AudioDriver", "PulseAudio");
    2727 #else
     2734# ifdef VBOX_WITH_PDM_AUDIO_DRIVER
     2735                    InsertConfigString(pLunL1, "Driver", "PulseAudio");
     2736# else
    27282737                    InsertConfigString(pCfg, "AudioDriver", "pulse");
     2738# endif
     2739                    break;
     2740                }
    27292741#endif
    2730                     break;
    2731                 }
    2732 # endif
    2733 #endif /* RT_OS_LINUX */
    27342742#if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) || defined(VBOX_WITH_SOLARIS_OSS)
    27352743                case AudioDriverType_OSS:
    27362744                {
    2737                     InsertConfigString(pCfg, "AudioDriver", "oss");
     2745# ifdef VBOX_WITH_PDM_AUDIO_DRIVER
     2746                    #error "Port OSS audio backend!" /** @todo Port OSS driver. */
     2747# else
     2748                    InsertConfigString(pCfg, "AudioDriver", "ossaudio");
     2749# endif
    27382750                    break;
    27392751                }
    2740 #endif
    2741 #ifdef RT_OS_FREEBSD
    2742 # ifdef VBOX_WITH_PULSE
    2743                 case AudioDriverType_Pulse:
    2744                 {
    2745 #ifdef VBOX_WITH_PDM_AUDIO_DRIVER
    2746                     InsertConfigString(pCfg, "AudioDriver", "PulseAudio");
    2747 #else
    2748                     InsertConfigString(pCfg, "AudioDriver", "pulse");
    2749 #endif
    2750                     break;
    2751                 }
    2752 # endif
    27532752#endif
    27542753#ifdef RT_OS_DARWIN
    27552754                case AudioDriverType_CoreAudio:
    27562755                {
     2756# ifdef VBOX_WITH_PDM_AUDIO_DRIVER
     2757                    InsertConfigString(pLunL1, "Driver", "CoreAudio");
     2758# else
    27572759                    InsertConfigString(pCfg, "AudioDriver", "coreaudio");
     2760# endif
    27582761                    break;
    27592762                }
    27602763#endif
    27612764            }
     2765
    27622766            hrc = pMachine->COMGETTER(Name)(bstr.asOutParam());                             H();
    2763             InsertConfigString(pCfg, "StreamName", bstr);
     2767
    27642768#ifdef VBOX_WITH_PDM_AUDIO_DRIVER
    2765             /* the Audio driver */
    2766             InsertConfigNode(pInst, "LUN#1", &pLunL0);
    2767             InsertConfigString(pLunL0, "Driver", "AUDIO");
    2768             InsertConfigNode(pLunL0, "AttachedDriver", &pLunL1);
     2769            /*
     2770             * The VRDE audio backend driver. This one always is there
     2771             * and therefore is hardcoded here.
     2772             */
     2773            InsertConfigNode(pInst, "LUN#1", &pLunL1);
     2774            InsertConfigString(pLunL1, "Driver", "AUDIO");
     2775
     2776            InsertConfigNode(pLunL1, "AttachedDriver", &pLunL1);
    27692777            InsertConfigString(pLunL1, "Driver", "AudioVRDE");
    2770             InsertConfigNode(pLunL0, "Config", &pCfg);
     2778
     2779            InsertConfigNode(pLunL1, "Config", &pCfg);
    27712780            InsertConfigString(pCfg, "AudioDriver", "AudioVRDE");
    27722781            InsertConfigString(pCfg, "StreamName", bstr);
    2773             InsertConfigNode(pLunL1, "Config", &pCfg);
    2774             InsertConfigInteger(pCfg,  "Object", (uintptr_t)mAudioVRDE);
    2775             InsertConfigInteger(pCfg,  "ObjectVRDPServer", (uintptr_t)mConsoleVRDPServer);
    2776 
     2782            InsertConfigInteger(pCfg, "Object", (uintptr_t)mAudioVRDE);
     2783            InsertConfigInteger(pCfg, "ObjectVRDPServer", (uintptr_t)mConsoleVRDPServer);
     2784
     2785            /** @todo Add audio video recording driver here. */
    27772786#endif
    27782787        }
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette