moc-rs 0.1.3

A library to interact with the MoC (Music on Console) server running on the current machine
Documentation
  • Coverage
  • 72.5%
    29 out of 40 items documented1 out of 28 items with examples
  • Size
  • Source code size: 36.86 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.98 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 12s Average build duration of successful builds.
  • all releases: 12s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • vivyir/moc-rs
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • vivyir

moc-rs

This library helps you interact with the MoC (Music on Console) server running on your system thru the binary, which in the case of arch linux (and manjaro) is installable thru pacman

sudo pacman -S moc

or for debian and ubuntu

sudo apt install moc

⚠️ The currently tested and working version of MoC is v2.5.2.

If you can't find an up to date version of MoC in your distributions repositories (highly unlikey) please check out the download section of the official website

Basic example

use moc_rs::{Moc, MocInterface, MocSource};
use std::time::Duration;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    // Make a new instance of Moc
    let mut moc_ctx = Moc::new("mocp".into());

    // Get info about the current state of MoC
    let mocinfo = moc_ctx.info();
    dbg!(mocinfo);

    moc_ctx.set_volume(50);

    // A little delay to let the last task execute
    std::thread::sleep(Duration::from_millis(100));

    // Begin streaming SceneSat Radio immediately
    moc_ctx.immediate_play(MocSource::Url(
        "http://sentinel.scenesat.com:8000/scenesat".into(),
    ));

    // Remember to check out the docs for more info!

    Ok(())
}

For more examples check out the examples/ directory on github

Projects using moc-rs

Contributing

Thanks for your interest in contributing! please open an issue or merge request to contibute. Code contributions submitted for inclusion in the work by you, as defined in the MPL2.0 license, shall be licensed as the above without any additional terms or conditions.

License

This project is licenced under MPL 2.0.