[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

BOUNCE rtl@rtlinux.org: Approval required: Non-member submission from [aaron@boim.com (Aaron Birenboim)] (fwd)



>From owner-rtl Fri May  4 06:21:46 2001
Received: from dodo.boim.com ([216.184.13.6])
	by hq.fsmlabs.com (8.11.2/8.11.2) with ESMTP id f44CLkJ22209
	for <rtl@rtlinux.org>; Fri, 4 May 2001 06:21:46 -0600
Received: by dodo.boim.com (Postfix, from userid 500)
	id 434691930C; Fri,  4 May 2001 06:17:37 -0600 (MDT)
To: rtl@rtlinux.org
Subject: How much Real-Time do I really need?
Message-Id: <20010504121737.434691930C@dodo.boim.com>
Date: Fri,  4 May 2001 06:17:37 -0600 (MDT)
From: aaron@boim.com (Aaron Birenboim)


    I have a project that analyses audio data on-the-fly.
At times, my processing can not be completed in real-time.

    In this case, i CANNOT drop data, but I CAN skip some
processing.  So I want to have a large buffer on the audio
stream (several MEG).  This way, when I get several seconds behind
in my processing, I can prune my search until I catch up.

   So this is more on-the-fly than real-time.  I cannot loose data,
but I can tolerate several seconds of latency in my results.

   Can I just do this by having a high-priority pthread reading
audio data into a large circular buffer?  Or...  will I need to 
do something more low-level and real-time.
(I am experienced in several RTOS's, but not RTL)
Sorry for the newbie question...  but what RT extensions are
currently popular?  Will I be writing a kernel module to maintain
my circular buffer in shared memory, or is there something
more high-level I can do?

                  aaron