Ir ao conteúdo

Posts recomendados

Postado

olá , quero usar vários sons tipo "beep" , não é musica , sendo cada som com frequência diferente ,  pois se colocar apenas um som o programa roda com boa velocidade , porém com vários "beep" ele se torna lento demais , então imaginei que se mixar todos os sons em apenas um , aí vai continuar com boa velocidade ,  já vi em alguns sites que tem comandos para mixar áudio de música mas é para programas com interface Gráfica e não em console ,  desde já agradeço muito , se alguém puder ajudar  .     para usar nesse programa experimentaL :

using System.Reflection.Metadata;
using static System.Formats.Asn1.AsnWriter;
using System.Windows;
using System.Media;
using System;
using System.Collections;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using static System.Net.Mime.MediaTypeNames;
namespace paredao_1542
{
    //public class SoundPlayer : System.ComponentModel.Component, System.Runtime.Serialization.ISerializable
    internal class Program
    {
        //public class SoundPlayer : System.ComponentModel.Component, System.Runtime.Serialization.ISerializable
        static void Main(string[] args)
        {
            int     flag  = 0;
            int     c     = 0;
            int a = 0;
            int qtd = 3;
            char[,] mat   = new char[120, 30];
            int [,] bolas = new int [ 10,  5];
            Random rand = new Random();
            
            for ( int f = 0; f < 119; f++)
            {
                mat[f,   0] = (char)35;
                mat[f,  29] = (char)35;
                if (f < 30)
                {
                    mat[  0, f] = (char)35;
                    mat[118, f] = (char)35;
                }
            }
            for (int f = 0; f < 119; f++)
            {
                for (int n = 0; n < 30; n++)
                {
                    if ((f > 50 && f < 65) && (n > 5 && n < 15))
                    {
                        mat[f, n] = (char)35;
                    }
                    Console.SetCursorPosition(f, n);
                    Console.Write(mat[f, n]);
                }
            }
            for (int f = 0; f < qtd; f++)
            {
                a = 0;
                do
                {
                    bolas[f, 0] = rand.Next(5, 110); // ref ao x
                    if ( bolas[f,0] == ' ') a = 1;
                } while (a == 0);
                a = 0;
                do
                {
                    bolas[f, 1] = rand.Next(5, 25);  // ref ao y
                    if (bolas[f, 1] != ' ') a = 1;
                } while ( a == 0);
                bolas[f, 2] = bolas[f, 0];       // ref ao old_x
                bolas[f, 3] = bolas[f, 1];       // ref ao old_y
                bolas[f, 4] = rand.Next(4);      // ref ao dir
            }
            Bar(15,0, " Tecle ESC para Sair ");
            Console.CursorVisible = false;
            Thread.Sleep(1000);   
            do
            {
                if (Console.KeyAvailable)
                {
                    c = Console.ReadKey().KeyChar;
                    Console.SetCursorPosition(10, 10);
                    Console.WriteLine("   VaLor de Tecla PressionadA= {0}", c);
                }
                Thread.Sleep(10);
                if (flag == 0) Som( 1 );
                flag = 0;
                for (int n = 0; n < qtd; n++)
                {
                    Bar(bolas[n, 2], bolas[n, 3], " ");// remove o desenho da bola
                    Bar(bolas[n, 0], bolas[n, 1], "O");// desenhar a bola
                    // if (flag == 0) Som(n);  // com vArios sons fica Lentos
                    flag = 0;
                    bolas[n, 2] = bolas[n, 0];
                    bolas[n, 3] = bolas[n, 1];
                    switch (bolas[n, 4])
                    {
                        case 1:
                            if (mat[bolas[n, 0] + 1, bolas[n, 1]] == '#')
                            {
                                bolas[n, 4] = 4; // pbe
                            }
                            else
                            {
                                if (mat[bolas[n, 0], bolas[n, 1] + 1] == '#')
                                {
                                    bolas[n, 4] = 2; /// pcd
                                }
                                else
                                {
                                    if (mat[bolas[n, 0] + 1, bolas[n, 1] + 1] == '#')
                                    {
                                        bolas[n, 4] = 4;
                                    }
                                    else             /// continue pbd
                                    {
                                        bolas[n, 0]++;
                                        bolas[n, 1]++;
                                        flag = 1;// não colidiu com nada então sem som
                                    }
                                }
                            }
                            break;
                        case 2:
                            if (mat[bolas[n, 0] + 1, bolas[n, 1]] == '#')
                            {
                                bolas[n, 4] = 3; // pce
                            }
                            else
                            {
                                if (mat[bolas[n, 0], bolas[n, 1] - 1] == '#')
                                {
                                    bolas[n, 4] = 1; /// pbd
                                }
                                else
                                {
                                    if (mat[bolas[n, 0] + 1, bolas[n, 1] - 1] == '#')
                                    {
                                        bolas[n, 4] = 3; // pce
                                    }
                                    else             /// continue pcd
                                    {
                                        bolas[n, 0]++;
                                        if (bolas[n, 1] > 1) bolas[n, 1]--;
                                        flag = 1;// não colidiu com nada então sem som
                                    }
                                }
                            }
                            break;
                        case 3:
                            if (mat[bolas[n, 0], bolas[n, 1] - 1] == '#')
                            {
                                bolas[n, 4] = 4; // pbe
                            }
                            else
                            {
                                if (mat[bolas[n, 0] - 1, bolas[n, 1]] == '#')
                                {
                                    bolas[n, 4] = 2; /// pcd
                                }
                                else
                                {
                                    if (mat[bolas[n, 0] - 1, bolas[n, 1] - 1] == '#')
                                    {
                                        bolas[n, 4] = 4; /// pbe
                                    }
                                    else            /// continue pce
                                    {
                                        if (bolas[n, 0] > 1) bolas[n, 0]--;
                                        if (bolas[n, 1] > 1) bolas[n, 1]--;
                                        flag = 1;// não colidiu com nada então sem som
                                    }
                                }
                            }
                            break;
                        default:
                            if (mat[bolas[n, 0], bolas[n, 1] + 1] == '#')
                            {
                                bolas[n, 4] = 3; // pce
                            }
                            else
                            {
                                if (mat[bolas[n, 0] - 1, bolas[n, 1]] == '#')
                                {
                                    bolas[n, 4] = 1; /// pbd
                                }
                                else
                                {
                                    if (mat[bolas[n, 0] - 1, bolas[n, 1] + 1] == '#')
                                    {
                                        bolas[n, 4] = 1;
                                    }
                                    else             /// continue pbe
                                    {
                                        if (bolas[n, 0] > 1) bolas[n, 0]--;
                                        bolas[n, 1]++;
                                        flag = 1;// não colidiu com nada então sem som
                                    }
                                }
                            }
                            break;
                    }
                }
            } while (c != 27) ;
        }
        public static void Som( int n )
        {
            // mixagem de Audio em programa com interface grAficas
            /*SoundPlayer soundPlayer = new SoundPlayer(Properties.Resources.SimpleSound);
            soundPlayer.Play(); // Para começar o som normalmente.
            soundPlayer.PlayLooping(); // Para começar o som e ficar repetindo.
            soundPlayer.PlaySync(); // Para começar o som e só ir para a próxima linha quando parar de tocar.
            SoundPlayer player = new SoundPlayer();
            player.SoundLocation = Environment.CurrentLocation + "beep.mp3";*/
            switch( n ) // 4 sons diferentes
            {
                case 1: Console.Beep();break; // cada beep com frequência diferente
                case 2: Console.Beep();break;
                case 3: Console.Beep();break;
                default:Console.Beep();break; // usando default para o quarto case
            }
        }
        public static void Bar(int x, int y, string ch)// mever a bola
        {
            Console.SetCursorPosition(x, y);           // posiciona o cursor nessa posiCAo
            Console.WriteLine(ch);                     // desenha a bola nessa posiÇAo
        }
    }
}

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!