music_on_linux:audio_관련_스크립트_모음
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| music_on_linux:audio_관련_스크립트_모음 [2021/03/22 13:20] – [정해영의 audio.qsynth script] hyjeong | music_on_linux:audio_관련_스크립트_모음 [2023/09/08 13:08] (current) – hyjeong | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Audio 관련 스크립트 모음 ====== | ====== Audio 관련 스크립트 모음 ====== | ||
| - | ===== Ted's original audio scrip ===== | + | ===== Ted's original audio script |
| Available from http:// | Available from http:// | ||
| #!/bin/bash | #!/bin/bash | ||
| Line 134: | Line 134: | ||
| ===== 정해영의 start_jack_uca200 script ===== | ===== 정해영의 start_jack_uca200 script ===== | ||
| + | #!/bin/bash | ||
| + | | ||
| + | #echo " | ||
| + | | ||
| + | jack_control start | ||
| + | jack_control ds alsa | ||
| + | jack_control dps device hw:CODEC | ||
| + | jack_control dps rate 48000 | ||
| + | jack_control dps nperiods 3 | ||
| + | jack_control dps period 128 | ||
| + | sleep 5 | ||
| + | #a2jmidid -e & | ||
| + | sleep 5 | ||
| + | qjackctl 2> /dev/null & | ||
| + | | ||
| + | process_id=$(pidof pavucontrol) | ||
| + | if [[ -z $process_id ]]; then | ||
| + | echo " | ||
| + | pavucontrol 2> /dev/null & | ||
| + | fi | ||
| + | |||
| + | ===== 범용 스크립트 start_jack_generic ===== | ||
| + | #!/bin/bash | ||
| + | | ||
| + | #echo " | ||
| + | | ||
| + | DEVICE=$1 | ||
| + | | ||
| + | if [ -z ${DEVICE} ] | ||
| + | then | ||
| + | echo You did not specify any sound card! | ||
| + | exit 1 | ||
| + | fi | ||
| + | | ||
| + | PATTERN=" | ||
| + | if grep -q " | ||
| + | echo Audio device ${DEVICE} found! | ||
| + | else | ||
| + | echo ${DEVICE} is not a valid sound card! | ||
| + | exit 1 | ||
| + | fi | ||
| + | | ||
| + | jack_control start | ||
| + | jack_control ds alsa | ||
| + | jack_control dps device hw: | ||
| + | jack_control dps rate 48000 | ||
| + | jack_control dps nperiods 3 | ||
| + | jack_control dps period 128 | ||
| + | sleep 5 | ||
| + | #a2jmidid -e & | ||
| + | sleep 5 | ||
| + | qjackctl 2> /dev/null & | ||
| + | | ||
| + | process_id=$(pidof pavucontrol) | ||
| + | if [[ -z $process_id ]]; then | ||
| + | echo " | ||
| + | pavucontrol 2> /dev/null & | ||
| + | fi | ||
| + | | ||
| + | 사용 방법은 다음과 같다. | ||
| + | $ start_jack CODEC | ||
| + | Audio device CODEC found! | ||
| + | --- start | ||
| + | --- driver select " | ||
| + | --- driver param set " | ||
| + | --- driver param set " | ||
| + | --- driver param set " | ||
| + | --- driver param set " | ||
| + | |||
| + | ===== 정해영의 run_fluidsynth script ===== | ||
| + | JACK 구동 명령어를 스크립트 내에 삽입하였다. | ||
| + | # | ||
| + | | ||
| + | option=" | ||
| + | | ||
| + | if [ " | ||
| + | then | ||
| + | option=" | ||
| + | echo | ||
| + | echo "ALSA audio driver will be used (default: JACK)" | ||
| + | elif ! pgrep -l jackd | ||
| + | then | ||
| + | echo | ||
| + | echo " | ||
| + | echo "jackd -d alsa --device hw:Intel --rate 44100 --period 128 &" | ||
| + | jackd -d alsa --device hw:Intel --rate 44100 --period 128 & | ||
| + | echo " | ||
| + | sleep 5 | ||
| + | fi | ||
| + | | ||
| + | OIFS=$IFS; IFS=$' | ||
| + | array=($(find $HOME/sf2 -type f)); IFS=$OIFS | ||
| + | | ||
| + | echo | ||
| + | echo " | ||
| + | i=0 | ||
| + | for var in " | ||
| + | do | ||
| + | echo " | ||
| + | awk '{idx = split($3, parts, "/" | ||
| + | i=`expr $i + 1` | ||
| + | done | ||
| + | echo | ||
| + | echo -n " | ||
| + | read -r input | ||
| + | CMD=" | ||
| + | $CMD | ||
| + | |||
| + | ===== 정해영의 simple_synth 스크립트 ===== | ||
| + | PulseAudio를 오디오 드라이버로 사용하는 매우 단순한 FluidSynth 구동 스트립트. 사운드 폰트 파일을 인수로 지정하지 않으면 FluidR3_GM.sf2가 로드된다. | ||
| + | |||
| + | # | ||
| + | | ||
| + | if [ -z " | ||
| + | then | ||
| + | SF=/ | ||
| + | else | ||
| + | SF=$1 | ||
| + | fi | ||
| + | echo -e " | ||
| + | fluidsynth -a pulseaudio -m alsa_seq -o midi.autoconnect=1 -r 48000 -g 0.5 $SF | ||
| + | sleep 5 | ||
| + | connect_midi_keyboard | ||
| + | |||
| + | ===== connect_midi_keyboard ===== | ||
| + | aconnect -i | ||
| + | aconnect -o | ||
| + | echo | ||
| + | aconnect "iCON iKeyboard" | ||
| + | |||
| + | |||
music_on_linux/audio_관련_스크립트_모음.1616386816.txt.gz · Last modified: by hyjeong
