Hi Thomas,
On 30.01.2018 14:05, Thomas Brand wrote:
this sounds like a SR mismatch but it's not
obvious.
Yes, most likely.
before you debug more, can you try to record
with
https://github.com/kmatheussen/jack_capture ?
This results in the same issue. I've started jack_capture with the
following parameters:
jack_capture -b 32 -c 2 -d 10 -fn /tmp/test-jack_capture.wav \ -p
system:capture_1 \
-p system:capture_2
The resulting file:
https://filebin.ca/3pykjU8lo2jO/test-jack_capture.wav
A simple test is to connect system:capture to
system:playback and see
if you get what's expected on your headphone/speakers.
Yes, but unfortunately it's a virtual device running on a headless
server without any speakers attached. The playout would go into the
Livewire+ network where I would have to re-capture it from another
system.
you can try to run jack with --verbose, maybe it gives another hint.
I did that already, see the pastbin links below:
>>>> # Starting jackd
>>>> # Verbose output at:
https://pastebin.com/YzHEGSnR
>>>> jackd -d alsa -d hw:0
>>>>> # Capture via jackrec
>>>>> # This results in a too high pitched WAV file
>>>>> # Verbose output at:
https://pastebin.com/PCnymKLA
you can run jack_bufsize to be absolutely sure it runs
at the correct SR.
jack_bufsize
buffer size = 1024 sample rate = 48000
you can play a file in jack, record that and see if
it's ok. if that's the
case, most probably jack is running ok.
I did that with mpg123, which works correctly (see below)
>>>> I've also tried to play an mp3
file via mpg123 over jack (without the
>>>> involvement of the Alsa device) and record it again with jackrec.
>>>> This works and sounds correct.
the alsa device could be the issue. you could try to
start a dummy jack
and add the alsa device with alsa_in to see if it makes a difference.
also make sure that you use a vanilla jack (git clone
https://github.com/jackaudio/jack2/) to rule out any other side-effect.
OK, I will compile from source later an re-run the captures.
Thanks again
Chris
On Tue, January 30, 2018 12:35, Christian Affolter
wrote:
Hi everyone,
capturing from ALSA capture devices via the Jack2 sound server
(1.9.12),
results in too high pitched wav files (they are playing "too fast" and
sound like the "chipmunks"). If I run the same capture directly from
the ALSA devices (without Jack involved), everything sounds as
expected without any problems.
Audio examples:
Capture via jackrec:
https://filebin.ca/3pyMxBw8cexQ/test-jackrec.wav
Capture via arecord:
https://filebin.ca/3pyOPjcKGym5/test-arecord.wav
The device in question is a "virtual" Axia-ALSA (Livewire+) audio
device on CentOS 7 which operates at a sample rate of 48kHz and a bit
depth of either 16 or 32. As far as I can see, the sample rate and
format detection on the Jack side looks correct. I'm therefore looking
for some guidance on how to further debug this, I most certainly
missed something obvious.
I've also tried to play an mp3 file via mpg123 over jack (without the
involvement of the Alsa device) and record it again with jackrec.
This
works and sounds correct.
Here is what I've tried and what the environment looks like:
# Capabilities of the Axia-ALSA device
arecord -D hw:0 --dump-hw-params
Recording WAVE 'stdin' : Unsigned 8 bit, Rate 8000 Hz, Mono
HW Params of device "hw:0":
--------------------
ACCESS: MMAP_INTERLEAVED RW_INTERLEAVED
FORMAT: S16_LE S32_LE
SUBFORMAT: STD
SAMPLE_BITS: [16 32]
FRAME_BITS: [16 256]
CHANNELS: [1 8]
RATE: 48000
PERIOD_TIME: (41 1365334)
PERIOD_SIZE: [2 65536]
PERIOD_BYTES: [64 131072]
PERIODS: [1 1024]
BUFFER_TIME: (41 1365334)
BUFFER_SIZE: [2 65536]
BUFFER_BYTES: [64 131072]
TICK_TIME: ALL
--------------------
arecord: set_params:1299: Sample format non available
Available formats:
- S16_LE
- S32_LE
# Capture via arecord directly from the ALSA device (without jackd)
# This works as expected and the WAV file sounds fine
arecord -D hw:0 -c 2 -d 10 -r 48000 -f S32_LE -v /tmp/test-arecord.wav
Recording WAVE '/tmp/test-arecord.wav' : Signed 32 bit Little Endian,
Rate 48000 Hz, Stereo
Hardware PCM card 0 'Axia' device 0 subdevice 0
Its setup is:
stream : CAPTURE access : RW_INTERLEAVED format :
S32_LE
subformat : STD channels : 2 rate : 48000 exact rate
:
48000 (48000/1)
msbits : 32 buffer_size : 16384 period_size : 4096 period_time
:
85333
tstamp_mode : NONE tstamp_type : MONOTONIC period_step : 1
avail_min
:
4096
period_event : 0 start_threshold : 1 stop_threshold : 16384
silence_threshold: 0
silence_size : 0 boundary : 4611686018427387904 appl_ptr : 0
hw_ptr : 0
# playing arecord wav (via my local notebook's HDA Intel PCH
# device), sounds correct
aplay test-arecord.wav
Playing WAVE 'test-arecord.wav' : Signed 32 bit Little Endian, Rate
48000 Hz, Stereo
# Starting jackd
# Verbose output at:
https://pastebin.com/YzHEGSnR
jackd -d alsa -d hw:0
jackdmp 1.9.12 Copyright 2001-2005 Paul Davis and others. Copyright
2004-2016 Grame.
Copyright 2016-2017 Filipe Coelho.
jackdmp comes with ABSOLUTELY NO WARRANTY This is free software, and
you are welcome to redistribute it under certain conditions; see the
file COPYING for details
no message buffer overruns no message buffer overruns no message
buffer overruns JACK server starting in realtime mode with priority 20
self-connect-mode is "Don't restrict self connect requests"
audio_reservation_init Acquire audio card Audio0 creating alsa driver
... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit
configuring for 48000Hz, period = 1024 frames (21.3 ms), buffer = 2
periods ALSA: final selected sample format for capture: 32bit integer
little-endian ALSA: use 2 periods for capture ALSA: final selected
sample format for playback: 32bit integer little-endian ALSA: use 2
periods for playback
# Capture via jackrec
# This results in a too high pitched WAV file
# Verbose output at:
https://pastebin.com/PCnymKLA
jackrec -f /tmp/test-jackrec.wav -d 10 -b 32 system:capture_1
system:capture_2
# playing jackrec wav (via my local notebook's HDA Intel PCH
# device), sounds incorrect
aplay test-jackrec.wav
Playing WAVE 'test-jackrec.wav' : Signed 32 bit Little Endian, Rate
48000 Hz, Stereo
System environment:
Distribution: CentOS 7.4.1708
Kernel: 3.10.0-693.17.1.el7.x86_64
ALSA Utils: 1.1.3
Jackd: 1.9.12
The jackd was rebuilt from Fedora source RPM to be able to test with
the latest version:
https://build.opensuse.org/package/show/home:radiorabe:audio/jack-aud
io-c onnection-kit
Many thanks and best regards
Chris
_______________________________________________
Jack-Devel mailing list
Jack-Devel(a)lists.jackaudio.org
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org