Changeset 5029c788 in mainline for uspace/srv/audio/hound/audio_data.h


Ignore:
Timestamp:
2013-04-04T16:21:41Z (11 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
9e40d443
Parents:
5a6f362
Message:

hound: add connection fifo, implement stream mixing

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/audio/hound/audio_data.h

    r5a6f362 r5029c788  
    3737#define AUDIO_DATA_H_
    3838
     39#include <pcm/format.h>
    3940#include <adt/list.h>
    4041#include <atomic.h>
     
    4344        const void *data;
    4445        size_t size;
     46        pcm_format_t format;
    4547        atomic_t refcount;
    4648} audio_data_t;
     
    5759}
    5860
    59 audio_data_link_t * audio_data_link_create(const void *data, size_t size);
    60 audio_data_link_t *audio_data_link_clone(audio_data_t *adata);
     61audio_data_t * audio_data_create(const void *data, size_t size,
     62    pcm_format_t format);
     63void audio_data_unref(audio_data_t *adata);
     64
     65audio_data_link_t * audio_data_link_create_data(const void *data, size_t size,
     66    pcm_format_t format);
     67audio_data_link_t *audio_data_link_create(audio_data_t *adata);
    6168void audio_data_link_destroy(audio_data_link_t *link);
    6269
     70size_t audio_data_link_available_frames(audio_data_link_t *alink);
     71static inline const void * audio_data_link_start(audio_data_link_t *alink)
     72{
     73        assert(alink);
     74        assert(alink->adata);
     75        return alink->adata->data + alink->position;
     76}
     77
     78static inline size_t audio_data_link_remain_size(audio_data_link_t *alink)
     79{
     80        assert(alink);
     81        assert(alink->adata);
     82        assert(alink->position <= alink->adata->size);
     83        return alink->adata->size - alink->position;
     84}
    6385#endif
    6486
Note: See TracChangeset for help on using the changeset viewer.