X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=futatabi.rst;h=f6c6574ce5dc765d7b6f310f375010ff22ba20b2;hb=47f8b836205dafd8d7dbec1af5a71c6de89e29f3;hp=171f861f25c59853dde675b30106d21fbe7f7a88;hpb=11b409dd8d661fb5126e9ac624c032a093fb88a0;p=nageru-docs diff --git a/futatabi.rst b/futatabi.rst index 171f861..f6c6574 100644 --- a/futatabi.rst +++ b/futatabi.rst @@ -56,7 +56,7 @@ input or output. Assuming you have a recent version of Nageru (typically one that comes with Futatabi), it is capable of sending all of its cameras as one video stream (see :ref:`futatabiformat`), so you can start Futatabi with - ./futatabi http://path.to.nageru.host/multicam.mp4 + ./futatabi http://nageru-server.example.org/multicam.mp4 If you do not have a running Nageru installation, see :ref:`sampledata`. @@ -85,7 +85,7 @@ Basic UI operations Nageru can be operated using either the keyboard and mouse, or using a MIDI controller with some help of the mouse. In this section, we will be discussing -the keyboard and mouse only; see :ref:`midi` for details on using MIDI +the keyboard and mouse only; see :ref:`midi-futatabi` for details on using MIDI controllers. A clip in the clip list consists simply of an in and an out point; it represents @@ -115,6 +115,11 @@ to cut to your channel, click on the first clip you want to play back and click the “Play” button (space on the keyboard); the result will both be visible in the top screen and go out live over the network to Nageru. +.. _speed: + +Controlling the playback speed +'''''''''''''''''''''''''''''' + .. _coop: Working with your producer @@ -265,16 +270,45 @@ from frame to frame; this is because for original (uninterpolated) frames, Futatabi will simply output the received JPEG frame directly to the output stream, which can be a different resolution from the interpolated frames. +Also, even though Futatabi exists to make a fixed-framerate stream out of +something that's not, the output stream can be variable-framerate (VFR) due to +pauses and frame drops. In particular, when the stream is paused, frames are +only output about every 100 milliseconds. + Finally, the subtitle track with status information (see :ref:`talkback`) is not marked as metadata due to FFmpeg limitations, and as such will show up raw in subtitle-enabled players. -.. _midi: +.. _midi-futatabi: Using MIDI controllers ---------------------- +This section assumes you have already read the section about +`MIDI controllers in Nageru `__. MIDI controllers +in Futatabi are fairly similar, but there are also some important differences, +since they control replay and not audio: + + * There is no concept of a bus (there is only one video output channel). + Thus, the concept of guessing also is obsolete. + * Since there are no buses, there are also usually plenty of buttons + and controls, rendering the bank concept less useful. It *is* supported, + but activity highlights (to show which bank is active) are not. + * Finally, outputs (controller lights and button lights) frequently have + more than one state depending on the velocity sent, e.g. 1 for on and 2 for + blinking. Thus, the Futatabi MIDI mapping editor allows you to change the + note velocities from the default 1. + +Futatabi has been tested with the `Behringer CMD PL-1 `_; +it is not originally designed for slow motion (it is a DJ controller), but provides everything you +need (a jog wheel, a slider that works as a T bar for master speed, and plenty +of buttons) at a fraction of the price of a “real” slow motion remote. +A sample MIDI mapping is included with Futatabi. + +Futatabi currently does not support classic RS-422 controllers, only MIDI +controllers. + Monitoring ---------- @@ -284,5 +318,50 @@ Monitoring Tally and status talkback ''''''''''''''''''''''''' +In addition to the verbal communication between the two operators +(see :ref:`coop`), it is also useful to have automatic communication +between Nageru and Futatabi. This goes both ways. + +First, Futatabi can consume :ref:`Nageru's tally data ` like any camera +can; give the correct channel URL to *--tally-url* on the Futatabi command line, +and the color around the live view will show up when you are ready or playing +(e.g. *--tally-url http://nageru-server.example.org:9096/channels/2*). + +Second, Futatabi can export its current status in two ways. The simplest is +through a REST call; the HTTP server that exposes the stream also exposes +the endpoint */queue_status* (e.g. http://futatabi-server.example.org:9096/queue_status). +This contains the same text as is below the live window, ie., how much time +is queued or left. + +The same status is also exported programmatically in the video output from +Futatabi, as a subtitle track. This allows the Nageru theme not only to display +it if desired, but even to act automatically to switch to a different channel +when the playlist is nearing its end. (See :ref:`subtitle-ingest` for information +on how to digest such information from the Nageru side.) + +Each subtitle entry is displayed momentarily before the frame it belongs to, +and has the following format: + + Futatabi 1.8.2;PLAYING;6.995;0:06.995 left + +The semicolon-separated columns are as follows: + + * The first column is the identifier for the Futatabi version in use; if the format + should ever diverge between versions, it can serve as a way to distinguish between + them if needed. (The version may also change without the format changing.) + For now, however, you can ignore it. + * The second column is either PLAYING or PAUSED, depending on the current status. + * The third column is how many seconds is queued up (PAUSED) or remaining (PLAYING). + It is always in C locale, no matter what the user has set (ie., the decimal point + will always be a period). Note that this does not take into account the master + speed (see :ref:`speed`). + * Finally, the fourth column is a human-readable string, the same as is exposed + on the /queue_status endpoint above. + Prometheus metrics '''''''''''''''''' + +Like Nageru, Futatabi supports a series of Prometheus metrics for monitoring; +see :doc:`monitoring` for general information. Futatabi provides entirely different +metrics, though, mostly related to performance. There is no predefined Grafana +dashboard available at the current time.