Re: S32_LE format

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

 



On Thu, 13 Mar 2008 17:12:47 +0100
John Sigler <linux.kernel@xxxxxxx> wrote:

> John Sigler wrote:
> 
> > I experimented with the following command:
> > 
> > $ arecord -vv -M -r 48000 -f S32_LE -t raw -d 60 -D hw /tmp/out
> > 
> > which gave the following output:
> > 
> > Recording raw data '/tmp/out' : Signed 32 bit Little Endian, Rate 48000 
> > Hz, Mono
> > Hardware PCM card 0 'HDSPM MADI' device 0 subdevice 0
> > Its setup is:
> >   stream       : CAPTURE
> >   access       : MMAP_NONINTERLEAVED
> >   format       : S32_LE
> >   subformat    : STD
> >   channels     : 1
> >   rate         : 48000
> >   exact rate   : 48000 (48000/1)
> >   msbits       : 24
> >   buffer_size  : 8192
> >   period_size  : 4096
> >   period_time  : 85333
> >   tstamp_mode  : NONE
> >   period_step  : 1
> >   avail_min    : 4096
> >   start_threshold  : 1
> >   stop_threshold   : 8192
> >   silence_threshold: 0
> >   silence_size : 0
> >   boundary     : 1073741824
> > 
> > AFAIU, S32_LE means that each sample is a 32-bit signed quantity stored 
> > least-significant byte first, right?
> > 
> > e.g. -2 (0xfffffffe) is stored as "fe ff ff ff" and 1 is stored as
> > "01 00 00 00" right?
> > 
> > The dump of the beginning /tmp/out follows:
> > 
> > 00000000  00 00 a5 f5 08 00 43 f6  08 00 bc f6 00 00 20 f7
> > 00000010  08 00 9a f7 00 00 3e f8  00 00 11 f9 08 00 f2 f9
> > 00000020  00 00 a9 fa 08 00 42 fb  08 00 e7 fb 08 00 6b fc
> > 00000030  08 00 ae fc 00 00 f6 fc  00 00 75 fd 08 00 f3 fd
> > 00000040  00 00 31 fe 08 00 41 fe  00 00 62 fe 00 00 b5 fe
> > 00000050  00 00 30 ff 08 00 c2 ff  00 00 47 00 08 00 80 00
> > 00000060  00 00 65 00 00 00 47 00  00 00 63 00 08 00 ab 00
> > 00000070  00 00 f9 00 08 00 0c 01  08 00 c4 00 00 00 60 00
> > 00000080  08 00 1a 00 00 00 c3 ff  00 00 2d ff 08 00 7e fe
> > 00000090  00 00 d5 fd 00 00 2f fd  00 00 95 fc 00 00 03 fc
> > 000000a0  08 00 66 fb 00 00 d7 fa  08 00 6b fa 08 00 01 fa
> > 000000b0  08 00 91 f9 00 00 41 f9  00 00 e9 f8 08 00 4e f8
> > 000000c0  00 00 c4 f7 00 00 89 f7  00 00 2a f7 08 00 43 f6
> > 000000d0  08 00 f9 f4 00 00 81 f3  08 00 0f f2 08 00 ce f0
> > 000000e0  08 00 81 ef 08 00 08 ee  08 00 b2 ec 00 00 7e eb
> > 000000f0  08 00 27 ea 00 00 d4 e8  00 00 bd e7 00 00 b6 e6
> > 
> > The first sample is stored as 00 00 a5 f5.
> > Does this represent the value 0xf5a50000?
> > 
> > For the majority of samples, the first two bytes are 00 00.
> > Is this because the input stream was, in fact, a 16-bit stream?
> > 
> > For the rest of the samples, the first two byte are 08 00.
> > Why don't all the samples start with 00 00?
> > Does this sequence 08 00 have a special meaning?
> 
> Would anyone care to venture a guess?
> 
> Regards.
> 
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> Alsa-user mailing list
> Alsa-user@xxxxxxxxxxxxxxxxxxxxx
> https://lists.sourceforge.net/lists/listinfo/alsa-user
> 

I suggest to take another computer or signal generator and feed into
the card in question something predictable as sine wave with reasonable
amplitude - will above noise, safely below distortion.

If the "08 00" phenomenon persists, file a bug.

Regards,
  Sergei.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
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