# Undocumented: Audio PCM Sample Format

**URL:** <https://forum.sierrawireless.com/t/undocumented-audio-pcm-sample-format/4464>\
**Category:** Documentation feedback\
**Created:** [June 2, 2010, 7:01am UTC](https://forum.sierrawireless.com/t/undocumented-audio-pcm-sample-format/4464 "2010-06-02T07:01:13Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![awneil](https://avatars.discourse-cdn.com/v4/letter/a/49beb7/32.png) [@awneil](https://forum.sierrawireless.com/u/awneil)\
**Post date:** [June 2, 2010, 7:01am UTC](https://forum.sierrawireless.com/t/undocumented-audio-pcm-sample-format/4464/1 "2010-06-02T07:01:13Z")

</div>

The format of the data samples - signed or unsigned - for the ADL Audio Service is not documented.

To make matters worse, the sample code misleadingly uses u8\* where, I think, void\* would be more appropriate.

See [https://forum.sierrawireless.com/t/play-generated-voice-stream-in-a-call/3225/50](https://forum.sierrawireless.com/t/play-generated-voice-stream-in-a-call/3225/50) and following.

The sample code also seems to be misleading in treating “bytes” and “samples” as synonymous - which is, obviously, not true for 16-bit samples!

---

<div class="post-metadata">

**Author:** ![liuyang](https://avatars.discourse-cdn.com/v4/letter/l/ba9def/32.png) [@liuyang](https://forum.sierrawireless.com/u/liuyang)\
**Post date:** [July 13, 2010, 6:30am UTC](https://forum.sierrawireless.com/t/undocumented-audio-pcm-sample-format/4464/2 "2010-07-13T06:30:22Z")

</div>

unsigned 16bit mono little endian  
usually can be u8

---

<div class="post-metadata">

**Author:** ![awneil](https://avatars.discourse-cdn.com/v4/letter/a/49beb7/32.png) [@awneil](https://forum.sierrawireless.com/u/awneil)\
**Post date:** [July 13, 2010, 7:01am UTC](https://forum.sierrawireless.com/t/undocumented-audio-pcm-sample-format/4464/3 "2010-07-13T07:01:45Z")

</div>

> [@liuyang](#):
>
> unsigned 16bit mono

No, that is not supported by my experience: [play generated voice stream in a call - #50 by davidc](https://forum.sierrawireless.com/t/play-generated-voice-stream-in-a-call/3225/50) - the data is signed.

> [@](#):
>
> little endian

Again, this is something that should be properly documented: [Endian-ness Undocumented - #5 by yuantuh](https://forum.sierrawireless.com/t/endian-ness-undocumented/534/5)

> [@](#):
>
> usually can be u8

That is an obsolete idiom.

For ANSI ‘C’, void\* should be used for a “generic” pointer to arbitrary data.

---

<div class="post-metadata">

**Author:** ![liuyang](https://avatars.discourse-cdn.com/v4/letter/l/ba9def/32.png) [@liuyang](https://forum.sierrawireless.com/u/liuyang)\
**Post date:** [July 13, 2010, 8:35am UTC](https://forum.sierrawireless.com/t/undocumented-audio-pcm-sample-format/4464/4 "2010-07-13T08:35:36Z")

</div>

I mean:  
by using GlodWave (a famous sound tool for Windows)  
select “PCM unsigned 16bit mono little endian” can handle its data very easy  
use .WAV file built by this option, can be replayed by module correctly  
if use signed 16b, sound replay error

i trust Glodwave

---

<div class="post-metadata">

**Author:** ![awneil](https://avatars.discourse-cdn.com/v4/letter/a/49beb7/32.png) [@awneil](https://forum.sierrawireless.com/u/awneil)\
**Post date:** [July 13, 2010, 8:47am UTC](https://forum.sierrawireless.com/t/undocumented-audio-pcm-sample-format/4464/5 "2010-07-13T08:47:05Z")

</div>

> [@liuyang](#):
>
> if use signed 16b, sound replay error

But my data is clearly signed - and it “works fine”! 😕

Which all goes to show how important it is that Sierra Wireless get this documented properly!!
