コード例 #1
0
        static void Bootup() // Creation of a default Poolable & Pool to allow automatization of the pooling process
        {
            // Poolable creation
            var prefabObject = new GameObject("PoolableAudio")
            {
                hideFlags = HideFlags.HideInHierarchy
            };

            Object.DontDestroyOnLoad(prefabObject);

            var audioSource = prefabObject.AddComponent <AudioSource>();

            audioSource.playOnAwake = false;

            prefab = prefabObject.AddComponent <PoolableAudio>();
            ((IInjectable <AudioSource>)prefab).Inject(audioSource);

            // Pool creation
            var poolObject = new GameObject("AudioPool")
            {
                hideFlags = HideFlags.HideInHierarchy
            };

            Object.DontDestroyOnLoad(poolObject);
            pool = poolObject.AddComponent <AudioPool>();

            // Provider creation
            var provider = new AudioProvider(prefab);

            pool.AddProvider(provider);
        }
コード例 #2
0
        public override void OnCreate()
        {
            base.OnCreate();
            _playingQueue  = new List <MediaSession.QueueItem>();
            _musicProvider = new AudioProvider();
            _packageFinder = new PackageFinder();
            _musicPlayer   = new MusicPlayer(this, _musicProvider);

            var mediaCallback = this.CreateMediaSessionCallback();

            _session     = new MediaSession(this, "AudioburstPlaylists");
            SessionToken = _session.SessionToken;
            _session.SetCallback(mediaCallback);
            _session.SetFlags(MediaSessionFlags.HandlesMediaButtons |
                              MediaSessionFlags.HandlesTransportControls);

            Context context       = ApplicationContext;
            var     intent        = new Intent(context, typeof(MainActivity));
            var     pendingIntent = PendingIntent.GetActivity(context, 99, intent, PendingIntentFlags.UpdateCurrent);

            _session.SetSessionActivity(pendingIntent);

            var extraBundle = new Bundle();

            extraBundle.PutBoolean("com.google.android.gms.car.media.ALWAYS_RESERVE_SPACE_FOR.ACTION_QUEUE", true);
            extraBundle.PutBoolean("com.google.android.gms.car.media.ALWAYS_RESERVE_SPACE_FOR.ACTION_SKIP_TO_PREVIOUS", true);
            extraBundle.PutBoolean("com.google.android.gms.car.media.ALWAYS_RESERVE_SPACE_FOR.ACTION_SKIP_TO_NEXT", true);
            extraBundle.PutBoolean("com.google.android.gms.car.media.ALWAYS_RESERVE_SPACE_FOR.ACTION_PLAY_PAUSE", true);
            _session.SetExtras(extraBundle);
            UpdatePlaybackState(null);
        }
コード例 #3
0
ファイル: MainWindow.xaml.cs プロジェクト: jesux87/testLight
        public void OpenAudioFile()
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();

            openFileDialog.Filter      = "All Supported Files (*.wav;*.mp3)|*.wav;*.mp3|All Files (*.*)|*.*";
            openFileDialog.Multiselect = true;
            bool?flag = openFileDialog.ShowDialog();

            if (flag.HasValue && flag.Value)
            {
                var selFiles = openFileDialog.FileNames;

                WavesProvider = selFiles.Select(s => new WaveChannel32(new AudioFileReader(s))).ToArray();

                foreach (var wav in WavesProvider)
                {
                    var ap  = new AudioProvider(wav);
                    var av  = new AudioVolume(ap);
                    var pan = new AudioPan(av);

                    /*Scene.AudioControllers.Add(ap);
                     * Scene.AudioControllers.Add(av);
                     * Scene.AudioControllers.Add(pan);
                     * Scene.AudioControllers.Add(new AudioEqualizer(pan));*/
                }
            }
        }
コード例 #4
0
        protected override void OnShown(EventArgs e)
        {
            if (_provider == null)
            {
                _provider = AudioProvider.Create(null);
                if (_provider != null)
                {
                    _provider.Attach(this);
                }
            }

            if (_audioSource == null)
            {
                if (!LoadAudio())
                {
                    Close();
                    return;
                }
            }
            else if (!LoadAudio(_audioSource))
            {
                Close();
                return;
            }

            base.OnShown(e);
        }
コード例 #5
0
        private void TargetChanged(IAudioSource newTarget)
        {
            if (_targetSource == newTarget)
                return;

            Close();

            if ((_targetSource = newTarget) == null)
                return;
            if ((_targetStream = _targetSource.CreateStream()) == null)
                return;

            //Create provider
            if (_provider == null)
            {
                _provider = AudioProvider.Create(null);
                _provider.Attach(this);
            }

            chkLoop.Checked = false;
            chkLoop.Enabled = _targetStream.IsLooping;

            //Create buffer for stream
            _buffer = _provider.CreateBuffer(_targetStream);

            _sampleTime = new DateTime((long)_targetStream.Samples * 10000000 / _targetStream.Frequency);

            trackBar1.Value = 0;
            trackBar1.TickStyle = TickStyle.None;
            trackBar1.Maximum = _targetStream.Samples;
            trackBar1.TickFrequency = _targetStream.Samples / 8;
            trackBar1.TickStyle = TickStyle.BottomRight;

            UpdateTimeDisplay();
        }
コード例 #6
0
 public void OnPointerClick(PointerEventData eventData)
 {
     if (active)
     {
         LevelSwitcher.loadLevel(level.getId() + 1);
         AudioProvider.getInstance().playAudio("Standard Button");
     }
 }
コード例 #7
0
 public OpenTKPluginProvider()
 {
     _plugins = new OpenTKPlugins();
     Graphics = new GraphicsProvider(this);
     Audio    = new AudioProvider(this);
     Input    = new InputProvider(this);
     Timer    = new TimerProvider(this);
 }
コード例 #8
0
 public static AudioProvider getInstance()
 {
     if (instance == null)
     {
         instance = new AudioProvider();
     }
     return(instance);
 }
コード例 #9
0
        private void rotate()
        {
            int deg = mouse.getDeg();

            deg += 90;
            deg %= 360;
            mouse.setDeg(deg);
            AudioProvider.getInstance().playAudio("Standard Button");
        }
コード例 #10
0
        public void OnPointerClick(PointerEventData eventData)
        {
            AudioProvider.getInstance().playAudio("Reset");
            placer.clearBlocks();
            Level level = GameMode.getCurrentLevel();

            level.setLocked(false);
            level.storeCompleteStatus();
        }
コード例 #11
0
 public virtual void Dispose()
 {
     if (_owner != null)
     {
         _owner._buffers.Remove(this);
         _owner = null;
     }
     GC.SuppressFinalize(this);
 }
コード例 #12
0
 private void DisposeProvider()
 {
     DisposeSource();
     if (_provider != null)
     {
         _provider.Dispose();
         _provider = null;
     }
 }
コード例 #13
0
        private void TargetChanged(IAudioSource newTarget)
        {
            if (_targetSource == newTarget)
            {
                return;
            }

            Close();

            if ((_targetSource = newTarget) == null)
            {
                return;
            }
            if ((TargetStreams = _targetSource.CreateStreams()) == null)
            {
                return;
            }
            if (_targetStream == null)
            {
                return;
            }

            //Create provider
            if (_provider == null)
            {
                _provider = AudioProvider.Create(null);
                _provider.Attach(this);
            }

            chkLoop.Checked = false;
            chkLoop.Enabled = _targetStream.IsLooping;

            //Create buffer for stream
            for (int i = 0; i < _buffers.Length; i++)
            {
                _buffers[i] = _provider.CreateBuffer(_targetStreams[i]);
            }

            if (_targetStream.Frequency > 0)
            {
                _sampleTime = new DateTime((long)_targetStream.Samples * 10000000 / _targetStream.Frequency);
            }

            trackBarPosition.Value         = 0;
            trackBarPosition.TickStyle     = TickStyle.None;
            trackBarPosition.Maximum       = _targetStream.Samples;
            trackBarPosition.TickFrequency = _targetStream.Samples / 8;
            trackBarPosition.TickStyle     = TickStyle.BottomRight;

            if (_targetStream.Frequency > 0)
            {
                UpdateTimeDisplay();
            }

            Enabled = _targetStream.Samples > 0;
        }
コード例 #14
0
 protected override void Dispose(bool disposing)
 {
     Close();
     if (_provider != null)
     {
         _provider.Dispose();
         _provider = null;
     }
     base.Dispose(disposing);
 }
コード例 #15
0
 public override void Run(Producer <AudioBufferInfo> producer)
 {
     if (!(producer is AudioProvider))
     {
         throw new ArgumentException("AudioTarget can only be run on an AudioProvider");
     }
     Provider = producer as AudioProvider;
     Provider.AudioFinished += OnAudioFinished;
     base.Run(producer);
 }
コード例 #16
0
 public override void Run(Producer <AudioBufferInfo> producer)
 {
     if (!(producer is AudioProvider))
     {
         Log(LogLevel.Error, "Attempted run on non-AudioProvider ({0})", producer.GetType().FullName);
         throw new ArgumentException("AudioTarget can only be run on an AudioProvider");
     }
     Provider = producer as AudioProvider;
     Provider.AudioFinished += OnAudioFinished;
     base.Run(producer);
 }
コード例 #17
0
ファイル: Button.cs プロジェクト: carlo-theunissen/UrbanRoad
        public void OnPointerDown(PointerEventData eventData)
        {
            Block temp = getAviableBlock();

            if (temp != null)
            {
                mouse.setDeg(0);
                mouse.setPiece((Block)temp);
                mouse.setFollowing(true);
                AudioProvider.getInstance().playAudio("Standard Button");
            }
        }
コード例 #18
0
 public void OnPointerClick(PointerEventData eventData)
 {
     AudioProvider.getInstance().playAudio("Standard Button");
     if (infoButton.isShown())
     {
         infoButton.OutAnimation();
     }
     else
     {
         infoButton.Display();
     }
 }
コード例 #19
0
ファイル: AboutForm.cs プロジェクト: soopercool101/BrawlCrate
        public AboutForm()
        {
            InitializeComponent();
            lblName.Text        = Program.AssemblyTitleFull;
            txtDescription.Text = Program.AssemblyDescription;
            lblCopyright.Text   = Program.AssemblyCopyright;
            lblBrawlLib.Text    = "Using " + Program.BrawlLibTitle;

            AudioProvider provider = AudioProvider.Create(null);

            lblAudioBackend.Text = "Audio backend: " + (provider?.ToString() ?? "none");
        }
コード例 #20
0
        private void TargetChanged(THPNode newTarget)
        {
            if (_targetSource == newTarget)
            {
                return;
            }

            Close();

            if ((_targetSource = newTarget) == null)
            {
                return;
            }

            previewPanel1.RenderingTarget = _targetSource;

            IAudioStream s = _targetSource._audio;

            //Create provider
            if (_provider == null && s != null)
            {
                _provider = AudioProvider.Create(null);
                _provider.Attach(this);
            }

            chkLoop.Checked = false;

            //Create buffer for stream
            if (s != null)
            {
                _buffer = _provider.CreateBuffer(s);
            }

            if (_targetSource.FrameRate > 0)
            {
                _frameTime = new DateTime((long)((float)_targetSource.NumFrames * 10000000.0f / _targetSource.FrameRate));
            }

            trackBar1.Value         = 0;
            trackBar1.TickStyle     = TickStyle.None;
            trackBar1.Maximum       = (int)_targetSource.NumFrames;
            trackBar1.TickFrequency = (int)_targetSource.NumFrames;
            trackBar1.TickStyle     = TickStyle.BottomRight;

            if (_targetSource.FrameRate > 0)
            {
                UpdateTimeDisplay();
            }

            Enabled = _targetSource.NumFrames > 0;
        }
コード例 #21
0
ファイル: Program.cs プロジェクト: bugRanger/Chat
        static void Main(string[] args)
        {
            LogManager.Configuration ??= new NLog.Config.LoggingConfiguration();

            var tcpProvider = new TcpProvider(NetworkSocket.Create);
            var udpProvider = new UdpProvider(NetworkSocket.Create);

            var watcher = new ActivityWatcher(tcpProvider)
            {
                Interval = 15000,
            };

            // TODO Impl udp transport layer.
            var provider      = new AudioProvider(udpProvider);
            var calls         = new CallController(new KeyContainer(), () => new BridgeRouter(provider));
            var authorization = new AuthorizationController();

            var core = new CoreApi(tcpProvider, new MessageFactory(true));

            new AuthApi(core, authorization);
            new TextApi(core, authorization);
            new CallApi(core, authorization, calls);

            // TODO Impl ping message.
            //watcher.Start();

            // TODO Add network interfaces.
            _ = tcpProvider.StartAsync(new IPEndPoint(IPAddress.Any, 30010));
            _ = udpProvider.StartAsync(new IPEndPoint(IPAddress.Any, 30010));

            Console.WriteLine("Press key:\r\n S - stop\r\n Q - exit");

            while (true)
            {
                var key = Console.ReadKey();
                switch (key.Key)
                {
                case ConsoleKey.Q:
                    return;

                case ConsoleKey.S:
                    tcpProvider.Stop();
                    udpProvider.Stop();
                    break;

                default:
                    break;
                }
            }
        }
コード例 #22
0
 public void OnPointerClick(PointerEventData eventData)
 {
     if (PlayerPrefs.GetInt("audio_mute") != 1)
     {
         PlayerPrefs.SetInt("audio_mute", 1);
         AudioProvider.getInstance().stopBackground();
     }
     else
     {
         PlayerPrefs.SetInt("audio_mute", 0);
         AudioProvider.getInstance().playBackground();
     }
     setImage();
 }
コード例 #23
0
        public MusicPlayer(MusicService service, AudioProvider musicProvider)
        {
            MusicPlayerState = PlaybackStateCode.None;
            _audioFocusState = AudioFocusState.NoFocusAndNoHide;
            _musicService    = service;
            _musicProvider   = musicProvider;
            _audioManager    = (AudioManager)service.GetSystemService(Context.AudioService);
            _wifiLock        = ((WifiManager)service.GetSystemService(Context.WifiService))
                               .CreateWifiLock(WifiMode.Full, "mywifilock");
            if (_mediaPlayer == null)
            {
                _mediaPlayer = new MediaPlayer();

                _mediaPlayer.SetWakeMode(_musicService.ApplicationContext,
                                         Android.OS.WakeLockFlags.Partial);
                _mediaPlayer.SetOnPreparedListener(this);
                _mediaPlayer.SetOnCompletionListener(this);
                _mediaPlayer.SetOnErrorListener(this);
                _mediaPlayer.SetOnSeekCompleteListener(this);
            }
        }
コード例 #24
0
ファイル: UxContext.cs プロジェクト: Crul/Rogueskiv
        public UxContext(
            string windowTitle,
            IUxConfig uxConfig,
            string imagesPath,
            string audiosPath,
            string fontsPath
            )
        {
            Title    = windowTitle;
            UxConfig = uxConfig;
            OnWindowResize(uxConfig.ScreenSize);

            var sdlWindowFlags = SDL.SDL_WindowFlags.SDL_WINDOW_RESIZABLE;

            if (uxConfig.Maximized)
            {
                sdlWindowFlags |= SDL.SDL_WindowFlags.SDL_WINDOW_MAXIMIZED;
            }

            SDL.SDL_Init(SDL.SDL_INIT_VIDEO | SDL.SDL_INIT_AUDIO);
            SDL_ttf.TTF_Init();

            Window = SDL.SDL_CreateWindow(
                windowTitle,
                SDL.SDL_WINDOWPOS_CENTERED,
                SDL.SDL_WINDOWPOS_CENTERED,
                ScreenSize.Width, ScreenSize.Height,
                sdlWindowFlags
                );

            WRenderer = SDL.SDL_CreateRenderer(Window, -1, 0);
            SDL.SDL_SetRenderDrawColor(WRenderer, 0, 0, 0, 0);
            SDL.SDL_SetRenderDrawBlendMode(WRenderer, SDL.SDL_BlendMode.SDL_BLENDMODE_BLEND);

            SDL_mixer.Mix_OpenAudio(44100, SDL_mixer.MIX_DEFAULT_FORMAT, 2, 2048);

            TextureProvider = new TextureProvider(WRenderer, imagesPath);
            AudioProvider   = new AudioProvider(audiosPath);
            FontProvider    = new FontProvider(fontsPath);
        }
コード例 #25
0
        void OnGUI()
        {
            GUI.backgroundColor = Color.clear;
            foreach (Button button in buttons)
            {
                button.calc();
                if (GUI.Button(new Rect(button.X, button.Y, button.Width, button.Height), button.DefaultImage) && isEnabled)
                {
                    switch (button.Id)
                    {
                    case "level_select":
                        isEnabled = true;
                        AudioProvider.getInstance().playAudio("Standard Button");
                        SceneManager.LoadScene("Menu_level_select");
                        break;

                    case "audio_mute":
                        PlayerPrefs.SetInt("audio_mute", 1);
                        AudioProvider.getInstance().stopBackground();
                        setButtons();
                        return;

                    case "audio_unmute":
                        PlayerPrefs.SetInt("audio_mute", 0);
                        setButtons();
                        AudioProvider.getInstance().playBackground();
                        break;

                    case "credits":
                        isEnabled = true;
                        AudioProvider.getInstance().playAudio("Standard Button");
                        SceneManager.LoadScene("Menu_credits");

                        break;
                    }
                }
            }
        }
コード例 #26
0
        protected override void OnShown(EventArgs e)
        {
            if (_provider == null)
            {
                _provider = AudioProvider.Create(null);
                if (_provider != null)
                {
                    _provider.Attach(this);
                }
                else
                {
                    btnPlay.Enabled = false;
                }
            }

#if LOOP_SELECTION_DIALOG_LIB
            // _sourceStream is already populated by the constructor.
            LoadAudio("Internal audio");
            btnBrowse.Visible = false;
#else
            if (_audioSource == null)
            {
                if (!LoadAudio())
                {
                    Close();
                    return;
                }
            }
            else if (!LoadAudio(_audioSource))
            {
                Close();
                return;
            }
#endif

            base.OnShown(e);
        }
コード例 #27
0
        public IEnumerator Tick()
        {
            active = true;
            while (current < data.Length)
            {
                if (getPrefab().transform.parent == null)
                {
                    setParent();
                }
                while (needRotation())
                {
                    getPrefab().transform.parent.Rotate(getRotation() * speed);
                    yield return(null);
                }
                //hier komt plof geluid
                AudioProvider.getInstance().playAudio("Plof");
                resetPiece();
                current++;
            }

            //@dyhart hier is het level finished
            AudioProvider.getInstance().playAudio("Complete");
            active = false;
        }
コード例 #28
0
        protected override void OnShown(EventArgs e)
        {
            if (_provider == null)
            {
                _provider = AudioProvider.Create(null);
                if (_provider != null)
                {
                    _provider.Attach(this);
                }
                else
                {
                    btnPlay.Enabled = false;
                }
            }

            if (_initialStream != null)
            {
                LoadAudio("Internal audio");
                btnBrowse.Visible = false;
            }
            else if (_audioSource == null)
            {
                if (!LoadAudio())
                {
                    Close();
                    return;
                }
            }
            else if (!LoadAudio(_audioSource))
            {
                Close();
                return;
            }

            base.OnShown(e);
        }
コード例 #29
0
 public void OnPointerClick(PointerEventData eventData)
 {
     AudioProvider.getInstance().playAudio("Standard Button");
     SceneManager.LoadScene("Menu_start");
 }
コード例 #30
0
 public void OnPointerClick(PointerEventData eventData)
 {
     this.transform.parent.transform.parent.GetComponent <Popup>().OutAnimation();
     GameMode.getCurrentLevel().setLocked(false);
     AudioProvider.getInstance().playAudio("Standard Button");
 }