Lass den Bash-Terminal-Cursor im Takt von Survivor - "Auge des Tigers" blinken

61

Ich hörte Survivor - "Eye of the Tiger" und schrieb eine Dokumentation in Vim und bemerkte, dass der Cursor, der nicht im Takt blitzte, mich nervte. Kann das behoben werden?

Ich benutze Terminatorund bash.

0x7c0
quelle
20
Was für eine herrlich schreckliche Idee, +1 :).
Terdon
4
Was meiner Meinung nach am schwierigsten ist, ist die programmgesteuerte Bestimmung des "Takts" des Songs.
KA
12
Ich brauche eine Klärung dieser Frage. @StephenMartin, möchtest du, dass die Beats nur die monotonen "duh, duh, duh, duh, duh" sind, die in der Melodie enthalten sind? Oder willst du, dass es das unregelmäßige "DUNT! Duh, duh, DUNT! Duh, duh DUNT! Dun dun duuuuuuuuh" ist? Oder willst du die Pizzicato Tympani Beats wie in "tztztztztztztztz"? Außerdem benötigen wir eine Möglichkeit, um die Schlagintensität Terminatormit variabler Blinkhelligkeit anzuzeigen, oder etwas, wenn Sie die unregelmäßigen Schläge wünschen.
allquixotic
3
Ich möchte, dass sich die Farbe des Cursors an die Texte anpasst, wenn ich Jimi's spiele Bold As Love.
Ott
2
@allquixotic Ich sehe, dass es für das Duna-Duna-Duna-Intro jeden halben Takt blinkt, aber für die Power-Akkord-Hits anbleibt. Dann, wenn es den Hauptschlag trifft, der auf der regulären BPM schlägt, aber wieder in der Ein-Position für die Power-Akkorde pausiert.
0x7c0

Antworten:

26

Schauen Sie sich mein Rhythmbox-Plugin an, um die Tonhöhe, das Tempo und die Geschwindigkeit des wiedergegebenen Songs zu ändern. Ich weiß, es ist ein Hack, und Sie müssen das richtige Tempo manuell herausfinden, um es so einzustellen, dass es mit Ihrem Cursor synchron blinkt, aber für diese äußerst wichtige und praktische Aufgabe hielt ich es für wichtig, Ihnen eine zu geben Provisorische Problemumgehung, bis jemand herausfindet, wie eine Gstreamer-Pipeline mit dem Beat Detection-Plug-In in bashoder einem anderen von Ihnen verwendeten virtuellen Terminal zu bearbeiten ist .

Sie wissen, jetzt, wo Sie es erwähnen, wäre es nicht allzu schwierig, dies zu tun, und ich könnte es wahrscheinlich innerhalb eines Tages mit der BPMDetect-Klasse von SoundTouch programmieren.

Hör auf, mir Ideen zu geben, wie ich beim Programmieren beschäftigt aussehen und dabei Zeit verschwenden kann.

allquixotic
quelle
11
Alter, ich bin froh, dass du die Wichtigkeit dieser Frage bestätigst. Ich werde versuchen, Ihr Problem vorübergehend zu umgehen, aber ich bin der Meinung, dass sich der Cursor an das Tempo des Tracks anpassen sollte. Es ist mir egal, ob es nur für diesen einen Track passt, da es der einzige Track ist, den ich besitze, und ich höre ihn mir ständig in einer Schleife an.
0x7c0
9
#!/bin/bash
trap 'tput cnorm' EXIT
states=("$(tput civis)" "$(tput cnorm)")
state=0
while :; do
    printf %s "${states[state=!state]}"
    sleep .1
done

Musiksynchronisation eine Übung für den Leser.

ormaaj
quelle