Home | History | Annotate | only in /frameworks/av/media/libnbaio
Up to higher level directory
NameDateSize
Android.bp06-Dec-20171.7K
AudioBufferProviderSource.cpp06-Dec-20174.9K
AudioStreamInSource.cpp06-Dec-20173K
AudioStreamOutSink.cpp06-Dec-20172.9K
include/06-Dec-2017
include_mono/06-Dec-2017
LibsndfileSink.cpp06-Dec-20171.4K
LibsndfileSource.cpp06-Dec-20172.6K
MonoPipe.cpp06-Dec-20176.5K
MonoPipeReader.cpp06-Dec-20171.7K
NBAIO.cpp06-Dec-20175.4K
NBLog.cpp06-Dec-201736.4K
OWNERS06-Dec-201719
PerformanceAnalysis.cpp06-Dec-201714.9K
Pipe.cpp06-Dec-20171.9K
PipeReader.cpp06-Dec-20172.4K
README.txt06-Dec-20171.1K
ReportPerformance.cpp06-Dec-20172.4K
SourceAudioBufferProvider.cpp06-Dec-20173.9K

README.txt

      1 libnbaio (for "Non-Blocking Audio I/O") was originally intended to
      2 be a purely non-blocking API.  It has evolved to now include
      3 a few blocking implementations of the interface.
      4 
      5 Note: as used here, "short transfer count" means the return value for
      6 read() or write() that indicates the actual number of successfully
      7 transferred frames is less than the requested number of frames.
      8 
      9 Pipe
     10 ----
     11 supports 1 writer and N readers
     12 
     13 no mutexes, so safe to use between SCHED_NORMAL and SCHED_FIFO threads
     14 
     15 writes:
     16   non-blocking
     17   never return a short transfer count
     18   overwrite data if not consumed quickly enough
     19 
     20 reads:
     21   non-blocking
     22   return a short transfer count if not enough data
     23   will lose data if reader doesn't keep up
     24 
     25 MonoPipe
     26 --------
     27 supports 1 writer and 1 reader
     28 
     29 no mutexes, so safe to use between SCHED_NORMAL and SCHED_FIFO threads
     30 
     31 write are optionally blocking:
     32   if configured to block, then will wait until space available before returning
     33   if configured to not block, then will return a short transfer count
     34     and will never overwrite data
     35 
     36 reads:
     37   non-blocking
     38   return a short transfer count if not enough data
     39   never lose data
     40 
     41