আপনি কি এক্সএনএ-তে কাঁচা সাউন্ড ডেটা রেকর্ড করতে পারেন?


9

এক্সএনএ 4 এর মধ্যে মাইক্রোসফ্ট.এক্সনা.ফ্রেমওয়ার্ক.অডিও রয়েছে। মাইক্রোফোন বর্গ যা আপাতদৃষ্টিতে মাইক্রোফোন থেকে কাঁচা শব্দ ডেটাটি ডকুমেন্ট হিসাবে তার API এর মাধ্যমে পড়তে পারে:

গেটডেটা - মাইক্রোফোন থেকে সর্বশেষ রেকর্ড করা ডেটা পান।

গেটসম্যাডালিউশন - বাফারের আকারের উপর ভিত্তি করে অডিও প্লেব্যাকের সময়কাল ফেরৎ দেয়।

গেটস্যাম্পল সাইজআইনবাইটস - এই মাইক্রোফোন অবজেক্টের জন্য অডিওর নির্দিষ্ট সময়কাল ধরে রাখতে প্রয়োজনীয় বাইট অ্যারের আকারটি প্রদান করে।

আমি কি এই শ্রেণিটি ব্যবহার করে শব্দ ডেটা পড়তে পারি, একটি অ্যারেতে এটি রেকর্ড করতে পারি এবং তারপরে এটি আবার খেলতে পারি? এক্সবক্স 360 এ?

উত্তর:


7

আপনি মাইক্রোফোন থেকে ডায়নামিক সাউন্ড এফেক্টে ডেটা জমা দেওয়ার চেষ্টা করতে পারেন ।

আমি এটি পরীক্ষা করার জন্য কিছু কোড লিখেছি, এটি কাজ করে।

DynamicSoundEffectInstance sound;

protected override void Initialize()
{
    sound = new DynamicSoundEffectInstance(Microphone.Default.SampleRate, AudioChannels.Mono);

    Microphone.Default.BufferReady += (a, b) =>
    {
        byte[] data = new byte[Microphone.Default.GetSampleSizeInBytes(Microphone.Default.BufferDuration)];
        Microphone.Default.GetData(data);

        sound.SubmitBuffer(data);
    };
    Microphone.Default.Start();

    base.Initialize();
}

protected override void Update(GameTime gameTime)
{
    if (gameTime.TotalGameTime.TotalSeconds > 5)
    {
        Microphone.Default.Stop();
        sound.Play();
    }

    base.Update(gameTime);
}

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.