Špatný zvuk mikrofonu (Ubuntu 13.10)

flack

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #15 kdy: 13. 01. 2014, 08:53:12 »
Dobre rano. Ak som spravne pochopil pana dustin-a. Tak pri zadani prikazu "arecord Root.wav" dostavam nasledovny vypis v /proc/asound/IM/pcm0c/sub0/hw_params

Citace
cat /proc/asound/IM/pcm0c/sub0/hw_params
access: MMAP_INTERLEAVED
format: S16_LE
subformat: STD
channels: 1
rate: 16000 (16000/1)
period_size: 16000
buffer_size: 32000

skusil som aj "arecord -f cd Root.wav" kedy je rate nastavene na 44100 Hz no vy vypisu v /proc/asound/IM/pcm0c/sub0/hw_params je to rovnake ako v predchadzajucom pripade.

Citace
cat /proc/asound/IM/pcm0c/sub0/hw_params
access: MMAP_INTERLEAVED
format: S16_LE
subformat: STD
channels: 1
rate: 16000 (16000/1)
period_size: 16000
buffer_size: 32000

Pulse audio som este nevypinal. Vecer som sa sice o to pokusal, ale po killnuti sa stale obnovoval.


dustin

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #16 kdy: 13. 01. 2014, 09:03:28 »
Výborně, už se někam dostáváme. Takže tvoje zvukovka nahrává na 16kHz (resp. je o to požádána). Teď je potřeba zjistit, zda to opravdu jede přes PA (ale velice pravděpodobně ano).

Spusť ten arecord s parametrem -v (verbose) a koukni do výstupu, jaké zařízení použije. Tipuji si na plugin pulse. Pak se posuneme dál.

Výhodou linuxu je snadná diagnostika, tohle by na win vůbec nešlo.

flack

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #17 kdy: 13. 01. 2014, 09:16:19 »
Asi mas pravdu vidim tu PulseAudio PCM I/O Plugin.

Citace
arecord -v -f cd Root.wav
Nahrávanie WAVE 'Root.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
ALSA <-> PulseAudio PCM I/O Plugin
Its setup is:
  stream       : CAPTURE
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 44100
  exact rate   : 44100 (44100/1)
  msbits       : 16
  buffer_size  : 22050
  period_size  : 5512
  period_time  : 125000
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 5512
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 22050
  silence_threshold: 0
  silence_size : 0
  boundary     : 6206523236469964800

dustin

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #18 kdy: 13. 01. 2014, 09:32:04 »
A jak při takovém nahrávání vypadá ten hw_params? Opravdu je to 16kHz/16bit/mono?

Hoď sem ještě výstup lsusb -v, ať vidíme, co tvoje kamerová zvukovka nabízí. Je možné, že opravdu více neumí a PA si to špatně přebere.

Pak bychom otestovali nahrávání rovnou přes alsu, abychom vyloučili vliv PA.




flack

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #19 kdy: 13. 01. 2014, 09:49:16 »
ten hw_params pri "arecord -v -f cd Root.wav" je uplne rovnaky, ako v predchadzajucich pripadoch preto som ho sem ani nedaval.

tu je vystup z lsusb -v http://pastie.org/8628690


dustin

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #20 kdy: 13. 01. 2014, 10:05:58 »
Jojo, dle toho usb dumpu umí zvukovka jen nahrávání v 16kHz/16bit/1kanál. Takže je přepnutá správně. Teď je otázkou, proč to PA vrací takhle špatně.

Zkusme nahrávat přímo přes alsu:

arecord -v -D hw:IM,0 -r 16000 -c 1 -f S16_LE 16-16-1.wav

Výsledný 16-16-1.wav by měl být správně.

Pak můžeš otestovat automatickou konverzi přímo v alse:

arecord -v -D plughw:IM,0 -f cd 441-16-2.wav

Výsledný 441-16-2.wav by měl být taky OK.

Pak bychom zkusili PA přinutit jet na výstupu v 16kHz, co to udělá.

arecord -v -D hw:IM,0 -r 16000 -c 1 -f S16_LE 16-16-1.wav

dustin

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #21 kdy: 13. 01. 2014, 10:09:52 »
Ten poslední arecord tam samozřejmě být nemá :)

flack

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #22 kdy: 13. 01. 2014, 10:19:24 »
skusil som  "arecord -v -D hw:IM,0 -r 16000 -c 1 -f S16_LE 16-16-1.wav"
vysledok bol ale rovnaky  :-[ nahravka je stale zle, vo vypisu hw_params sa akurat zmenilo period_size a buffer_size
Citace
cat /proc/asound/IM/pcm0c/sub0/hw_params
access: RW_INTERLEAVED
format: S16_LE
subformat: STD
channels: 1
rate: 16000 (16000/1)
period_size: 2000
buffer_size: 8000

pri "arecord -v -D plughw:IM,0 -f cd 441-16-2.wav" je vypis hw_params rovnaky:
Citace
cat /proc/asound/IM/pcm0c/sub0/hw_params
access: RW_INTERLEAVED
format: S16_LE
subformat: STD
channels: 1
rate: 16000 (16000/1)
period_size: 2000
buffer_size: 8000

dustin

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #23 kdy: 13. 01. 2014, 11:49:30 »
Aha, takže je docela možné, že zvukovka reportuje něco jiného, než ve skutečnosti dělá. Prosím nahraj něco třeba tím prvním příkazem (přímo na zařízení hw:...) a postni se někam ke stažení. Díky.

flack

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #24 kdy: 13. 01. 2014, 12:00:23 »
Nepotrebuje niekto nadabovat nejaku rozpravku?  ::)http://ulozto.cz/xSV43pPD/16-16-1-wav

dustin

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #25 kdy: 13. 01. 2014, 12:09:34 »
Výsledok je stále rovnaký, ale v 8kHz to zní správně. Zkus si pustit

sox 16-16-1.wav -t raw - | sox -t raw -c 1 -b 16 -s -r 8000 - -t alsa

Lol Phirae

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #26 kdy: 13. 01. 2014, 12:10:25 »
Doporučil bych zlikvidovat tu pulseaudio sračku.  ::)

suxi

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #27 kdy: 13. 01. 2014, 12:13:09 »
Výhodou linuxu je snadná diagnostika, tohle by na win vůbec nešlo.

Uzivatel je vzdy velmi poteseny z takejto "snadnej diagnostiky" problemov ako je tento, ked chce akurat tak s niekym volat cez skype... na Windows by taketo nieco riesit hlavne vobec nemusel.

flack

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #28 kdy: 13. 01. 2014, 12:21:46 »
dustin: To mas pravdu uz to znie ako ja. Lenze co spravit?  odstranit to pulseaudio alebo sa to da aj nejak inak?

dustin

Re:Špatný zvuk mikrofonu (Ubuntu 13.10)
« Odpověď #29 kdy: 13. 01. 2014, 12:26:11 »
V alse je už roky oprava:

http://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/tree/sound/usb/format.c#n193

Bylo to tam už v roce 2010 (po refaktoringu, před tím nemám historii), takže by mělo stačit jen nasadit novější alsu (tj. jádro). Jaké máš?