Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:1
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Embedded Linux
[Решено]Помогите с ALSA
AGevork
Добавлено 19.01.2015 01:06 Редактировалось 13.03.2015 16:09
0
Сообщение: 1
AGevork
4.71

Пункты: 10580
Регистрация: 14.08.2013
Не могу проиграть wav файл не в своей программе на qt, ни с помощью aplay, и с помощью madplayer. На все попытки получаю одну и ту же ошибку:
Код

alsa lib pcm.c (snd_pcm_recover) underrun occurred

Google.com не помог. Прошу помощи в данном вопросе. mp3 и видео со звуком нормально работает.
Мб не включен какой то пакет из gstreamer нужный для QAudioOutput ?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 19.01.2015 11:05 Сообщение: 2
sasamy
4.70

Пункты: 76642
Регистрация: 14.08.2009
Выложите на файлообменник этот wav
Спуститься к концу Подняться к началу
Персональная информация
AGevork
Добавлено 19.01.2015 11:19 Редактировалось 19.01.2015 11:23 Сообщение: 3
AGevork
4.71

Пункты: 10580
Регистрация: 14.08.2013
Цитата
Выложите на файлообменник этот wav

Вот он, ничего хитрого.
Но дело не конкретно в этом файле а влюбом wav файле.

1.wav
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 19.01.2015 12:11 Сообщение: 4
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Не могу проиграть wav файл не в своей программе на qt, ни с помощью aplay, и с помощью madplayer. На все попытки получаю одну и ту же ошибку:

для полноты картины - что за платформа (АРМ) и система (ОС)?

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
AGevork
Добавлено 19.01.2015 12:30 Сообщение: 5
AGevork
4.71

Пункты: 10580
Регистрация: 14.08.2013
Цитата
Цитата
Не могу проиграть wav файл не в своей программе на qt, ни с помощью aplay, и с помощью madplayer. На все попытки получаю одну и ту же ошибку:

для полноты картины - что за платформа (АРМ) и система (ОС)?

Imx 6D sodimm buildroot 2014.08
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 20.01.2015 04:05 Редактировалось 20.01.2015 04:34 Сообщение: 6
sasamy
4.70

Пункты: 76642
Регистрация: 14.08.2009
Цитата

# aplay 1.wav
Playing WAVE '1.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Mono
# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: imxtlv320 [imx-tlv320], device 0: TLV320AIC23 tlv320aic23-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: imxspdif [imx-spdif], device 0: S/PDIF PCM Playback dit-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: imxhdmisoc [imx-hdmi-soc], device 0: i.MX HDMI Audio Tx hdmi-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0


все играет. Посмотрите тут полезные команды

http://trac.gateworks.com/wiki/ventana/audio
Спуститься к концу Подняться к началу
Персональная информация
AGevork
Добавлено 20.01.2015 11:27 Сообщение: 7
AGevork
4.71

Пункты: 10580
Регистрация: 14.08.2013
Цитата
Цитата

# aplay 1.wav
Playing WAVE '1.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Mono
# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: imxtlv320 [imx-tlv320], device 0: TLV320AIC23 tlv320aic23-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: imxspdif [imx-spdif], device 0: S/PDIF PCM Playback dit-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: imxhdmisoc [imx-hdmi-soc], device 0: i.MX HDMI Audio Tx hdmi-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0


все играет. Посмотрите тут полезные команды

http://trac.gateworks.com/wiki/ventana/audio

Спасибо команды посмотрел=) Решил проблему в aplay добавив пакет alsaconf теперь aplay его воспроизводит.
Но вот проблема осталась QSound и QAudioOutput в Qt все равно молчат. Хотя Код верный 100%(проверил на Desktop).
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 20.01.2015 11:49 Редактировалось 20.01.2015 11:58 Сообщение: 8
sasamy
4.70

Пункты: 76642
Регистрация: 14.08.2009
Не знаю как с виджетами - в QML звук 100% работает, правда я wav не пробовал и он в gstreamer не включен к тому же. Чтобы включить - надо пересобрать gstreamer-plugins-good (вроде больше ничего не надо пересобирать)

-> Target packages
-> Audio and video applications
-> gst-plugins-good
[*] wavparse (*.wav audio)

выйти с онхранением конфига, потом

rm -r output/build/gst-plugins-good-0.10.31
make

Если ничего не выходит - попробуйте удалить на плате

rm /etc/asound.conf

еще попробуйте установить максимальную громкость. Про wav был баг в Qt но его вроде исправили

http://stackoverflow.com/questions/14165608/qt5-qsound-does-not-play-all-wave-files
Спуститься к концу Подняться к началу
Персональная информация
AGevork
Добавлено 20.01.2015 11:58 Редактировалось 20.01.2015 12:03 Сообщение: 9
AGevork
4.71

Пункты: 10580
Регистрация: 14.08.2013
Цитата
Не знаю как с виджетами - в QML 100% работает. Попробуйте удалить на плате

rm /etc/asound.conf

еще попробуйте установить максимальную громкость. Про wav был баг в Qt но его вроде исправили

http://stackoverflow.com/questions/14165608/qt5-qsound-does-not-play-all-wave-files

В документации Qt написано что для работы Qsound нужно:
Код

Qt for Embedded Linux A built-in mixing sound server is used, accessing /dev/dsp directly. Only the WAVE format is supported.


У меня этого девайса нету (в buildroot включена только ALSA)
А что нужно для QAudioOutput? Догадываюсь что проблема растет оттудо же.

Громкость на максимуме .
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 20.01.2015 12:03 Редактировалось 20.01.2015 12:06 Сообщение: 10
sasamy
4.70

Пункты: 76642
Регистрация: 14.08.2009
Помоему это какая-то левая информация, но если нужно - включать поддержку OSS надо в ядре

<*> Sequencer support
<*> OSS Mixer API
<*> OSS PCM (digital audio) API
[*] OSS Sequencer API

-> Device Drivers
-> Sound card support
-> Advanced Linux Sound Architecture

подозрение что левая потому что OSS уже много лет deprecated в Linux, остался только опциональный слой совместимости который через alsa эмулирует устройства OSS (/dev/dsp)
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux