Форум программистов, компьютерный форум, киберфорум
C#: WPF, UWP и Silverlight
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.90/41: Рейтинг темы: голосов - 41, средняя оценка - 4.90
28 / 28 / 8
Регистрация: 28.01.2013
Сообщений: 211
1

Воспроизведение звука

03.04.2013, 16:48. Просмотров 8248. Ответов 12
Метки нет (Все метки)

Доброго времени суток всем! Подскажите пожалуйста, как в WPF воспроизвести несколько звуков одновременно?
Т.е. есть фоновый звук, который начинает играть при запуске и при нажатии на кнопку, воспроизводится другой звук, но при этом не прерывает воспроизведение фона. во как))
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.04.2013, 16:48
Ответы с готовыми решениями:

Воспроизведение звука по нажатию кнопки
Здравствуйте помогите пожалуйста, мне нужно сделать воспроизведение звука по нажатию кнопки. Я...

Воспроизведение звука без использования MediaElement
MediaElement слишком тяжелый, хотелось бы что то другое. SoundPlayer не подходит так как там нету...

Остановить воспроизведение звука, если кнопка не нажата
Кто может подсказать в таком вопросе? - Кнопки на форме привязаны к кнопкам клавиатуры, к ним в...

Воспроизведение звука
Кратко что имеется: - Имеется буфер с данными которые надо воспроизвести - Сохранять буфер в...

12
Эксперт .NET
4320 / 1981 / 386
Регистрация: 27.03.2010
Сообщений: 5,432
Записей в блоге: 1
04.04.2013, 09:28 2
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using System;
using System.Windows;
using System.Windows.Media;
 
namespace Wpf_Sound
{
    /// <summary>
    /// Логика взаимодействия для MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        private MediaPlayer _mpBgr;
        private MediaPlayer _mpCurSound;
 
        public MainWindow()
        {
            InitializeComponent();
            _mpBgr = new MediaPlayer();          
            _mpCurSound = new MediaPlayer();
        }
 
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            _mpBgr.Open(new Uri(@"D:\Музыка\Moonbeam – Moon Magic 050 (December 2012).mp3", UriKind.Absolute));
            _mpBgr.Play();
            _mpBgr.Position = TimeSpan.FromMinutes(11.45);
        }
 
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            _mpCurSound.Open(new Uri(@"D:\Прочее\Звуки\GryphonRiderPissed1.wav", UriKind.Absolute));
            _mpCurSound.Play();
        }
    }
}
0
28 / 28 / 8
Регистрация: 28.01.2013
Сообщений: 211
04.04.2013, 10:40  [ТС] 3
Casper-SC, спасибо большое, попробую.

Добавлено через 24 минуты
Casper-SC, Сделал все именно так, ошибки не вылетает, но звук не воспроизводится)
0
Эксперт .NET
4320 / 1981 / 386
Регистрация: 27.03.2010
Сообщений: 5,432
Записей в блоге: 1
04.04.2013, 10:52 4
Цитата Сообщение от Eclipze Посмотреть сообщение
Casper-SC, Сделал все именно так, ошибки не вылетает, но звук не воспроизводится)
По-ка-жи код... Не факт что сделал прям всё именно так и пути правильно указал и прочее.

Добавлено через 1 минуту
Без кода я просто прочитал тот факт, что у тебя не работает и закрыл вкладку, а ты так будешь ждать помощи до второго пришествия. Просто я не закрыл вкладку . Устал уже повторять про код. И не огрызок, а чтобы было понятно, что откуда вызывается.

Добавлено через 3 минуты
Может у тебя звук на колонках выключен или дрова на звук не стоят
0
28 / 28 / 8
Регистрация: 28.01.2013
Сообщений: 211
04.04.2013, 10:54  [ТС] 5
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Media;
using System.Windows.Forms;
 
namespace WpfApplication1
{
    /// <summary>
    /// Логика взаимодействия для MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        private MediaPlayer _mpBgr;
        private MediaPlayer _mpCurSound;
 
        public MainWindow()
        {
            InitializeComponent();
            _mpBgr = new MediaPlayer();
            _mpCurSound = new MediaPlayer();
        }
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            _mpBgr.Open(new Uri(@"C:/Documents and Settings/Eclipse/Мои документы/Visual Studio 2010/Projects/WpfApplication1/WpfApplication1/bin/Debug/Inc/Sounds/Sea.wav", UriKind.Absolute));
            _mpBgr.Play();
        }
 
        private void button1_Click(object sender, RoutedEventArgs e)
        {
            _mpCurSound.Open(new Uri(@"C:/Documents and Settings/Eclipse/Мои документы/Visual Studio 2010/Projects/WpfApplication1/WpfApplication1/bin/Debug/Inc/Sounds/HerbLaugh.wav", UriKind.Absolute));
            _mpCurSound.Play();
        }
    }
}
Вот код. ДАже пути оставил)
0
Эксперт .NET
4320 / 1981 / 386
Регистрация: 27.03.2010
Сообщений: 5,432
Записей в блоге: 1
04.04.2013, 11:02 6
Цитата Сообщение от Eclipze Посмотреть сообщение
ДАже пути оставил)
Кто так пути указывает? Раз файлов проекте, то нужно прописывать относительные пути. Иначе после перемещения проги в другую папку, она не будет работать.

Добавлено через 26 секунд
C#
1
_mpCurSound.Open(new Uri(@"/Inc/Sounds/HerbLaugh.wav", UriKind.Relative));
Добавлено через 1 минуту
А Windows Media Player на компе установлен?

Добавлено через 3 минуты
Эти музыкальные файлы копируются в выходной каталог при построении? http://msdn.microsoft.com/ru-r... .100).aspx (читай там раздел "Заметки").
Цитата Сообщение от Casper-SC Посмотреть сообщение
А Windows Media Player на компе установлен?
Кстати, не факт что оно нужно. Не помню точно.
0
28 / 28 / 8
Регистрация: 28.01.2013
Сообщений: 211
04.04.2013, 11:04  [ТС] 7
Цитата Сообщение от Casper-SC Посмотреть сообщение
А Windows Media Player на компе установлен?
Конечно.
А пути я уже всяко пробовал, это последний вариант был.
0
Эксперт .NET
4320 / 1981 / 386
Регистрация: 27.03.2010
Сообщений: 5,432
Записей в блоге: 1
04.04.2013, 11:09 8
Цитата Сообщение от Casper-SC Посмотреть сообщение
Эти музыкальные файлы копируются в выходной каталог при построении?
Ответь.
0
28 / 28 / 8
Регистрация: 28.01.2013
Сообщений: 211
04.04.2013, 11:11  [ТС] 9
Цитата Сообщение от Casper-SC Посмотреть сообщение
Эти музыкальные файлы копируются в выходной каталог при построении?
Да.
0
Эксперт .NET
4320 / 1981 / 386
Регистрация: 27.03.2010
Сообщений: 5,432
Записей в блоге: 1
04.04.2013, 11:29 10
Давай через TeamViewer гляну. Просто странно. Но интересно.

Добавлено через 42 секунды
И, кстати, ничего не обещаю, если гляну. Но может и заработает.

Добавлено через 1 минуту
Потом, если найдём, то сюда отпишем в чём была проблема.
0
28 / 28 / 8
Регистрация: 28.01.2013
Сообщений: 211
04.04.2013, 14:07  [ТС] 11
Короче, беда была в WMP он воспроизводил аудио и видео из винды, а с приложения не хотел. Обновил его и все заработало. Это конечно полный писец, что приходится в мултимедиа приложении зависеть от WMP или DirectX, ведь как быть с конечным пользователем, у которого возможно так же не будет обновлен WMP или не будет установлен DirectX.........
0
burning1ife
1439 / 1261 / 293
Регистрация: 21.09.2008
Сообщений: 3,439
Записей в блоге: 9
04.04.2013, 15:40 12
для этого во многих приложениях и играх частенько с игрой идут необходимые компоненты, так что не вижу тут ничего странного или страшного, чтобы вкл. в требования к нормальной работе продукта или вкл. эти компоненты в инсталлятор.
а так, почти ни одна игра не запустится без DirectX.
0
87 / 75 / 38
Регистрация: 11.10.2015
Сообщений: 827
17.01.2017, 14:22 13
Народ, помогите пожалуйста. Как запустить мр3, просто при открытии приложения?
C#
1
2
3
4
5
   public MainWindow()
        {
            InitializeComponent();
            SoundPlayer();
}
C#
1
2
3
4
5
6
  private MediaPlayer player = new MediaPlayer();
        private void SoundPlayer()
        {
            player.Open(new Uri("Resources/Cannon.mp3", UriKind.RelativeOrAbsolute));
            player.Play();
        }
Я вот так сделал и тишина.

Добавлено через 30 минут
Все, вопрос закрыт.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.01.2017, 14:22

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Запись и воспроизведение звука
всем привет! хочу добавить в программу запись и воспроизведение звука, что то типа диктофона, никто...

Воспроизведение звука в службе Windows
Здравствуйте, передо мной стоит задача воспроизведения звуковой сигнализации по условию....

Захват звука с микрофона и воспроизведение
Здравствуйте! Подскажите чем можно брать звук с микрофона, чтоб можно было его передавать по сети и...

Воспроизведение звука в PCM формате
Здравствуйте, помогите, пожалуйста с такой задачей: есть массив значений, представляющий собой звук...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.