This directory defines the Cast Web Runtime, an implementation of the
//components/cast_streaming
Chromecast receiver, for use with the internal
Cast Core library.
Building of this directory can be done by building the
chromecast/cast_core:core_runtime_simple
target with the following build
flags:
is_debug = true
dcheck_always_on = true
is_component_build = false
symbol_level = 2
is_castos = true
enable_cast_receiver = true
cast_streaming_enable_remoting = true
enable_cast_audio_renderer = false
enable_cast_renderer = false
ffmpeg_branding = "Chrome"
proprietary_codecs = true
Running the Cast Web Runtime on Linux can be done with the following steps:
- Build the Cast Web Runtime using the above flags
- Build Cast Core following instructions here.
- Run the Cast Core and
Platform Service applications built in step 2. Note that if it is your first
time running Cast Core you will need to
generate certificates
for device type
tv
. - Cast from a Chrome instance running on the local machine (either an official Chrome release or a locally built Chromium instance). It may take a few minutes for the Cast Core instance to show up as a valid cast target.
When running Cast Core, error
Unable to load application config from file <path>/app.conf because the file does not exist or could not be read
:
This occurs when the certificates were not generated correctly. Ensure they were
generated for device type tv
.
When starting the Cast Web Runtime, hitting this DCHECK: This occurs when flags are not set correctly. Ensure you are using the correct config file for running on Linux.
When starting Cast Core, you hit this DCHECK: This occurs when the gRPC port is already is use. Kill the existing process using the following commands:
user$ netstat -ltnp | grep -w "10101"
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp6 0 0 :::10101 :::* LISTEN <process id>/<path>
user$ kill -9 <process id>
Then re-run Cast Core.