[Live-devel] streaming WAV files...

Matthew Romaine Matthew.Romaine at jp.sony.com
Mon Apr 12 16:19:08 PDT 2004

Hi Ross,

1) Just a little confused by your explanation (I'm new to 
networking...).  From your explanation, I gather network order is 
big-endian.  You state that this conversion for a WAV file was 
*incorrect* to do "...before streaming them".  Yet your last line on 
what the *correct* procedure to do also says "... convert ... from 
little to big-endian order prior to streaming."  Curious why there 
would be any endian conversion at all, seeing as that should be the 
client's responsibility before placing it in some audio buffer, no?

2) In setting up my development environment, I had to change all *.hh 
files to *.h (since my IDE -- XCode -- doesn't let users define 
extension mappings).  This of course has meant having to change all 
*.cpp files to #include the new filename and recompiling the libraries 
myself.  Not that big a deal for a single user, but I'm wondering if 
there were any plans to use the more conventional *.hxx or just *.h?  
I'm not sure what your future plans are w.r.t. the liveMedia package, 
but from the initial search I did to find a networking API to work off 
of, I found liveMedia the most intuitive.  I would think OSX developers 
interested in at least cross-*nix compatibility might appreciate the 
extension change.  I also noticed one of your ToDo's is to get a 
D'Oxygen resource going; I would be happy to start adding 
D'Oxygen-style comments to your source as I work along it, but only if 
the header-extension issue is resolved.  As it stands, I have to diff 
all files from a new source release to figure out which ones to rename 
and import into my project file.


On 2004/04/10, at 3:25, Ross Finlayson wrote:

> OK, I've now found and fixed the problem.
> The problem was, indeed, byte-order related.  After reading the 
> samples from the WAV file, I was converting them from 'host' to 
> 'network' (i.e., big-endian) byte order before streaming them.  This 
> was incorrect, because the samples are always stored in the file in 
> little-endian order.  The correct thing to do was to convert them from 
> little to big-endian order prior to streaming.
> I have now installed a new version (2004.04.09) of the "LIVE.COM 
> Streaming Media" code that fixes the problem.  "testWAVAudioStreamer" 
> and "testOnDemandRTSPServer" should now stream WAV audio files 
> correctly, even on big-endian machines (like the Mac).
> Matt, thanks for bringing our attention to this problem.
> 	Ross Finlayson
> 	<http://www.live.com/>
> _______________________________________________
> live-devel mailing list
> live-devel at lists.live.com
> http://lists.live.com/mailman/listinfo/live-devel
Matthew M.I. Romaine
IMNC Audio Codec Group
Sony Corporation
phone: 03-5448-6065
fax: 03-5448-5617

More information about the live-devel mailing list