让KVM虚机能使用音箱与麦克风(vnc及ac97)

tantexian 发布于 2016/02/29 16:32

字数 462
阅读 164
收藏 0

virt-install --arch=x86_64 --accelerate -v -n windows2008_2 -r 1024 --vcpus=3 -c /media/windows2008.iso --vnc --vncport=5903 --vnclisten=0.0.0.0 --virt-type=kvm --disk path=/dev/vg01/sys2008_2,cache=writeback,bus=virtio,device=disk --disk path=/media/virtio.vfd,device=floppy  -w bridge:br1,model=virtio --soundhw=ac97 --video=cirrus --os-type='windows' --os-variant=win2k8 --connect qemu:///system  

或者直接修改xml文件:

由于Rosetta Stone软件只有windows版本,所以想到在Linux上创建一个KVM虚机来跑windows, 本文记录解决KVM虚机使用使用音箱与麦克风的过程中遇到的一些问题。

1, windows xp or windows 7

最开始图速度快,安装的一是个深度精简版的windows xp, 但是进虚机之后总报找不着一个pci,音频,视频的驱动,使用在线驱动精灵解决未果。后来换成windows 7,且声卡驱动选ich6是好使的。

2, 音箱 and 麦克风

但以上的办法(使用ich6驱动)在进虚机之后只能看到音箱驱动,而看不到麦克风驱动, 因为麦克风既不是pci设备也不是usb设备,而是一个line-in设备,虚机不认它,所以使用使用如下配置。见:http://comments.gmane.org/gmane.comp.emulators.spice.devel/9078

<sound model='ich6'>
      <codec type='micro'/>
 </sound>

3, VNC or rdesktop

virt-manager默认创建的虚机使用的是vnc, vnc不能穿透声音, 网上流传一方法,在/etc/libvirt/qemu.conf中设置vnc_allow_host_audio = 1, 实际测试,不好使。

所以改成使用使用rdesktop的-r sound:local参数来使用宿主机的音箱,好使,但声音有些卡,并且麦克风不大好使

sudo rdesktop -z -r sound:local -g workarea -D -K -a 16 -u Administrator -p password 192.168.100.6

4,  spice

最后想到spice, 音箱和麦克风都能用啦。

a) sudo apt-get install  libspice-server1 python-spice-client-gtk qemu-kvm-spice spice-client spice-client-gtk python-spice-client-gtk build-essential libspice-server1 libspice-protocol-dev

b) virt-manager中将Video驱动改成QXL

c) 将Display改成Spice

【转载】让KVM虚机能使用音箱与麦克风(vnc及ac97)的更多相关文章

  1. 远程管理 KVM 虚机 - 每天5分钟玩转 OpenStack(5)

    上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机.其实 virt-manager 也可以管理其他宿主机上的虚机.只需要简单的将宿主机添加进来 填入宿主机的相关信息,确定即 ...

  2. 启动第一个 KVM 虚机 - 每天5分钟玩转 OpenStack(4)

    本节演示如何使用 virt-manager 启动 KVM 虚机. 首先通过命令 virt-manager 启动图形界面 # virt-manager 点上面的图标创建虚机 给虚机命名为 kvm1,这里 ...

  3. KVM 介绍(8):使用 libvirt 迁移 QEMU/KVM 虚机和 Nova 虚机 [Nova Libvirt QEMU/KVM Live Migration]

    学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...

  4. KVM 介绍(6):Nova 通过 libvirt 管理 QEMU/KVM 虚机 [Nova Libvirt QEMU/KVM Domain]

    学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...

  5. KVM(六)Nova 通过 libvirt 管理 QEMU/KVM 虚机

    1. Libvirt 在 OpenStack 架构中的位置 在 Nova Compute 节点上运行的 nova-compute 服务调用 Hypervisor API 去管理运行在该 Hypervi ...

  6. 启动第一个 KVM 虚机

    本节演示如何使用 virt-manager 启动 KVM 虚机. 首先通过命令 virt-manager 启动图形界面 1 # virt-manager 点上面的图标创建虚机 给虚机命名为 kvm1, ...

  7. 远程管理 KVM 虚机

    上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机.其实 virt-manager 也可以管理其他宿主机上的虚机.只需要简单的将宿主机添加进来 填入宿主机的相关信息,确定即 ...

  8. O005、远程管理 KVM 虚机

    参考https://www.cnblogs.com/CloudMan6/p/5256018.html   上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机,其实 virt ...

  9. O004、启动第一个KVM虚机

    参考https://www.cnblogs.com/CloudMan6/p/5249270.html   本节演示如何使用 virt-manager 启动 KVM 虚机,   提前下载一个 cirro ...

随机推荐

  1. Java 并发编程 生产者消费者模式

    本文部分摘自<Java 并发编程的艺术> 模式概述 在线程的世界里,生产者就是生产数据的线程,消费者就是消费数据的数据.生产者和消费者彼此之间不直接通信,而是通过阻塞队列进行通信,所以生产 ...

  2. TypeError: 'str' object does not support item assignment Python常见错误

    1.string是一种不可变的数据类型 2.尝试使用 range()创建整数列 有时你想要得到一个有序的整数列表,所以 range() 看上去是生成此列表的不错方式. 需要记住 range() 返回的 ...

  3. Kubernetes 常用日志收集方案

    Kubernetes 常用日志收集方案 学习了 Kubernetes 集群中监控系统的搭建,除了对集群的监控报警之外,还有一项运维工作是非常重要的,那就是日志的收集. 介绍 应用程序和系统日志可以帮助 ...

  4. 201871030109-韩诚 实验一 软件工程准备—Blog

    项目 内容 课程班级博客链接 18级卓越班 这个作业要求链接 软件工程准备-Blog 我的课程学习目标 (1)学习博客园软件开发者学习社区使用技巧和经验(2) 掌握软件工程导论这门课程的基础理论知识 ...

  5. BUAA_2020_OO_UNIT3_REVIEW

    OO第三单元总结 1. JML语言的理论基础.应用工具链情况 1.1 JML理论基础 我觉得就是<离散数学>中的数理逻辑 由于我的<离散数学>是速成的,导致我不会写规格,只能勉 ...

  6. 02 . MongoDB复制集,分片集,备份与恢复

    复制集 MongoDB复制集RS(ReplicationSet): 基本构成是1主2从的结构,自带互相监控投票机制(Raft(MongoDB)Paxos(mysql MGR 用的是变种)) 如果发生主 ...

  7. NOI2020游记

    我今年高一,这是我第一年作为正选参加NOI. 去年NOI没写游记,结果前两天想要复盘NOI2019的时候发现只能回想起一些模糊的记忆了.为了防止明年再遇到这种情况(其实我更希望没有明年),就有了这篇游 ...

  8. Github Pages+Gridea设置DisqusJS评论

    1 前言 相信很多人都对Github Pages不默认,笔者之前写过了一篇文章,使用Github Pages去搭建博客的,链接可以戳这里. 但是唯一的不足是没有提到评论,因为当时笔者测试了一下,评论设 ...

  9. (十三)VMware Harbor 身份验证模式

    VMware Harbor 修改Harbor仓库admin用户 参考:https://blog.csdn.net/qq_40460909 https://blog.csdn.net/qq_404609 ...

  10. Oracle中left join、right join、full join应用场景

    一.提出问题:三个表分别存不同属性,一条sql查询各个公司的不同的属性 (1) 提供的三个表,相同的维度[company] (2) 需要的结果: 二.问题解析:可通过先查出所有公司再左连接三个表,或者 ...