LINUX.ORG.RU

[alsa][ladspa][dmix]deadbeef реально мёртвый!

 ,


1

0

короче дано

00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01)
	Subsystem: ASRock Incorporation Device 3662
	Flags: bus master, fast devsel, latency 0, IRQ 16
	Memory at f96fc000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [50] Power Management version 2
	Capabilities: [60] MSI: Enable- Count=1/1 Maskable- 64bit+
	Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
	Kernel driver in use: HDA Intel
вот такой asound.conf
pcm.!default {
    type             plug
    slave.pcm       "ladspa"
}

pcm.ladspa { 
type ladspa 
slave.pcm "plug:dmixer"
path "/usr/lib/ladspa" 
plugins [ 
{ 
label Eq2x2
filename "/usr/lib/ladspa/caps.so" 
input { 
controls [ 32 32 0 0 0 0 0 0 10 18 ] 
} 
}
{
label tap_limiter
filename "/usr/lib/ladspa/tap_limiter.so"
input {
controls [ 100500 -14 ]
}
}
] 
} 
 
pcm.dmixer  {
   type dmix
   ipc_key 1018
   slave {
      pcm "hw:0,0"
      format S16_LE
   }
}

ctl.dmixer {
   type hw
   card 0
   device 0
}
pcm.dsp {
    type plug
    slave.pcm "dmixer"  
}
т.е. хотеть и ladspa и dmix
а вот теперь гемор:
qmmp
aplay
(S)Mplayer
поют вместе - всё хорошо
deadbeef же никак не хочет петь в дефолт - чего ему не хватает?
так же и chromium и clementine не хотят

★★★★

Пробуй вот так:

pcm.ladspa {

type ladspa
slave.pcm x
path '/usr/lib/ladspa'

plugins [
  {
  label Eq2x2
  filename '/usr/lib/ladspa/caps.so'
  input { controls [ 32 32 0 0 0 0 0 0 10 18 ] }
  }
  {
  label tap_limiter
  filename '/usr/lib/ladspa/tap_limiter.so'
  input { controls [ 100500 -14 ] }
  }
]

}

pcm.dmixer {
  type dmix
  ipc_key 1018
  slave {
    pcm 'hw:0,0'
    format S16_LE
  }
}

pcm.!default { type plug slave.pcm ladspa }
pcm.x { type plug slave.pcm dmixer }

pcm.dsp { type plug slave.pcm x }
ctl.dmixer { type hw card 0 device 0 }
с alsaequal не проверял, но с mbeq так работает.

anon_666
()
Ответ на: комментарий от anon_666

1 в 1
выхлоп aplay

megabaks@desktop ~ $ aplay -v /usr/share/sounds/alsa/Front_Center.wav 
Playing WAVE '/usr/share/sounds/alsa/Front_Center.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono
Plug PCM: Linear Integer <-> Linear Float conversion PCM (FLOAT_LE)
Its setup is:
  stream       : PLAYBACK
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 1
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 16
  buffer_size  : 12032
  period_size  : 6016
  period_time  : 125333
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 6016
  period_event : 0
  start_threshold  : 12032
  stop_threshold   : 12032
  silence_threshold: 0
  silence_size : 0
  boundary     : 1577058304
Slave: LADSPA PCM
  Playback:
    Policy: none
    Filename: /usr/lib/ladspa/caps.so
    Plugin Name: C* Eq2x2 - stereo 10-band equalizer
    Plugin Label: Eq2x2
    Plugin Unique ID: 2594
    Instances:
      Depth: 0
         InChannels: 0, 1
         InPorts: 0 "in:l", 1 "in:r"
         OutChannels: 0, 1
         OutPorts: 12 "out:l", 13 "out:r"
    Control input port initial values:
      2 "31 Hz" = 32,00000000
      3 "63 Hz" = 32,00000000
      4 "125 Hz" = 0,00000000
      5 "250 Hz" = 0,00000000
      6 "500 Hz" = 0,00000000
      7 "1 kHz" = 0,00000000
      8 "2 kHz" = 0,00000000
      9 "4 kHz" = 0,00000000
      10 "8 kHz" = 10,00000000
      11 "16 kHz" = 18,00000000
    Policy: duplicate
    Filename: /usr/lib/ladspa/tap_limiter.so
    Plugin Name: TAP Scaling Limiter
    Plugin Label: tap_limiter
    Plugin Unique ID: 2145
    Instances:
      Depth: 1
         InChannels: 0
         InPorts: 3 "Input"
         OutChannels: 0
         OutPorts: 4 "Output"
    Control input port initial values:
      0 "Limit Level [dB]" = 100500,00000000
      1 "Output Volume [dB]" = -14,00000000
    Control output port initial values:
      2 "latency" = 600,00000000
  Capture:
Its setup is:
  stream       : PLAYBACK
  access       : MMAP_NONINTERLEAVED
  format       : FLOAT_LE
  subformat    : STD
  channels     : 1
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 32
  buffer_size  : 12032
  period_size  : 6016
  period_time  : 125333
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 6016
  period_event : 0
  start_threshold  : 12032
  stop_threshold   : 12032
  silence_threshold: 0
  silence_size : 0
  boundary     : 1577058304
Slave: Plug PCM: Linear Integer <-> Linear Float conversion PCM (S16_LE)
Its setup is:
  stream       : PLAYBACK
  access       : MMAP_NONINTERLEAVED
  format       : FLOAT_LE
  subformat    : STD
  channels     : 1
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 32
  buffer_size  : 12032
  period_size  : 6016
  period_time  : 125333
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 6016
  period_event : 0
  start_threshold  : 12032
  stop_threshold   : 12032
  silence_threshold: 0
  silence_size : 0
  boundary     : 1577058304
Slave: Route conversion PCM (sformat=S16_LE)
  Transformation table:
    0 <- 0
    1 <- 0
Its setup is:
  stream       : PLAYBACK
  access       : MMAP_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 1
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 16
  buffer_size  : 12032
  period_size  : 6016
  period_time  : 125333
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 6016
  period_event : 0
  start_threshold  : 12032
  stop_threshold   : 12032
  silence_threshold: 0
  silence_size : 0
  boundary     : 1577058304
Slave: Direct Stream Mixing PCM
Its setup is:
  stream       : PLAYBACK
  access       : MMAP_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 16
  buffer_size  : 12032
  period_size  : 6016
  period_time  : 125333
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 6016
  period_event : 0
  start_threshold  : 12032
  stop_threshold   : 12032
  silence_threshold: 0
  silence_size : 0
  boundary     : 1577058304
Hardware PCM card 0 'HDA Intel' device 0 subdevice 0
Its setup is:
  stream       : PLAYBACK
  access       : MMAP_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 16
  buffer_size  : 12032
  period_size  : 6016
  period_time  : 125333
  tstamp_mode  : ENABLE
  period_step  : 1
  avail_min    : 6016
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 1577058304
  silence_threshold: 0
  silence_size : 1577058304
  boundary     : 1577058304
  appl_ptr     : 0
  hw_ptr       : 747256
megabaks@desktop ~ $
т.е. все плагины работают и так и эдак - а говядина тупит - часть трейса
time(NULL)                              = 1295457538
mmap2(NULL, 737280, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xabf42000
mmap2(NULL, 8392704, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0xab741000
mprotect(0xab741000, 4096, PROT_NONE)   = 0
clone(child_stack=0xabf41494, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0xabf41bd8, {entry_number:6, base_addr:0xabf41b70, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0xabf41bd8) = 10701
accept(8, 0x8064840, [110])             = -1 EAGAIN (Resource temporarily unavailable)
nanosleep({0, 50000000}, NULL)          = 0
time(NULL)                              = 1295457538
nanosleep({0, 50000000}, cannot set parameters (Недопустимый аргумент)
streamer: failed to start playback; output plugin doesn't work
NULL)          = 0
time(NULL)                              = 1295457538
write(5, "A", 1)                        = 1
futex(0x8b144ac, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x8b144ac, FUTEX_WAIT_PRIVATE, 2, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x8b144ac, FUTEX_WAKE_PRIVATE, 1) = 0
nanosleep({0, 50000000}, NULL)          = 0
time(NULL)                              = 1295457538
write(5, "A", 1)                        = 1
futex(0x8b144ac, FUTEX_WAKE_PRIVATE, 1) = 1
nanosleep({0, 50000000}, NULL)          = 0
time(NULL)                              = 1295457538
последний кусок time-time так и повторяется потом

megabaks ★★★★
() автор топика
Ответ на: комментарий от anon_666

>С моим конфигом? Он отличается от твоего.
ну да - с твоим
не сильно он и отличается принципиально

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

Собрал caps - тоже работает. С твоим конфигом даёт вот что:

... Slave PCM not usable
... Broken configuration for this PCM: no configurations available

Проблема в том, что оно внутри не может согласовать параметры сэмпла, насколько я понимаю; у меня помогает добавление «буферного» pcm.x.

anon_666
()
Ответ на: комментарий от anon_666
megabaks@desktop ~ $ aplay -v /usr/share/sounds/alsa/Front_Center.wav 
ALSA lib pcm_direct.c:1616:(snd1_pcm_direct_parse_open_conf) The field ipc_gid must be a valid group (create group audio)
aplay: main:654: audio open error: Недопустимый аргумент
megabaks@desktop ~ $

про какую он группу говорит я уже хз

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

если не dmix, а dmixer - то работает, ном говядина по-прежнему не хочет

megabaks ★★★★
() автор топика

Ну сколько тебе можно повторять: купи ты уже нормальную звуковую карту. Не удивлюсь, если ты к этому дерьму еще и 5.1 подключил :)

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

5.1 сгорело
но оно таки умеет 5.1
и да - иди лесом-полем...и приходи ко мне с Juli@ как минимум - всё - жду! :3

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

:)

Блин, да дешевенький SB Live 5.1 намного лучше всякого встроенного г. Конечно, до Juli@ ему далеко, но для средней домашней системы 5.1 - в самый раз. И, опять-таки, с аппаратным микшированием...

// кстати, 5.1 там скорее всего было не аппаратное, а софтовое...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от anon_666

Там не шесть ЦАПов, а два (иногда даже вообще один), сигнал на каналы идет поочередно.

Eddy_Em ☆☆☆☆☆
()
Ответ на: :) от Eddy_Em

>кстати, 5.1 там скорее всего было не аппаратное, а софтовое...
да не «скорее всего» а точно
под виндой сия звукавуха не умеет
да и дырок всего 3 - выхлоп - ввод и микрофон

megabaks ★★★★
() автор топика
Ответ на: комментарий от Eddy_Em

про линь...нашёл коммит ещё аж от 2008-го
так что думаю норм

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

Не надо в меня кидаться, если она хреново звучать будет - я с такой картой ни разу в жизни не сталкивался...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от megabaks

Погуглил. Если не врут, то именно этот чип в этой ЗК установлен. Ну, или поищите более приличные изображения, чтобы видно было, что там за чип.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em
Audio Processor:
ASUS AV100 High-Definition Sound Processor (Max. 192KHz/24bit) 
24-bit D-A Converter of Digital Sources:
Cirrus-Logic CS4398*1 for Front-Out (120dB SNR, Max. 192kHz/24bit), Cirrus-Logic CS4362A*1 for other 6 channels (114dB SNR, Max. 192kHz/24bit 
24-bit A-D Converter for Analog Inputs:
Cirrus-Logic CS5361* 1 (114dB SNR, Max. 192kHz/24bit 
megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

Попытки нагуглить спецификации этого «asus hd audio processor» и навели меня на какой-то форум, где объяснялось, что на самом деле это - перемаркированный CMI8788 :)

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от megabaks

А отдельные CS4398 и CS4398 как я понял, и есть тот самый AC97.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

хм...да - нагуглил «„At the heart of the Xonar Essence STX is the ASUS AV100 audio processor, which is based on the C-Media CMI8788 OxygenHD processor ...“

megabaks ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.