Cast Streaming Standalone Sender (3 of 3): main.cc

Glues everything together, providing a command-line interface for
sending a media file to a Cast Streaming Receiver. Also, consistency and
bug fixes to the standalone receiver's main.cc

This provides audio-only streaming at this time. Both bandwidth
estimation and libvpx encoding need to be in-place before video
streaming can be enabled.

Change-Id: I79282cfca103f09c35b4bcebaebc28559a06f914
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2087739
Reviewed-by: Max Yakimakha <yakimakha@chromium.org>
Commit-Queue: Yuri Wiitala <miu@chromium.org>
diff --git a/platform/impl/task_runner.h b/platform/impl/task_runner.h
index b53bdc4..629e23c 100644
--- a/platform/impl/task_runner.h
+++ b/platform/impl/task_runner.h
@@ -63,6 +63,11 @@
   // called.
   void RunUntilStopped();
 
+  // Blocks the current thread, executing tasks from the queue with the desired
+  // timing; and does not return until some time after the current process is
+  // signaled with SIGINT or SIGTERM, or after RequestStopSoon() is called.
+  void RunUntilSignaled();
+
   // Thread-safe method for requesting the TaskRunner to stop running after all
   // non-delayed tasks in the queue have run. This behavior allows final
   // clean-up tasks to be executed before the TaskRunner stops.