Гнусный звук
При операциях записи на любой диск или badblocks на флешку в наушниках появляется гнусный тягучий звук.
При операциях записи на любой диск или badblocks на флешку в наушниках появляется гнусный тягучий звук.
плата kontron, проц A9, поддержка alsa включенна при попытке проиграть файл на устройстве выпадает ошибку:
aplay 01.wav
Playing WAVE '01.wav' : Signed 16 bit Little Endian, Ratasoc: platform imx-pcm-audio.0 hw params failed
e 44100 Hz, Stereo
aplay: set_params:1166: Unable to install hw params:
ACCESS: RW_INTERLEAVED
FORMAT: S16_LE
SUBFORMAT: STD
SAMPLE_BITS: 16
FRAME_BITS: 32
CHANNELS: 2
RATE: 44100
PERIOD_TIME: (92879 92880)
PERIOD_SIZE: 4096
PERIOD_BYTES: 16384
PERIODS: 4
BUFFER_TIME: (371519 371520)
BUFFER_SIZE: 16384
BUFFER_BYTES: 65536
TICK_TIME: 0
[root@buildroot sound]# dmesg | grep -i soc
print_constraints: vddsoc: 725 <--> 1300 mV at 1200 mV fast normal
RPC: Registered named UNIX socket transport module.
mxc_hdmi_soc mxc_hdmi_soc.0: MXC HDMI Audio
asoc: wm8903-hifi <-> imx-ssi.0 mapping ok
asoc: mxc-spdif <-> imx-spdif-dai.0 mapping ok
imx-hdmi-soc-dai: probe of imx-hdmi-soc-dai.0 failed with error -12
Initializing XFRM netlink socket
asoc: platform imx-pcm-audio.0 hw params failed
cat /etc/asound.conf
pcm.!default {
type hw
card wm8903audio
}
ctl.!default {
type hw
card wm8903audio
}
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: wm8903audio [wm8903-audio], device 0: HiFi wm8903-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: imxspdif [imx-spdif], device 0: IMX SPDIF mxc-spdif-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
ogg123 01.ogg
Audio Device: Advanced Linux Sound Architecture (ALSA) output
Playing: 01.ogg
Ogg Vorbis stream: 2 channel, 44100 Hz
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.front
ao_alsa WARNING: Unable to opeasoc: platform imx-pcm-audio.0 hw params failed
n surround playback. Trying default device...
ao_alsa ERROR: Unable to open ALSA device 'default' for playback => Invalid argument
ERROR: Cannot open device alsa.
ls /dev/snd
by-path/ controlC1 pcmC0D0p pcmC1D0p timer
controlC0 pcmC0D0c pcmC1D0c seq
Пересобрал систему с udev, до этого использовал статичесикий /dev, создал /dev/null, /dev/zero, /dev/console, /dev/ttymxc0. Надеялся , что остальное за меня создаст udev, но он как то скромненько:
[root@buildroot rules.d]# ls /dev -la
total 20
drwxr-xr-x 6 root root 4096 Jan 1 01:23 ./
drwxr-xr-x 18 root root 4096 Jan 1 1970 ../
drwxr-xr-x 2 root root 4096 Jan 1 01:19 char/
crw------- 1 root root 5, 1 Jan 1 01:58 console
lrwxrwxrwx 1 root root 13 Jan 1 01:58 fd -> /proc/self/fd/
-rw-r--r-- 1 root root 38 Jan 1 01:58 kmsg
srw-rw-rw- 1 root root 0 Jan 1 00:51 log=
crw-rw-rw- 1 root root 1, 3 Jan 1 01:58 null
drwxr-xr-x 2 root root 0 Jan 1 00:00 pts/
drwxrwxrwx 2 root root 40 Jan 1 00:51 shm/
lrwxrwxrwx 1 root root 15 Jan 1 01:58 stderr -> /proc/self/fd/2
lrwxrwxrwx 1 root root 15 Jan 1 01:58 stdin -> /proc/self/fd/0
lrwxrwxrwx 1 root root 15 Jan 1 01:58 stdout -> /proc/self/fd/1
crw-rw---- 1 root tty 207, 16 Jan 1 02:17 ttymxc0
crw-rw-rw- 1 root root 1, 5 Jan 1 01:58 zero
Теперь не могу к устройству подключится по ssh, так как он не создает ничегов /dev/pts, звуковуху тоже не видит и разделы для mmcblk0, sd* тоже не создал. Правила для этого есть, в режиме debug выдаются сообщения. Вероятно я чего то недопонимаю.
Создал ext4 : mke2fs -t ext4 -O ^has_journal /dev/mmcblk0pX
Посовтуйте какие параметры вписать для fstab что бы минимизировать износ mmc? И не уронить сстему при внезапных отключениях?
Есть ли возможность использовать сабж на linux? есть ли примеры успеха?
Необходимо собрать phonon-backend-* под ARM, с cmake я просто отчаялся уже это сделать, можно ли каким то менее полезненным способом перевести проект на ./configure && make?
В большинстве случаев для кросс-сборки программ с ./configure && make мне достаточно указать --host=arm-linux-gnueabi, как быть под cmake, неужто переназначать все переменные в ccmake? собираю qt-gstreamer под ARM.
Безумно интересно, есть ли кто под этим WM, просто в галерее давно сриншотов не видел с сабжем, мож кроме автара уже им никто и не пользуется?
Есть ли реализации для Linux протокола PRP/HSR, если дадите ссылочку буду благодарен.
Настраивал hdmi на gt610, результат не понравился, решил откатится обратно, но теперь звук воспроизводится только в flash player, а в других приложениях нет. aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
sysdefault:CARD=NVidia
HDA NVidia, ALC889 Analog
Default Audio Device
front:CARD=NVidia,DEV=0
HDA NVidia, ALC889 Analog
Front speakers
surround40:CARD=NVidia,DEV=0
HDA NVidia, ALC889 Analog
4.0 Surround output to Front and Rear speakers
surround41:CARD=NVidia,DEV=0
HDA NVidia, ALC889 Analog
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=NVidia,DEV=0
HDA NVidia, ALC889 Analog
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=NVidia,DEV=0
HDA NVidia, ALC889 Analog
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=NVidia,DEV=0
HDA NVidia, ALC889 Analog
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
hdmi:CARD=NVidia_1,DEV=0
HDA NVidia, HDMI 0
HDMI Audio Output
hdmi:CARD=NVidia_1,DEV=1
HDA NVidia, HDMI 1
HDMI Audio Output
Скрипт который вызывается с /dev/init.d при старте системы.
LD_LIBRARY_PATH=/opt/Trolltech/QtEmbedded-4.8.5-arm/lib:/opt/tslib
TSLIB_CALIBFILE=/etc/pointercal
TSLIB_CONFFILE=/etc/ts.conf
TSLIB_PLUGINDIR=/opt/tslib/ts
TSLIB_DEVICE="/dev/input/event0"
QWS_MOUSE_PROTO="tslib:/dev/input/event0"
PATH=/home/ritm/scripts:$PATH
export LD_LIBRARY_PATH
export TSLIB_CALIBFILE
export TSLIB_CONFFILE
export TSLIB_PLUGINDIR
export TSLIB_DEVICE
if [ -e /home/ritm/HMI05/hmi05.pid ]; then
rm /home/ritm/HMI05/hmi05.pid
echo "hmi05 pid file remove"
fi
if [ -x /home/ritm/HMI05/hmi05 ] & [ ! -e /home/ritm/HMI05/bitstop ]; then
start-stop-daemon -mbp /home/ritm/HMI05/hmi05.pid -u ritm -Sx /home/ritm/HMI05/hmi05 -- "DejaVu Serif" "/home/ritm/HMI05" "-qws"
else
echo "bitstop is exist, automode off!"
fi
Программа запукается, почему то из под пользователя root хотя стоит "-u ritm", и тачскрин не работает, вероятно потому что не применяются переменные для tslib. Если запускать прогу руками после логина, то все работает. Как запускать программу сразу после загрузки? Иксов нет, прога работает во фреймбуффере.
Какие стандарты поддерживает GNAT входящий в GCC-4.8.2, не могу понять как посмотреть.
Завел на mail.ru в 2004 году. До сих пор активно пользуюсь, спама бывало приходилось разгребать лопатой.
Есть некое встраиваемое устройство с дискретным входом, с помощью которого планируется синхронизировать время с точностью до 1мс, какие есть алгоритмы синхронизации времени по дискретному входу и где бы про них почитать?
У кого нибудь есть опыт использования принтера Pantum P3100DN в ОС Linux? Цена привлекательная и двусторонняя печать, какие есть минусы?
устройство lm4f120. Хотел настроить тактирование с внешнего осцилятора :
SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_INT30);
Оригинальный код был:
SysCtlClockSet(SYSCTL_SYSDIV_4|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|
SYSCTL_OSC_MAIN);
В итоге устройство работает, светодиод на GPIOF мигает, но прошить устройство через lm4flash уже не получается , прога просто подвисает. Strace выдает:
ioctl(6, USBDEVFS_SUBMITURB, 0x83ee350) = 0
poll([{fd=3, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLOUT}], 3, 60000) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {15182, 961145940}) = 0
poll([{fd=3, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLOUT}], 3, 60000) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {15243, 16035700}) = 0
poll([{fd=3, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLOUT}], 3, 60000) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {15303, 49094798}) = 0
poll([{fd=3, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLOUT}], 3, 60000) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {15363, 86382284}) = 0
poll([{fd=3, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLOUT}], 3, 60000) = 0 (Timeout)
[/clock]
Видимо случилось несогласование частот. Есть какой нибудь вариант очистить флеш на устройстве?Часто приходиться собирать софт(чаще в buildroot и т.п.), параллельно с этим занимаешься за компом другими делами, хотелось бы что бы при окончании компиляции(или неудачи) выдавался какой звуковой сигнал или какое то оповещение которое бы давало понять что процесс закончен.
Что бы под линуксом без проблем заводился. Попробовал спаять, да только руки после праздников ходуном ходят :)
Привет, сильно не бейте, я не программист. Подскажите как передать в функцию указатель на функцию, развлечения ради пытаюсь сделать небольшой таймер, что бы с помощью него выполнять произвольную функцию в заданный промежуток времени:
void mstimer(void(*)(),double ms);
void mstimer(void (*func),double ms){
long int starttime = clock();
while(clock()-starttime<ms*(CLOCKS_PER_SEC/1000)){
starttime * 1;
};
mstimer(*func,ms);
}
void func2() {
qDebug() << "Hello Crazy World!!!";
}
int main()
{
mstimer(*func2,1000);
return 0;
}
Собственно сабж. Помнится кто-то давным давно на лоре говорил о терминалах на ЖД-станциях. Но конечно же хоть, это было и давно, они не первые.
| ← назад |