                       (diff [:channel :properties ["Core" "Shutter"]]))
                true)))))
 
-(defn process-channel-skip-frames [events]
+(defn process-channel-skip-frames
+  "Remove events corresponding to a channel/frame that should be skipped."
+  [events]
   (filter
     #(or
        (nil? (% :channel))

        (add-next-task-tags)   
        )))

(defn make-channel-metadata [channel]
  (when-let [props (:properties channel)]
    (into {}
      (for [[[d p] v] props]

       (zero? (mod (% :frame-index) (-> % :channel :skip-frames inc))))
    events))

(defn process-new-position
  "Attach a [:new-position true] entry to events where appropriate."
  [events]
  (for [[e1 e2] (pairs-back events)]
    (assoc e2 :new-position
      (different e1 e2 [:position-index]))))

(defn process-use-autofocus
  "Modify events sequence so that event maps will include an [:autofocus true]
   entry when appropriate."
  [events use-autofocus autofocus-skip]
  (for [[e1 e2] (pairs-back events)]
    (assoc e2 :autofocus
      (and use-autofocus
