Команда безопасного перемещения

Я нашел решение, хотя и не оптимальное, на которое рассчитывал.
Если у кого-то есть идея, буду рад услышать. А пока я решу проблему следующим образом:

Я заметил, что скорость поступающих сэмплов падает при отключении кабеля. Я надеюсь, что то же самое происходит, когда компьютер выключается, но я думаю, что это довольно безопасно предположить.
Во всяком случае, чтобы узнать, воспроизводить или игнорировать поток, я использовал хронограф high_precision_clockдля измерения интервала между 20 периодами.
В каждом периоде я собираю количество прочитанных выборок, используяsnd_pcm_readi(Я использую неблокирующий режим и тайм-аут, чтобы предотвратить застревание в процессе чтения дольше, чем должен длиться период ).
Наконец, я рассчитываю частоту дискретизации, и если она отличается от моей ожидаемой частоты дискретизации более чем на 2 кГц,Я игнорирую поток, пока он снова не вернется в ожидаемый диапазон.

0
01.02.2021, 15:38
2 ответа

mmv по предложению @Quasímodo

0
18.03.2021, 22:33

Я бы рекомендовал псевдоним команды mv в вашем~/.bashrc(см. здесь для различных сценариев входа и того, какой из них использовать ).

Код будет выглядеть следующим образом:

alias mv="mv --no-clobber"

Это означает, что всякий раз, когда вы используете mv в своем терминале, он автоматически (и невидимо )расширяет его, чтобы включить параметр.

В качестве альтернативы вы можете использовать флаг --interactive(см. здесь для различий между опциями ).

2
18.03.2021, 22:33

Теги

Похожие вопросы