22 / 14 / 8
Регистрация: 15.11.2020
Сообщений: 80
|
|
1 | |
Расскажите о System.Media, либо о другом способе проигрывания аудио23.11.2020, 10:48. Показов 2775. Ответов 17
Пожалуйста расскажите кое-что о System.Media,а именно есть ли возможность контроля громкости при данном способе воспроизведения аудио?
Если нет, то расскажите об альтернативном способе проигрывания аудио(желательно в формате mp3),+ покажите контроль громкости, если такая функция есть)
0
|
23.11.2020, 10:48 | |
Ответы с готовыми решениями:
17
Библиотеки для проигрывания Аудио Программа для проигрывания аудио Нет звука в media во время проигрывания фильмов Проигрывания музыкальных файлов при помощи Windows Media Player |
54 / 44 / 11
Регистрация: 15.07.2011
Сообщений: 160
|
|
23.11.2020, 11:03 | 2 |
System.Media использует довольно старую функцию PlaySound. Напрямую контроля громкости там нет, разве что через WASAPI-сессию регулировать глобальную громкость для текущего процесса.
Альтернативные - например NAudio: https://github.com/naudio/NAudio Контроль громкости там есть (DirectSoundOut.Volume)
1
|
22 / 14 / 8
Регистрация: 15.11.2020
Сообщений: 80
|
|
23.11.2020, 17:01 [ТС] | 3 |
Спасибо, попробую, если что спрошу ещё)
0
|
22 / 14 / 8
Регистрация: 15.11.2020
Сообщений: 80
|
||||||
23.11.2020, 23:38 [ТС] | 4 | |||||
И снова здравствуй) Спасибо за помощь, но не мог бы ты мне показать как это использовать?)Я просто новичок, и бы ло бы хорошо если бы ты всё более-менее подробно расписал и показал, надеюсь поймёшь)
Вот то, что я нашел по поводу применения:
0
|
54 / 44 / 11
Регистрация: 15.07.2011
Сообщений: 160
|
|
24.11.2020, 06:04 | 5 |
В файле точно ADPCM с нужными параметрами? Если не уверены в формате файла, лучше использовать AudioFileReader, который его автоматически определяет. Вот пример: https://github.com/naudio/NAud... soleApp.md Громкость тут соответственно у WaveOutEvent нужно регулировать.
0
|
22 / 14 / 8
Регистрация: 15.11.2020
Сообщений: 80
|
|
24.11.2020, 10:51 [ТС] | 8 |
Ну смотрите, у меня есть один и тот же трек и в mp3 и в wav.Но всё же я вас прошу покажите на примере как вы сами используете naudio(как пользователь "I can")- мне так лучше поймётся, а если распишите, то будет просто супер!
Добавлено через 2 минуты I can, Спасибо вам за наглядный пример!
0
|
54 / 44 / 11
Регистрация: 15.07.2011
Сообщений: 160
|
||||||
24.11.2020, 11:06 | 9 | |||||
Дык расписывать нечего, воспроизведение файла это буквально 5 строк, которые даже не надо писать самому, а просто скопировать из первого же примера в документации. Перенесу его сюда, на случай если ссылка умрет:
AudioFileReader пытается автоматически определить формат по содержанию файла и прочитать его, если есть кодеки для него. И для WAV, и для MP3 кодеки будут. Если надо исключить автоопределение, используем вместо AudioFileReader конкретный класс, например WaveFileReader, Mp3FileReader. Громкость здесь регулируется вызовом outputDevice.Volume = ... (от 0.0f до 1.0f). Попробуйте применить этот пример, если что-то не получается, спросите. А совет использовать Windows Media Player кстати неплохой, раз мы в рамках WinForms. Так получается без сторонних библиотек будет.
1
|
22 / 14 / 8
Регистрация: 15.11.2020
Сообщений: 80
|
|
24.11.2020, 21:54 [ТС] | 10 |
Вот сейчас просто супер рассказали, сейчас пойду гляну, если что напишу) Огромное спасибо!
Добавлено через 4 часа 24 минуты I can, И снова здравствуйте) Всё отлично получилось с вашим вариантом, но всё же у меня есть вопрос: а можно ли как-то контролировать начало и конец песни, т.е - узнавать когда песня закончилась. Объясню зачем мне это- я создал форму при запуске которой должна играть рандомная песня из списка(в писке 10 песен(пока)).Как это можно реализовать?
0
|
help
4253 / 3856 / 782
Регистрация: 13.04.2015
Сообщений: 8,531
|
||||||||||||||||
24.11.2020, 22:49 | 11 | |||||||||||||||
Сообщение было отмечено Volodya_drv как решение
Решение
Естественно. Набросаю пример немного попозже.
Добавлено через 1 минуту Можно список создать, перемешать и плееру скормить. Добавлено через 21 минуту Например, создание и воспроизведение плейлиста из двух треков (у меня они одинаковые)
Так можно получать текущую позицию в секундах, например по тикам таймера
Поставьте точку после Ctlcontrols, и подсказка много чего полезного покажет Добавлено через 16 минут Статус
1
|
22 / 14 / 8
Регистрация: 15.11.2020
Сообщений: 80
|
||||||
24.11.2020, 23:17 [ТС] | 12 | |||||
I can, Спасибо! А как постоянно обновлять данные?(желательно каждую секунду)
вот что я попытался придумать
0
|
22 / 14 / 8
Регистрация: 15.11.2020
Сообщений: 80
|
|
24.11.2020, 23:27 [ТС] | 14 |
Действительно, не подумал - извиняюсь(.
string s = axWindowsMediaPlayer1.status;- имеет два статуса true и false? просто на label отражается подключение
0
|
help
4253 / 3856 / 782
Регистрация: 13.04.2015
Сообщений: 8,531
|
|
24.11.2020, 23:31 | 16 |
подключение
воспроизведение остановлено готово и тому подобное Добавлено через 1 минуту Потому что в цикле не успевал у вас обновляться label, в таймере будет хорошо
1
|
22 / 14 / 8
Регистрация: 15.11.2020
Сообщений: 80
|
|
24.11.2020, 23:48 [ТС] | 17 |
Огромное спасибо вам за всю вашу помощь!!
1
|
22 / 14 / 8
Регистрация: 15.11.2020
Сообщений: 80
|
|
24.11.2020, 23:59 [ТС] | 18 |
I can, надеюсь я вам ещё не надоел, но не могли бы вы ответить на ещё один интересующий меня вопрос(он уже в новой теме)?)
Расскажите всё о таблицах в windows form
0
|
24.11.2020, 23:59 | |
24.11.2020, 23:59 | |
Помогаю со студенческими работами здесь
18
Подключение флеш-модуля для проигрывания видео/аудио. Вместо проигрывания аудио файла система выдает короткий гудок Проверка проигрывания музыки через bass в другом приложении System.Media.SoundPlayer System.Windows.Media.Animation.AnimationException: 'Не удается анимировать свойство "Left" для "System.Windows.Controls Воспроизведение аудио друг за другом Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |