C++ lib and CLI for playing media files on a Chromecast

Related tags

CLI castr
Overview
castr - a CLI and C++ library to cast media files to Chromecast devices
        using the built in Default Media Receiver

-- CLI usage --
Examples:
    castr my_video.mp4 my_second_video.mp4
    castr https://www.example.com/some_video_on_the_internet.mp4

Controlling playback:
  SPACEBAR: Play/Pause
  n:        Next
  p:        Previous
  s:        Stop
  r:        Restart media from beginning*
  f:        Seek forward 60 seconds*
  F:        Seek forward 600 seconds*
  b:        Seek backwards 60 seconds*
  B:        Seek backwards 600 seconds*
  m:        Mute on/off
  v:        Volume down
  V:        Volume up
  h:        Help
  q:        Quit

  * Note: Seeking is not supported by all media

Supported file types:
    aac, mp3, wav, webm, mp4,
    gif, jpg, png, webp, mpd, m3u8

If you have ffmpeg installed and a computer that is fast enough to
encode video in real time, all other common video formats are supported
through the helper script castr-convert.
Example:
    castr-convert my_video.mkv


-- Build instructions --

Dependencies, and how to install them on Ubuntu:
* protobuf - Protocol to communicate with Chromecast
  sudo apt install protobuf-compiler protobuf-dev

* avahi - mDNS implementation used to locate Chromecast device
  sudo apt install libavahi-client-dev


Building:
  mkdir build
  cd build
  cmake ..
  make


Issues
  • Error 102 Media Decode Error

    Error 102 Media Decode Error

    Hi, I have been experimenting with this, however I get the following error: Do you happen to know how to solve it? I have ffmpeg installed.

    PLAYING | 0:00 [________________________________________________] 1:57 | Vol: 40%   
    Cast Error at time 0 seconds
        Error code: 102
        Media Decode Error.
    
    

    Using castr-convert instead gives straight up an error, no explanation:

    
    ./castr-convert SampleVideo_1280x720_20mb.mp4
    Convert SampleVideo_1280x720_20mb.mp4 to MPEG dash for streaming
    Creating temporary files at SampleVideo_1280x720_20mb.mp4.dash
    ...castr player started at 192.168.1.34
    Chromecast host: Mi TV Stick @ 192.168.1.38
    STOPPED | 0:00 [________________________________________________] 0:00 | Vol: 40% 
    ----------------
        Playing SampleVideo_1280x720_20mb.mp4.mpd
    
    ERROR | 0:00 [________________________________________________] 0:00 | Vol: 40%  
    
    opened by mozcelikors 2
The KISS file manager: CLI-based, ultra-lightweight, lightning fast, and written in C

CliFM is a CLI-based, shell-like (non-curses) and KISS terminal file manager written in C: simple, fast, and lightweight as hell

leo-arch 511 Jun 24, 2022
Creating CLI's just got a whole lot better

Staq Creating CLI's just got a whole lot better. Don't worry about CLI colouring, networking, Size of Executables, Speed ever again Have any doubts? R

null 9 Jun 1, 2021
CLI Application that provides the Freedesktop Secret Service using Pass as its backend!

pass-secrets CLI Application that provides the Freedesktop Secret Service using Pass as its backend! Status Currently working to store secrets with pr

null 18 Apr 7, 2022
Fegeya Freud, CLI FPaper renderer, based on Totem (`less`-like tool without `--help`)

Fegeya Freud, CLI FPaper renderer, based on Totem (`less`-like tool without `--help`)

Ferhat Geçdoğan 3 Jun 11, 2021
Um CLI para encontrar os seus alias

Manager-Alias Que tal gerenciar todos os seus alias de um único local? Pesquisar e encontrar o que você precisa sem ter que ficar lendo diversos arqui

Wiris Rafael Januario Wernek 3 Oct 26, 2021
Port of ani-cli with more features 😉

Port of ani-cli with more features ??

Dinkan 14 Jun 25, 2022
A CLI for extracting libraries from Apple's dyld shared cache file

dyld-shared-cache-extractor As of macOS Big Sur, instead of shipping the system libraries with macOS, Apple ships a generated cache of all built in dy

Keith Smiley 171 Jun 23, 2022
The Efficient Study Planner (ESP) is a CLI app that gives an optimized plan to study for an upcoming exam.

Welcome to Efficient Study Planner ?? Optimize your study plan with ESP! Table of Contents About The Project Tech Stack Prerequisites How To Use? Lice

Md Ausaf Rashid 3 Dec 30, 2021
Windows Package Manager CLI (aka winget)

Welcome to the Windows Package Manager Client (aka winget.exe) repository This repository contains the source code for the Windows Package Manager Cli

Microsoft 17.3k Jun 28, 2022
CLI to play a word-guessing game like Wordle

Lexeme What is this? Python program to play a word-guessing game like Wordle, but… More addictive because you can play it over and over and over, not

Dan Lenski 6 Feb 7, 2022
This is a simple CLI interface helper library for C.

LIBCCLI This is a very simple shell like interface for CLI activities. More will be added to this, but for now, this is the basic idea:

Steven Rostedt 39 Jun 16, 2022
File's sizes as a markdown table (CLI)

File's sizes as a markdown table (CLI)

Reaper 5 Feb 6, 2022
A CLI based solver for the popular word guessing game WORDLE

Project WAR WAR stands for Wordle Answer and Resolver About Wordle is a web-based word game developed by Welsh-born software engineer Josh Wardle, for

Yeluri Ketan 2 Feb 19, 2022
CLI for single-cell analyses

CLI for single-cell analyses This repository provides a no-frills command-line interface for single-cell RNA-seq data analysis from a Matrix Market fi

Aaron Lun 2 Jan 28, 2022
Simple command line utilities for extracting data from Fallout 4 and 76 files

fo76utils Simple command line utilities for extracting data from Fallout 4 and 76 files. baunpack - list the contents of, or extract from .BA2 archive

null 9 Jun 13, 2022
CfgManipulator is a fast and powerful tool for working with configuration files for the C++ language

CfgManipulator is a fast and powerful tool for working with configuration files for the C++ language. It can read, create strings and sections, change the value of a string and much more.

Sanya 2 Jan 28, 2022
Simple command line tool that processes image files using the FidelityFX Super Resolution (FSR) or Contrast Adaptive Sharpening (CAS) shader systems.

Simple command line tool that processes image files using the FidelityFX Super Resolution (FSR) or Contrast Adaptive Sharpening (CAS) shader systems.

GPUOpen Effects 174 Jun 26, 2022
A single-class C++ library for reading animated GIF files

EasyGifReader EasyGifReader is a single-class C++ library that aims to simplify reading an animated GIF file. It is built on top of and depends on gif

Viktor Chlumský 5 Feb 7, 2022
Simple command line tools to create/extract X4 .cat+.dat files

x4cat Simple command line tools to to create/extract X4 .cat+.dat files x4encat Usage: x4encat <archive name> Looks for a directory named <archive nam

Alexander Sago 1 Oct 31, 2021