     (when (first-trigger-missing?)
       (pop-burst-image pop-timeout-ms)) ; drop first image if first trigger doesn't happen
     (swap! state assoc :burst-time-offset nil)
-    (let [burst-events (assign-z-offsets (event :burst-data))
+    (let [burst-events (vec (assign-z-offsets (event :burst-data)))
           camera-channel-names (get-camera-channel-names)]
       (produce-burst-images burst-events camera-channel-names pop-timeout-ms out-queue))))
 

         (if (core getAutoShutter)
           [true (:close-shutter event)]
           [false false])]
    (condp = (:task event)
      :snap (apply snap-image shutter-states)
      :burst (init-burst (count (:burst-data event))

      (get {1 1 , 4 3} n))))

(defn super-channels [simple-channel camera-channel-names]
  (let [n (count camera-channel-names)]
    (if (< 1 n)
      (map #(update-in simple-channel [:name] super-channel-name % n)
           camera-channel-names)
      simple-channel)))

(defn all-super-channels [simple-channels camera-channel-names]
  (flatten (map #(super-channels % camera-channel-names) simple-channels)))
