Re: audio/L16
John Stirling <[email protected]>
| Newsgroups | gmane.comp.multimedia.helix.devel |
|---|---|
| Message-ID | <[email protected]> |
Eric Hyche wrote:
> Ohhh.. so "audio/L16;rate=48000;channels=2" is
> the Content-Type coming from an http server?
>
Yes. This is what the DNLA test suite gives us.
> I guess I had thought that audio/L16 was the stream
> mime type coming from an RTSP server, in which case
> it would go directly to the pcm renderer.
>
> I think you are right - I think we take the Content-Type
> string directly and don't strip whatever is past the
> ";". You might check the HTTP spec to see what
> it says about Content-Type. I've never seen parameters
> munged onto a mime type like that.
>
> But your fix sounds essentially correct - strip the
> ";rate=48000;channels=2" from the Content-Type so that
> the stream gets picked up by the au file format. The
> rate and channels should get changed to headers in
> the request and then you would need to add code in the
> au file format to look for the parameters in the
> request headers and add them to the stream header,
> since the PCM renderer will be looking for those
> to be set in the stream header of the audio/L16 stream.
>
I can persuade the auffrormat plugin to get loaded with this change to
hxflsrc.cpp:
(hxflrcs.cpp)
if (pMimeType)
{
printf("HXFileSource::AttempToLoadFilePlugin 7\n");
// Ignore anything following a ';' when doing the plugin lookup
char *pTemp = strchr((char*)pMimeType, ';');
if (pTemp)
*pTemp = 0x00;
pPlugin2Handler3->FindGroupOfPluginsUsingStrings(PLUGIN_CLASS,
PLUGIN_FILEFORMAT_TYPE,
PLUGIN_FILEMIMETYPES, (char*)pMimeType, 0, 0, m_pFileFormatEnumerator);
// Restore full mimetype - this is what gets passed into fileformat
if (pTemp)
*pTemp = ';';
}
I was hoping that would pick out the au fformat and also pass the full
mimetype through to it..
Can you explain in a but more detail how the sample rate and channels
should get passed in to the au fformat ? (ie expand on 'headers in the
request')
> Eric
>
> =============================================
> Eric Hyche ([email protected])
> Technical Lead
> RealNetworks, Inc.
>
>
>> -----Original Message-----
>> From: John Stirling [mailto:[email protected]]
>> Sent: Tuesday, June 10, 2008 12:24 PM
>> To: [email protected]
>> Cc: [email protected]
>> Subject: Re: [Helix-client-dev] audio/L16
>>
>> I've been tracking this down today. Not quite worked it out,
>> but getting closer..
>>
>> A mimetype of audio/L16 seems to end up in aufformat. It then
>> fails in there due to lack of a valid header.
>>
>> If I hard code the sample rate etc in aufformat then the file
>> can play (via pcm/renderer).
>>
>> A mimetype of audio/L16;rate=48000;channels=2 just ends up
>> with a NO_RENDERER/FILEFORMAT error presumably because it
>> checks for a match against the complete mimetype string
>> rather than just the stuff before the ';'.
>>
>> So, I think I need to make the extended mimetype result in
>> the aufformat being loaded and then I need to extract the
>> sample rate etc from the stuff after the ';'.
>>
>> Does that sound correct ? Also, if you think that should be
>> supported already let me know as I can't see it.
>>
>> John
>>
>>
>>
>> Eric Hyche wrote:
>>
>> John,
>>
>> I would think these streams should play in
>> datatype/wav/pcm/renderer.
>>
>> Eric
>>
>> =============================================
>> Eric Hyche ([email protected])
>> Technical Lead
>> RealNetworks, Inc.
>>
>>
>>
>> -----Original Message-----
>> From: [email protected]
>> [mailto:[email protected]] On
>> Behalf Of John Stirling
>> Sent: Tuesday, June 10, 2008 4:57 AM
>> To: [email protected]
>> Subject: Re: [Helix-client-dev] audio/L16
>>
>> fyi - some sample mime types returned by the
>> dlna tester:
>>
>> audio/L16;rate=48000;channels=2
>>
>> audio/L16;rate=44100;channels=1:DLNA.ORG_PN=LPCM;DLNA.ORG_FLAG
>> S=81100000000000000000000000000000
>>
>> audio/L16;rate=44100;channels=2:DLNA.ORG_PN=LPCM;DLNA.ORG_OP=01
>>
>>
>> John Stirling wrote:
>>
>> We need to be able to play audio/L16
>> content (for DLNA
>> compliance).
>>
>> A sample file is here:
>> http://copper.reciva.com/audiofiles/B-LPCM-1.pcm
>> (obtained via
>> http://issues.simplecenter.org/browse/SC-1074)
>>
>> Would you expect helix to be able to
>> play this content
>> ? If so, is there any HELIX_FEATURE we might be
>> missing ?
>>
>> I can see audio/L16 referenced in the
>> code, but haven't
>> dug much further than that.
>>
>> We have audplin.so built and can play
>> .au, .wav, .aiff content.
>>
>> https://datatype.helixcommunity.org/
>> only mentions:
>>
>>
>> * Uncompressed PCM from .wav,
>> avi, .aiff or .au
>> files and standard RTP streams
>> * PCM a-law and u-law from .wav,
>> avi or .au files
>> and standard RTP streams
>>
>>
>> John
>>
>>
>>
>>
>>
>>
>>
>> ________________________________
>>
>>
>> _______________________________________________
>> Helix-client-dev mailing list
>> [email protected]
>>
>>
>> http://lists.helixcommunity.org/mailman/listinfo/helix-client-dev
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>
>
_______________________________________________
Helix-client-dev mailing list
[email protected]
http://lists.helixcommunity.org/mailman/listinfo/helix-client-dev