Re: arecord format-conversion

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi, Chris.

arecord -D plughw:0,4 --dump-hw-params
Recording WAVE 'stdin' : Unsigned 8 bit, Rate 8000 Hz, Mono
HW Params of device "plughw:0,4":
--------------------
ACCESS:  MMAP_INTERLEAVED MMAP_NONINTERLEAVED MMAP_COMPLEX RW_INTERLEAVED RW_NON
INTERLEAVED
FORMAT:  S8 U8 S16_LE S16_BE U16_LE U16_BE S24_LE S24_BE U24_LE U24_BE S32_LE S3
2_BE U32_LE U32_BE FLOAT_LE FLOAT_BE FLOAT64_LE FLOAT64_BE MU_LAW A_LAW IMA_ADPC
M S24_3LE S24_3BE U24_3LE U24_3BE S20_3LE S20_3BE U20_3LE U20_3BE S18_3LE S18_3B
E U18_3LE U18_3BE
SUBFORMAT:  STD
SAMPLE_BITS: [4 64]
FRAME_BITS: [4 640000]
CHANNELS: [1 10000]
RATE: [4000 4294967295)
PERIOD_TIME: (31 64000]
PERIOD_SIZE: (0 274877907)
PERIOD_BYTES: (0 4294967295)
PERIODS: (0 4294967295]
BUFFER_TIME: [1 4294967295]
BUFFER_SIZE: [1 1649267441]
BUFFER_BYTES: [1 4294967295]
TICK_TIME: ALL
--------------------
arecord: set_params:1361: Unable to install hw params:
ACCESS:  RW_INTERLEAVED
FORMAT:  U8
SUBFORMAT:  STD
SAMPLE_BITS: 8
FRAME_BITS: 8
CHANNELS: 1
RATE: 8000
PERIOD_TIME: 64000
PERIOD_SIZE: 512
PERIOD_BYTES: 512
PERIODS: 6
BUFFER_TIME: 384000
BUFFER_SIZE: 3072
BUFFER_BYTES: 3072
TICK_TIME: 0

A similar error occurs in this case, fails with the U8 format.



El jue., 7 nov. 2019 a las 2:20, chris hermansen
(<clhermansen@xxxxxxxxx>) escribió:
>
> Alex and list;
>
> On Wed, Nov 6, 2019 at 1:26 PM Alex Vazquez <avazquez.dev@xxxxxxxxx> wrote:
>>
>> Hi all.
>> I'm using ALSA to configure a dmic. My dmic only support format S32_LE
>> but I also need support format S16_LE.
>>
>> arecord -D hw:0,4 --dump-hw-params
>> Recording WAVE 'stdin' : Unsigned 8 bit, Rate 8000 Hz, Mono
>> HW Params of device "hw:0,4":
>> --------------------
>> ACCESS:  RW_INTERLEAVED
>> FORMAT:  S32_LE
>> ......
>> Available formats:
>> - S32_LE
>
>
> What about trying
>
> arecord -D plughw:0,4 --dump-hw-params
>>
>>
>> If I understood correctly, If I use "plug" plugin, it create an
>> automatic format-conversion. To do so, I create a custom asounf.conf
>> using the "plug" plugin.
>>
>> pcm.!default {
>>         type asym
>>         playback.pcm {
>>                 type plug
>>                 slave.pcm "hw:0,0"
>>         }
>>         capture.pcm {
>>                 type plug
>>                 slave.pcm "hw:0,4"
>> }
>>
>> For a quick example, I used the arecord command. First I use S32_LE
>> and it works.
>> arecord -r 16000 -f S32_LE -c 1 -d 3 rec.wav
>> Recording WAVE 'rec.wav' : Signed 32 bit Little Endian, Rate 16000 Hz....
>>
>> But when I try rec a audio with format S16_LE, It fails.
>>
>> arecord -r 16000 -f S16_LE -c 1 -d 3 rec.wav
>> Recording WAVE 'rec.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono
>> arecord: set_params:1361: Unable to install hw params:
>> ACCESS:  RW_INTERLEAVED
>> FORMAT:  S16_LE
>> SUBFORMAT:  STD
>> SAMPLE_BITS: 16
>> FRAME_BITS: 16
>> CHANNELS: 1
>> RATE: 16000
>> PERIOD_TIME: 32000
>> PERIOD_SIZE: 512
>> PERIOD_BYTES: 1024
>> PERIODS: 6
>> BUFFER_TIME: 192000
>> BUFFER_SIZE: 3072
>> BUFFER_BYTES: 6144
>>
>> Is it possible to make an automatic format conversion?
>> Is there any way to solve this problem?
>>
>>
>> _______________________________________________
>> Alsa-user mailing list
>> Alsa-user@xxxxxxxxxxxxxxxxxxxxx
>> https://lists.sourceforge.net/lists/listinfo/alsa-user
>
>
>
> --
> Chris Hermansen · clhermansen "at" gmail "dot" com
>
> C'est ma façon de parler.


_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user




[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux