• K
    audio: api for mixeng code free backends · ff095e52
    Kővágó, Zoltán 提交于
    This will make it possible to skip mixeng with audio playback and
    recording, allowing us to free ourselves from the limitations of the
    current mixeng (stereo, int64 samples only).  In this case, HW and SW
    voices will be essentially the same, for every SW voice we will create
    a HW voice, since we can no longer mix multiple voices together.
    
    Some backends expect us to call a function when we have data ready
    write()/read() style, while others provide a buffer and expects us to
    directly write/read it, so for optimal performance audio_pcm_ops provide
    methods for both cases.  Previously backends asked mixeng for more data
    in run_out/run_it, now instead mixeng or the frontends will call the
    backends, so that's why two sets of functions required.  audio.c
    contains glue code between the two styles, so backends only ever have to
    implement one style and frontends are free to call whichever is more
    convenient for them.
    Signed-off-by: NKővágó, Zoltán <DirtY.iCE.hu@gmail.com>
    Message-id: 15a33c03a62228922d851f7324c52f73cb8d2414.1568927990.git.DirtY.iCE.hu@gmail.com
    Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
    ff095e52
audio.c 52.8 KB