/** @brief How much of track has been played so far (seconds) */
long sofar;
+ /** @brief True if track preparation is underway
+ *
+ * This is set when a decoder has been started and is expected to connect to
+ * the speaker, but the speaker has not sent as @ref SM_ARRIVED message back
+ * yet. */
+ int preparing;
+
/** @brief True if decoder is connected to speaker
*
* This is not a @ref playing_state for a couple of reasons
/** @brief Decoder (or player) process ID */
pid_t pid;
+
+ /** @brief Termination signal sent to subprocess
+ *
+ * Used to supress 'terminated' messages.
+ */
+ int killed;
};
void queue_insert_entry(struct queue_entry *b, struct queue_entry *n);