Changeset 4389076 in mainline for uspace/srv/audio/hound/connection.c


Ignore:
Timestamp:
2013-04-05T15:45:01Z (12 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
60e5696d
Parents:
02ead2e
Message:

hound, wavplay: switch to new hound iface

wavplay: use buffer that work well with current backend

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/audio/hound/connection.c

    r02ead2e r4389076  
    8686        if (!data)
    8787                return EBADMEM;
    88         return audio_source_add_self(connection->source, data, size, &format);
     88        size_t needed_frames = pcm_format_size_to_frames(size, &format);
     89        if (needed_frames > audio_pipe_frames(&connection->fifo) &&
     90            connection->source->update_available_data) {
     91                log_debug("Asking source to provide more data");
     92                connection->source->update_available_data(
     93                    connection->source, size);
     94        }
     95        log_verbose("Data available after update: %zu",
     96            audio_pipe_bytes(&connection->fifo));
     97        ssize_t ret =
     98            audio_pipe_mix_data(&connection->fifo, data, size, &format);
     99        if (ret != (ssize_t)size)
     100                log_warning("Connection failed to provide enough data %zd/%zu",
     101                    ret, size);
     102        return ret > 0 ? EOK : ret;
    89103}
    90104
Note: See TracChangeset for help on using the changeset viewer.