home.social

#roctoolkit — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #roctoolkit, aggregated by home.social.

fetched live
  1. immer man nicht einfach Pulse nutzt. #pulseaudio kann zwar auch nativ Netzwerk, ist aber eher nervig in der Bedienung und unzuverlässig. Über nc hats durch Buffer unschön viel Delay. Hab nun #ROCToolkit roc-streaming.org/ gefunden. Kann sich das Audio von Pulse(monitor) greifen und per RTP mit wenig Latenz auf andere Geräte rausjagen. Leider fehlt in der Doku etwas Quickstart, aber überschaubar komplex und bisher keine Probleme mit gehabt.

  2. immer man nicht einfach Pulse nutzt. #pulseaudio kann zwar auch nativ Netzwerk, ist aber eher nervig in der Bedienung und unzuverlässig. Über nc hats durch Buffer unschön viel Delay. Hab nun #ROCToolkit roc-streaming.org/ gefunden. Kann sich das Audio von Pulse(monitor) greifen und per RTP mit wenig Latenz auf andere Geräte rausjagen. Leider fehlt in der Doku etwas Quickstart, aber überschaubar komplex und bisher keine Probleme mit gehabt.

  3. immer man nicht einfach Pulse nutzt. #pulseaudio kann zwar auch nativ Netzwerk, ist aber eher nervig in der Bedienung und unzuverlässig. Über nc hats durch Buffer unschön viel Delay. Hab nun #ROCToolkit roc-streaming.org/ gefunden. Kann sich das Audio von Pulse(monitor) greifen und per RTP mit wenig Latenz auf andere Geräte rausjagen. Leider fehlt in der Doku etwas Quickstart, aber überschaubar komplex und bisher keine Probleme mit gehabt.

  4. immer man nicht einfach Pulse nutzt. #pulseaudio kann zwar auch nativ Netzwerk, ist aber eher nervig in der Bedienung und unzuverlässig. Über nc hats durch Buffer unschön viel Delay. Hab nun #ROCToolkit roc-streaming.org/ gefunden. Kann sich das Audio von Pulse(monitor) greifen und per RTP mit wenig Latenz auf andere Geräte rausjagen. Leider fehlt in der Doku etwas Quickstart, aber überschaubar komplex und bisher keine Probleme mit gehabt.

  5. immer man nicht einfach Pulse nutzt. #pulseaudio kann zwar auch nativ Netzwerk, ist aber eher nervig in der Bedienung und unzuverlässig. Über nc hats durch Buffer unschön viel Delay. Hab nun #ROCToolkit roc-streaming.org/ gefunden. Kann sich das Audio von Pulse(monitor) greifen und per RTP mit wenig Latenz auf andere Geräte rausjagen. Leider fehlt in der Doku etwas Quickstart, aber überschaubar komplex und bisher keine Probleme mit gehabt.

  6. Roc Toolkit 0.4 is out!

    Highlights:

    - finish RTCP & XR support, 2-way report exchange
    - latency tuning on sender instead of receiver (when receiver is more CPU-constrained)
    - audio file backends using libsndfile and dr_wav (when external dependencies are limited)
    - virtual devices for macOS!
    - bug-fixes
    - portability: Ubuntu 24.04, macOS 14, OpenWrt/MIPS, Debian GNU/Hurd

    Tutorial:
    gavv.net/articles/roc-0.4/

    Changelog:
    roc-streaming.org/toolkit/docs

    #roctoolkit #linuxaudio #macosaudio #raspberrypi

  7. Roc Toolkit 0.4 is out!

    Highlights:

    - finish RTCP & XR support, 2-way report exchange
    - latency tuning on sender instead of receiver (when receiver is more CPU-constrained)
    - audio file backends using libsndfile and dr_wav (when external dependencies are limited)
    - virtual devices for macOS!
    - bug-fixes
    - portability: Ubuntu 24.04, macOS 14, OpenWrt/MIPS, Debian GNU/Hurd

    Tutorial:
    gavv.net/articles/roc-0.4/

    Changelog:
    roc-streaming.org/toolkit/docs

  8. Roc Toolkit 0.4 is out!

    Highlights:

    - finish RTCP & XR support, 2-way report exchange
    - latency tuning on sender instead of receiver (when receiver is more CPU-constrained)
    - audio file backends using libsndfile and dr_wav (when external dependencies are limited)
    - virtual devices for macOS!
    - bug-fixes
    - portability: Ubuntu 24.04, macOS 14, OpenWrt/MIPS, Debian GNU/Hurd

    Tutorial:
    gavv.net/articles/roc-0.4/

    Changelog:
    roc-streaming.org/toolkit/docs

    #roctoolkit #linuxaudio #macosaudio #raspberrypi

  9. Roc Toolkit 0.4 is out!

    Highlights:

    - finish RTCP & XR support, 2-way report exchange
    - latency tuning on sender instead of receiver (when receiver is more CPU-constrained)
    - audio file backends using libsndfile and dr_wav (when external dependencies are limited)
    - virtual devices for macOS!
    - bug-fixes
    - portability: Ubuntu 24.04, macOS 14, OpenWrt/MIPS, Debian GNU/Hurd

    Tutorial:
    gavv.net/articles/roc-0.4/

    Changelog:
    roc-streaming.org/toolkit/docs

    #roctoolkit #linuxaudio #macosaudio #raspberrypi

  10. Roc Toolkit 0.4 is out!

    Highlights:

    - finish RTCP & XR support, 2-way report exchange
    - latency tuning on sender instead of receiver (when receiver is more CPU-constrained)
    - audio file backends using libsndfile and dr_wav (when external dependencies are limited)
    - virtual devices for macOS!
    - bug-fixes
    - portability: Ubuntu 24.04, macOS 14, OpenWrt/MIPS, Debian GNU/Hurd

    Tutorial:
    gavv.net/articles/roc-0.4/

    Changelog:
    roc-streaming.org/toolkit/docs

    #roctoolkit #linuxaudio #macosaudio #raspberrypi

  11. roc-go (go bindings for roc-toolkit streaming library) updated to 0.3.0

    github.com/roc-streaming/roc-go

  12. Tagged roc-pulse 0.0.5:
    github.com/roc-streaming/roc-p

    It now supports full set of sender and receiver options
    (same as in roc-send and roc-recv tools).

    It is now possible to configure local and network encoding and change
    various latency parameters. See README for details.

    #roctoolkit #pulseaudio

  13. Tagged roc-pulse 0.0.5:
    github.com/roc-streaming/roc-p

    It now supports full set of sender and receiver options
    (same as in roc-send and roc-recv tools).

    It is now possible to configure local and network encoding and change
    various latency parameters. See README for details.

  14. Tagged roc-pulse 0.0.5:
    github.com/roc-streaming/roc-p

    It now supports full set of sender and receiver options
    (same as in roc-send and roc-recv tools).

    It is now possible to configure local and network encoding and change
    various latency parameters. See README for details.

    #roctoolkit #pulseaudio

  15. Tagged roc-pulse 0.0.5:
    github.com/roc-streaming/roc-p

    It now supports full set of sender and receiver options
    (same as in roc-send and roc-recv tools).

    It is now possible to configure local and network encoding and change
    various latency parameters. See README for details.

    #roctoolkit #pulseaudio

  16. I'm happy to announce the first version of Roc VAD, a virtual audio device for macOS that can stream to/from #PulseAudio, #PipeWire, Android, and others.

    Link:
    github.com/roc-streaming/roc-v

    It also provides a gRPC interface with full control of the driver, which allows reusing driver in other projects.

    #macosaudio #audiostreaming #roctoolkit

  17. I'm happy to announce the first version of Roc VAD, a virtual audio device for macOS that can stream to/from , , Android, and others.

    Link:
    github.com/roc-streaming/roc-v

    It also provides a gRPC interface with full control of the driver, which allows reusing driver in other projects.

  18. I'm happy to announce the first version of Roc VAD, a virtual audio device for macOS that can stream to/from #PulseAudio, #PipeWire, Android, and others.

    Link:
    github.com/roc-streaming/roc-v

    It also provides a gRPC interface with full control of the driver, which allows reusing driver in other projects.

    #macosaudio #audiostreaming #roctoolkit

  19. I'm happy to announce the first version of Roc VAD, a virtual audio device for macOS that can stream to/from #PulseAudio, #PipeWire, Android, and others.

    Link:
    github.com/roc-streaming/roc-v

    It also provides a gRPC interface with full control of the driver, which allows reusing driver in other projects.

    #macosaudio #audiostreaming #roctoolkit

  20. Tagged #roctoolkit 0.2.6.

    This release just fixes the incompatibility of #debian packages with various ubuntu and debian versions, as reported on matrix. Now packages are installable on debian bullseye and later, and ubuntu 20.04 and later, and this is being tested on CI.

    github.com/roc-streaming/roc-t

  21. Tagged 0.2.6.

    This release just fixes the incompatibility of packages with various ubuntu and debian versions, as reported on matrix. Now packages are installable on debian bullseye and later, and ubuntu 20.04 and later, and this is being tested on CI.

    github.com/roc-streaming/roc-t

  22. Tagged #roctoolkit 0.2.6.

    This release just fixes the incompatibility of #debian packages with various ubuntu and debian versions, as reported on matrix. Now packages are installable on debian bullseye and later, and ubuntu 20.04 and later, and this is being tested on CI.

    github.com/roc-streaming/roc-t

  23. Tagged #roctoolkit 0.2.6.

    This release just fixes the incompatibility of #debian packages with various ubuntu and debian versions, as reported on matrix. Now packages are installable on debian bullseye and later, and ubuntu 20.04 and later, and this is being tested on CI.

    github.com/roc-streaming/roc-t

  24. This October was productive for #roctoolkit.

    New cool features include a lock-free PRNG and buffer overflow protection in memory pools. Also, some good refactoring was carried out.

    Thanks to everyone who submitted patches!

    #hacktoberfest #opensource

  25. This October was productive for .

    New cool features include a lock-free PRNG and buffer overflow protection in memory pools. Also, some good refactoring was carried out.

    Thanks to everyone who submitted patches!

  26. This October was productive for #roctoolkit.

    New cool features include a lock-free PRNG and buffer overflow protection in memory pools. Also, some good refactoring was carried out.

    Thanks to everyone who submitted patches!

    #hacktoberfest #opensource

  27. This October was productive for #roctoolkit.

    New cool features include a lock-free PRNG and buffer overflow protection in memory pools. Also, some good refactoring was carried out.

    Thanks to everyone who submitted patches!

    #hacktoberfest #opensource

  28. This October was productive for #roctoolkit.

    New cool features include a lock-free PRNG and buffer overflow protection in memory pools. Also, some good refactoring was carried out.

    Thanks to everyone who submitted patches!

    #hacktoberfest #opensource

  29. got support for new "speexdec" resampler, that combines speex for fixed rate convertion and decimation/expansion for dynamic part needed to compensate clock drift.

    github.com/roc-streaming/roc-t

    It works surprisingly fine. The decimation affects only 5-20 samples/second. When base rates are equal, it's VERY cheap. And it follows scaling factor with better precision than speex.

    This resampler can be used as a fallback for CPU-constrained environments.

  30. #roctoolkit got support for new "speexdec" resampler, that combines speex for fixed rate convertion and decimation/expansion for dynamic part needed to compensate clock drift.

    github.com/roc-streaming/roc-t

    It works surprisingly fine. The decimation affects only 5-20 samples/second. When base rates are equal, it's VERY cheap. And it follows scaling factor with better precision than speex.

    This resampler can be used as a fallback for CPU-constrained environments.

  31. #roctoolkit got support for new "speexdec" resampler, that combines speex for fixed rate convertion and decimation/expansion for dynamic part needed to compensate clock drift.

    github.com/roc-streaming/roc-t

    It works surprisingly fine. The decimation affects only 5-20 samples/second. When base rates are equal, it's VERY cheap. And it follows scaling factor with better precision than speex.

    This resampler can be used as a fallback for CPU-constrained environments.

  32. Two C API improvements recently landed develop branch of

    🔹 Removing slots on the fly.

    "Slots" represent connected peers, so this is useful when peers enter and leave session dynamically.

    🔹 New packet encoder/decoder API, similar to sender/receiver, but networkless.

    You push raw frames and get encoded packets, or vice versa, and you deliver packets by yourself. This allows using roc with third-party transports like libjuice and libdatachannel.

  33. Two C API improvements recently landed develop branch of #roctoolkit

    🔹 Removing slots on the fly.

    "Slots" represent connected peers, so this is useful when peers enter and leave session dynamically.

    🔹 New packet encoder/decoder API, similar to sender/receiver, but networkless.

    You push raw frames and get encoded packets, or vice versa, and you deliver packets by yourself. This allows using roc with third-party transports like libjuice and libdatachannel.

    #audiostreaming #audio

  34. Two C API improvements recently landed develop branch of #roctoolkit

    🔹 Removing slots on the fly.

    "Slots" represent connected peers, so this is useful when peers enter and leave session dynamically.

    🔹 New packet encoder/decoder API, similar to sender/receiver, but networkless.

    You push raw frames and get encoded packets, or vice versa, and you deliver packets by yourself. This allows using roc with third-party transports like libjuice and libdatachannel.

    #audiostreaming #audio

  35. Recently spent some time optimizing latency over Ethernet.

    So far, achieved 7ms for transport + 12ms for two USB sound cards.

    This is the photo of my test bench for measurements.

    Legend: R1, R2 - ; S0, S1, S2 - sound cards; L1, L3 - jack cables; L2 - ethernet cable.

    Roc runs on R1 and R2 and streams sound from S1 to S2.

    On PC, I run that writes sound to S0 output, reads it back from S0 input, and measures latency.

  36. Recently spent some time optimizing #roctoolkit latency over Ethernet.

    So far, achieved 7ms for transport + 12ms for two USB sound cards.

    This is the photo of my test bench for measurements.

    Legend: R1, R2 - #raspberrypi; S0, S1, S2 - sound cards; L1, L3 - jack cables; L2 - ethernet cable.

    Roc runs on R1 and R2 and streams sound from S1 to S2.

    On PC, I run #signalestimator that writes sound to S0 output, reads it back from S0 input, and measures latency.

    #linuxaudio #audioprogramming

  37. Recently spent some time optimizing #roctoolkit latency over Ethernet.

    So far, achieved 7ms for transport + 12ms for two USB sound cards.

    This is the photo of my test bench for measurements.

    Legend: R1, R2 - #raspberrypi; S0, S1, S2 - sound cards; L1, L3 - jack cables; L2 - ethernet cable.

    Roc runs on R1 and R2 and streams sound from S1 to S2.

    On PC, I run #signalestimator that writes sound to S0 output, reads it back from S0 input, and measures latency.

    #linuxaudio #audioprogramming

  38. [1/3]

    I had a lot of fun last weekend, adding surround sound support to , with conversion between surround layouts (downmixing and upmixing).

    (E.g. if network layout is surround 7.1, but sound card is 5.1, it's automatically downmixed)

    Learned lots of new! I first discovered remixing algorithm from [1], but ended up using downmixing tables from dolby [2][3].

    Also added support for large multitrack channel sets up to 1024 channels.

  39. [1/3]

    I had a lot of fun last weekend, adding surround sound support to #roctoolkit, with conversion between surround layouts (downmixing and upmixing).

    (E.g. if network layout is surround 7.1, but sound card is 5.1, it's automatically downmixed)

    Learned lots of new! I first discovered remixing algorithm from #pulseaudio [1], but ended up using downmixing tables from dolby [2][3].

    Also added support for large multitrack channel sets up to 1024 channels.

    #linuxaudio #audioprogramming

  40. [1/3]

    I had a lot of fun last weekend, adding surround sound support to #roctoolkit, with conversion between surround layouts (downmixing and upmixing).

    (E.g. if network layout is surround 7.1, but sound card is 5.1, it's automatically downmixed)

    Learned lots of new! I first discovered remixing algorithm from #pulseaudio [1], but ended up using downmixing tables from dolby [2][3].

    Also added support for large multitrack channel sets up to 1024 channels.

    #linuxaudio #audioprogramming