我应该如何开始执行卡拉OK程序? [英] How should I go about starting a Karaoke program?

查看:87
本文介绍了我应该如何开始执行卡拉OK程序?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

好的,这就是我在做什么.最近,我被赋予创建卡拉OK程序的任务.基本上,对于那些我们不知道这是什么的用户,您有一个用户在用麦克风唱歌,试图敲打与正在播放背景的歌曲的歌手相同的音符.

我已经完成了研究,并且看到了不同的方法.其中之一是使用winmm.dll,但我也看到了一种使用DirectSound的方法.现在,我下载并安装了DirectX 9.0 SDK,希望以后可以在c#项目中使用Microsoft.Directx引用.即使安装后,我也无法这样做.

因此,现在,在几次尝试解决我的问题之后,我已经向你们寻求帮助.我需要一个基础来开始,我从来没有从事音频输入和处理工作,所以我真的不知道如何开始.谷歌建议音频流是一种选择,但是实际上并没有很多卡拉OK向导.至少我找不到任何有用的.

而已.预先谢谢大家.

Okay so here''s what I''m doing. I''ve recently been given the task of creating a Karaoke program. Basically, for those of us who don''t know what this is, you have a user singing into a microphone, trying to hit the same note that the singer of the song which is playing in the background.

I''ve done my research, and I''ve seen different approaches to this. One of which was using the winmm.dll, but I also saw an approach which uses DirectSound. Now, I downloaded and installed the DirectX 9.0 SDK, in hopes that I could then use Microsoft.Directx reference in my c# project. Even after installation, I was unable to do so.

So now, after several attempts at my problem, I''ve come to you guys for help. I require a base to start, I''ve never worked with audio input and processing so I really don''t know how to begin. Google suggested that audio streaming is an option, however there really aren''t that many karaoke guides out there. At least I wasn''t able to find any useful ones.

That''s it. Thank you all in advance.

推荐答案

因此,这不是程序的基础,但希望它可以帮助您开始使用DirectSound.

如果要在托管程序中使用DirectX,则受支持的方法是使用XNA.当前版本的XNA可以在这里下载:

http://create.msdn.com/en-us/home/getting_started [ ^ ]

不用担心它谈论Windows Phone和XBox 360,它也适用于PC.然后,此页面将帮助您开始录制声音:

http://msdn.microsoft.com/en-us/library/ff827801.aspx [
So this isn''t a base of a program, but hopefully it''ll get you started with DirectSound.

If you want to use DirectX in a Managed program, the supported method is using XNA. The current version of XNA can be downloaded here:

http://create.msdn.com/en-us/home/getting_started[^]

Don''t worry that it talks about Windows Phone and the XBox 360, it works on PCs as well. This page will then help you get started with recording sound:

http://msdn.microsoft.com/en-us/library/ff827801.aspx[^]

You then need to work the processing magic on the data you get. Walt''s recommendation of looking at DSP libraries is a good plan. I don''t know much about this sort of thing, but you may want to look at Fast Fourier Transforms, which will let you extract frequency data from a signal. This may help you work out what pitch your singer is singing at. Naturally, this needs to be done as fast as possible to give your user timely feedback.

Hope this is of help. Good luck :)


这篇关于我应该如何开始执行卡拉OK程序?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆