โดยค่าเริ่มต้น ไม่มี Sound Devices ใน VMWare ESXi Virtual Machines หากคุณต้องการได้เสียงจาก Guest Windows VM วิธีที่ง่ายกว่าคือใช้ RDP Remote Audio (ใช้ส่งเสียงจาก Remote Computer ไปยัง Audio Device ของ Local Host ใน RDP Client) อย่างไรก็ตาม ในบางกรณี User หรือ App ที่รันใน Virtual Machine ต้องการ Direct Access ไปยัง Sound Card ในบทความนี้เราจะแสดงวิธีเพิ่ม Virtual Sound Card ให้ VM ที่รันบน VMWare ESXi Host
สถานการณ์ปกติ
เมื่อคุณสร้าง VMWare Virtual Machine ใหม่บน ESXi ไม่มี Virtual Audio Devices ใน Device List หากคุณเชื่อมต่อกับ Guest Windows VM คุณจะเห็นว่า Sound Icon ใน Tray มีเครื่องหมาย Red Cross พร้อมข้อความ No Audio Output Device is installed ตามนั้น ไม่มี Audio Devices ใน Windows Device Manager


หากคุณเชื่อมต่อ Windows ผ่าน RDP คุณสามารถ Forward Default Windows Sound Events ทั้งหมดไปยัง Device Remote Audio ได้ แม้จะไม่มี Sound Card ใน VM ก็ตาม

ทำได้โดยเลือก "Remote audio playback" -> "Play on this computer" ใน Client Settings ของ mstsc.exe

การเพิ่ม Virtual Sound Card
Virtual HD Audio Device ถูกพิจารณาว่า Unsupported อย่างเป็นทางการสำหรับ VMWare ESXi Virtual Machines แต่คุณสามารถเพิ่มได้ผ่านไฟล์ Configuration .vmx หรือ Advanced Configuration Parameters ของ Virtual Machine (ใน VMWare Workstation Virtual Machine คุณสามารถเพิ่ม Audio Device ได้เหมือน Virtual Hardware อื่นๆ)
นอกจากนี้ คุณยังสามารถ Forward Physical Audio Device จาก Host โดยตรงไปยัง VM โดยใช้ PCI Passthrough
วิธีเพิ่ม Virtual Sound Card ผ่านไฟล์ .vmx
- Enable SSH Service ใน Settings ของ ESXi Host ที่ Virtual Machine รันอยู่;

- Stop VM
- เชื่อมต่อกับ ESXi Host โดยใช้ SSH Client ใดๆ (ผมใช้ Windows 10 Built-in SSH Client):
ssh root@mun-esxi5
ไปที่โฟลเดอร์ที่มี Virtual Machine Files ของคุณ เช่น:
# cd /vmfs/volumes/VMFS_Store1/VMName1 - สร้าง Backup Copy ของไฟล์ .vmx ของ VM ของคุณ
- Edit VMX File ใน vi Editor:
# vi VMName1 - เพิ่มบรรทัดต่อไปนี้ไปท้าย Config File:
sound.present = "true" sound.allowGuestConnectionControl = "false" sound.virtualDev = "hdaudio" sound.fileName = "-1" sound.autodetect = "true"

- Save VMX File และ Run VM
- ตรวจสอบว่า Windows Audio Service ถูก Enable ใน Guest OS และ
hdaudioSound Card (High Definition Audio Device) ปรากฏในรายการ Devices
