LINUX.ORG.RU

Сообщения sucker

 

Подменять значение в ключе команды прямо в процессе исполнения?

Форум — General

Вводные:

cat /dev/urandom | base64 -w $COLUMNS | lolcat

Задача: Нужно, чтобы радужка, которая плывёт по экрану, выглядела как-то поинтереснее. У lolcat есть следующие замечательные ключи:

       -p f, --spread=f
              Inclination of the rainbow stripes (character widths per line hight; high values (>1000) give  almost  hori‐
              zonal stripes, low values (0.1) almost vertical ones; default: 3.0).

       -F f, --freq=f
              Frequency of the rainbow (low values around 0.0001 give almost monochromous screens; default: 0.1).
Визуал выглядел бы интереснее, если бы алгоритм окраски текста менялся раз в несколько секунд.

Неверное решение:

while true; do cat /dev/urandom | base64 -w $COLUMNS | lolcat -F $RANDOM -p $RANDOM; sleep 2; done
По замыслу, каждые две секунды лолкэт должен вызываться с новыми значениями частоты и плотности. Не могу сказать наверняка, но визуально это так не выглядит. Похоже, что он продолжает исполнятся с теми же значениями, что получил в первую итерацию цикла.

Гипотеза: Возможно, тут могут помочь системные вызовы прямо к лолкэт прямо во врямя исполнения.

Верное решение: ???

 

sucker
()

Нормально ли, что все способы воспроизведения звука отказываются работать не по назначению?

Форум — General

Мне нужна команда, которая воспроизведёт рандомные шумы при исполнении скрипта.

Что было попробовано, и что у меня с этим вышло:

  • Вот набор подобных вещей на реддите. Ни один из описанных здесь способов не привёл к желаемому результату.
    • sudo aplay /dev/sda
      Что получил:
      Playing raw data '/dev/sda' : Unsigned 8 bit, Rate 8000 Hz, Mono
      Но спикер молчит. ^C.

    • cd /usr/bin && tar cvf - .|aplay -f U8 -r 44100
      Выводит:
      ./
      ./ppmquantall
      ./lwp-dump
      ./mkfontscale
      Playing raw data 'stdin' : Unsigned 8 bit, Rate 44100 Hz, Mono
      aplay: set_params:1299: ./fc-cache
      Sample format non available
      Available formats:
      - S16_LE
      - S32_LE
      
      ... и передаёт управление в консоль. Спикер молчит.
  • Существует замечательная утилита beep. Но почему-то, у меня она всегда молчит.
    sucker@debian:~ $ beep --verbose
    [DEBUG] 1 times 200 ms beeps (100 delay between, 0 delay after) @ 440.00 Hz
    sucker@debian:~ $ beep --debug
    [DEBUG] 1 times 200 ms beeps (100 delay between, 0 delay after) @ 440.00 Hz
    sucker@debian:~ $ beep -e /dev/dsp
    ioctl: Invalid argument
    ioctl: Invalid argument
  • И напоследок.
    cat /dev/urandom > /dev/dsp
    Единственная вещь, которая заработала, хотя вчера у меня с ней что-то не получалось (уже не помню, что), и этот вариант был отброшен.

Вопросов по существу здесь три.

1) Что не так с aplay?

2) Почему не работает beep?

Мне кажется, дело в каких-то причудливых настройках звуковой карты, но я не знаю, как это проверить.

3) Кто-нибудь знает какие-нибудь ещё нестандартные способы звукоизвлечения?

 ,

sucker
()

RSS подписка на новые темы