You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Slávek Banko
8b12682035
|
8 years ago | |
---|---|---|
.. | ||
CMakeLists.txt | 8 years ago | |
IOFrameQueue.cpp | 15 years ago | |
IOFrameQueue.h | 13 years ago | |
Makefile.am | 15 years ago | |
README | 13 years ago | |
audioFrame.cpp | 15 years ago | |
audioFrame.h | 15 years ago | |
audioFrameQueue.cpp | 15 years ago | |
audioFrameQueue.h | 13 years ago | |
floatFrame.cpp | 15 years ago | |
floatFrame.h | 15 years ago | |
frame.cpp | 15 years ago | |
frame.h | 15 years ago | |
frameQueue.cpp | 15 years ago | |
frameQueue.h | 13 years ago | |
framer.cpp | 13 years ago | |
framer.h | 15 years ago | |
pcmFrame.cpp | 15 years ago | |
pcmFrame.h | 15 years ago | |
rawDataBuffer.cpp | 15 years ago | |
rawDataBuffer.h | 15 years ago | |
rawFrame.cpp | 15 years ago | |
rawFrame.h | 15 years ago |
README
Frames ====== Frames are needed for passing data between decoders around. A decoder gets an mpeg audio encoded frame as input and writes data to an audioFrame (pcm/float) frame | audioFrame / \ pcmFrame floatFrame FrameQueues =========== FrameQueues are needed for storing some frames. (For example you store 100 pre-decoded pcmFrames.) A FrameQueue is a queue, simply not more. IOFrameQueues ============= IOFrameQueues deal with the problem, that you first start with an empty FrameQueue (this is a FrameQueue which contains prealloceated data, but the data is empty (eg:all pcm samples zero) Only after converting an "empty" Frame by a decoder (mp3decoder) the frame if "full" (== Frame with data) So: IOFrameQueues mark frames with i) empty ii) data You can get an empty Frame from the empty-frame-queue and then enqueue it in the data-frame-queue. After the frame was used (played) we dequeue it from the data queue and put them back in the empty queue. You can see IOFrameQueues as a ringbuffer. (get free space. write to it. read data. mark space as free,....) FrameQueue | IOFrameQueue / audioFrameQueue AudioFrameQueue =============== A IOFrameQueue, which allows converting "dataFrames back to continous stream". What is this? Lets say an application wants only 20 byte from a dataFrame which contains 3KB of data? There must be some mechanism to read less or more data from the queue. And the data should be written to a continus memory segment. AudioFrameQueue deals with this problem.You can read data from the queue to a given pointer location.