Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Development advise needed: App / Library / fiddling ?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
aCOSwt
Bodhisattva
Bodhisattva


Joined: 19 Oct 2007
Posts: 2537
Location: Hilbert space

PostPosted: Fri Jan 28, 2011 10:02 am    Post subject: Development advise needed: App / Library / fiddling ? Reply with quote

Hello,

A, B and C are both gentoo supported packages.

A is an application relying on the B (callback) API for audio output, itself optionally relying on the C (callback) API. (Optionally supporting Alsa too)

A is a multi-platform poorly designed, poorly maintained application with no real alternative.
B is a multi-platform well designed, well and actively maintained API.
C is... C! :wink:

- C returns an error to B if the sample rate of the output does not match a run-time defined-value ! Period !
- B, in its turn, returns the error to A
- A ?... well... A... printf the error and... freezes ! :roll:

Hopefully, you will find this suboptimal :twisted:
Of course, some resampling facility should be offered somewhere.

Being said that implementing this facility as part of the C API is just... unthinkable and that a few apps relying on the B API would benefit from such facility being transparently handled by B, I got in touch with the B project leader who developed several sensible arguments against the implementation of resampling. (Among which license incompatibilities with best in class available resampling APIs)

A's side, relying on B's API in order to abstract back-ends' whims, just apparently does not want to read anything about this... :evil:

Considering that :

1/ I am not ready to re-invent a "yet-another-best-in-class" resampling API for the sole sake of licenses issues, => I would most probably rely on something such as Secret Rabbit Code
2/ I would like to make the patch public without infringing any law
3/ I have no means to honestly test the results under all the architectures supported by A and B
4/ I am interested in this with strong low-latency / XRUNs-free demands. (Standard A end-user is not )

Should I :

1/ Implement resampling in A ? (This would most probably be as part of the callback procedure) => Platform independent.
2/ Implement resampling in B ? (Restricted to the case of C as backend)
3/ Prefer Alsa to C as immediate back-end for B and fiddle an alsa plugin that would buffer, resample and redirect to C

What would you advise ?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum