After installing QNX RTP 6.1 I’m having a problem with some code
which worked fine under 6.0. When using stream mode, snd_pcm_plugin_write
fails and returns -ENOTSUP which isn’t even listed as a possible return
value. The same code modified to use block mode works just fine.
The code in question can be found at:
http://nanocrew.net/vlc/aout_qnx.c
card: Creative Soundblaster SbLive.
Thanks in advance.
–
Jon
Jon L. Johansen <jon-qnx@nanocrew.net> wrote:
card: Creative Soundblaster SbLive.
I meant Creative Labs SbLive
–
Jon
Jon L. Johansen <jon-qnx@nanocrew.net> wrote:
After installing QNX RTP 6.1 I’m having a problem with some code
which worked fine under 6.0. When using stream mode, snd_pcm_plugin_write
fails and returns -ENOTSUP which isn’t even listed as a possible return
value. The same code modified to use block mode works just fine.
When the Audio Drivers were rewritten stream mode was not
resupported. Stream mode was not supported because it was
not implemented on all cards. Also the value of stream mode
was futher reduced when we implemented a block mode that
would accept writes of any number of bytes.
With the above being said we are still willing to implement
a stream mode provided:
-
a technical case be made for why an application needs
this mode and block mode can’t be used
-
a definition of stream mode can be defined that is
universal regardless of hardware
“Audio Support” <audio_support@qnx.com> wrote in message
news:9lblj5$qu4$1@nntp.qnx.com…
Jon L. Johansen <> jon-qnx@nanocrew.net> > wrote:
After installing QNX RTP 6.1 I’m having a problem with some code
which worked fine under 6.0. When using stream mode,
snd_pcm_plugin_write
fails and returns -ENOTSUP which isn’t even listed as a possible return
value. The same code modified to use block mode works just fine.
When the Audio Drivers were rewritten stream mode was not
resupported. Stream mode was not supported because it was
not implemented on all cards. Also the value of stream mode
was futher reduced when we implemented a block mode that
would accept writes of any number of bytes.
With the above being said we are still willing to implement
a stream mode provided:
- a technical case be made for why an application needs
this mode and block mode can’t be used
I’m no audio guru, but ALSA site seems to suggest that stream mode was
invented because block mode has DMA-related latencies which might be
untolerable for some professional-type applications.
- a definition of stream mode can be defined that is
universal regardless of hardware
So you have definition of block mode universal regardless of hardware? I
thought block mode relies on DMA mode support by hardware… Or they all
support DMA?
It is of course up to you to support this feature since you’re ‘not ALSA’,
but it would be nice to have this mentioned in docs. The DDK data structures
surely do make impression that stream mode is still supported.
I also suggest to rename io-audio into io-nalsa (stands for not-ALSA) for
clarity sake =:v]