[pulseaudio-discuss] 'Failed to find a working profile' for firewire sound devices

Takashi Sakamoto o-takashi at sakamocchi.jp
Wed Jan 22 02:49:02 PST 2014


Raymond,

 > How accurate are the hwptr playback/capture position ?
>
> e,g, USB audio send in URB packet
>
> the position is only updated in one ms

There is a chance to update the position every 2 msec. But it differ 
depending on sampling rate, size of period and streaming mode.

> Pulseaudio use snd_pcm_rewind the application ptr and rewrite the data
>
> do the firewire driver allow application to cancel some submitted
> packets and resend ?

No. Once the packets are queued, the drivers can't cancel to transfer them.

This is the same as existed firewire drivers for iSight, Griffin and 
LaCie. Not newly for my drivers.

> Do you mean firewire driver 's pcm_pointer callback does not report
> playback/capture positon in realtime ?

Within the 2 msec, I mean it.

> there is alway one packet 's uncertainty
 >
 > are the any minimum size of the packet ?
 >
 > e.g. usb audio send in urb

There is uncertainty. But not one packet.

Every 2 msec, the drivers queue some packets for transferring. So 
uncertainty is the number of the packets.

Currently this number is fixed by 16. See 'INTERRUPT_INTERVAL' macro in 
'amdtp.c'.
(In IEE1394, 8000 packets are transferred per sec. So 16 packets equal 2 
msec.)

> you can add rule to force pulseaudio ignore all firewire cards similar
> to thinkpad_acpi

Yes. It's one of solutions for this issue.

> if the devices have hardware mixer , there is no point to use software
> mixing

No. the devices can handle one PCM stream with some channels. Then 
several applications cannot handle the same PCM device. There is still a 
need to use software mixing.


Thanks

Takashi Sakamoto
o-takashi at sakamocchi.jp



More information about the pulseaudio-discuss mailing list