From: Petr Kulhavy <petr@barix.com>
To: alsa-devel@alsa-project.org
Subject: How to properly handle variable samplerate?
Date: Fri, 05 Sep 2014 18:20:42 +0200 [thread overview]
Message-ID: <5409E2DA.2090403@barix.com> (raw)
Hi,
I'm developing an audio stream player application with ALSA output, the
player has a large software buffer. The trouble is that the stream can
potentially change the sampling rate (e.g. streaming RTP from a VLC
playlist created from different MP3 songs). How to properly handle this?
I'm thinking of the following concept:
The codec feeds data into the software buffer together with markers for
sample rate changes. The ALSA playback is asynchronous, using a callback
function feeding the data from the software buffer into ALSA. If a
samplerate marker is hit the new rate is set.
Can the sample rate be set from a callback? What other constraints are
there? And how does the HW FIFO handle samplerate changes?
Or is there a better way of implementing?
Thanks a lot!
Petr
--
Petr Kulhavy, MSc
System Architect
*BARIX*
petr@barix.com <mailto:petr@barix.com> | Skype: brain.barix
Barix AG, Seefeldstrasse 303 | 8008 Zurich, Switzerland
T +41 43 43322 11 | www.barix.com <http://www.barix.com>
You have received this email because of your relationship Barix AG and
its affiliated companies. Barix AG and its affiliated companies do not
sell or exchange email addresses, or any other personal contact
information provided by you with any third parties. All email
distributions are managed and controlled by Barix AG and its affiliated
companies.
Barix AG, Seefeldstr. 303, 8008 Zürich, Switzerland. Company Reg. No:
CH-020.3.023.869-8, VAT Reg. No: CHE-105.687.663.
next reply other threads:[~2014-09-05 16:20 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-05 16:20 Petr Kulhavy [this message]
2014-09-06 10:33 ` How to properly handle variable samplerate? Alexander E. Patrakov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5409E2DA.2090403@barix.com \
--to=petr@barix.com \
--cc=alsa-devel@alsa-project.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.