User Tools

Site Tools


music_on_linux:audio_관련_스크립트_모음

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
music_on_linux:audio_관련_스크립트_모음 [2021/03/22 04:20] – [정해영의 audio.qsynth script] hyjeongmusic_on_linux:audio_관련_스크립트_모음 [2023/09/08 04:08] (current) hyjeong
Line 1: Line 1:
 ====== Audio 관련 스크립트 모음 ====== ====== Audio 관련 스크립트 모음 ======
-===== Ted's original audio scrip =====+===== Ted's original audio script =====
 Available from http://tedfelix.com/linux/linux-midi.html Available from http://tedfelix.com/linux/linux-midi.html
   #!/bin/bash   #!/bin/bash
Line 134: Line 134:
  
 ===== 정해영의 start_jack_uca200 script ===== ===== 정해영의 start_jack_uca200 script =====
 +  #!/bin/bash
 +  
 +  #echo "suspend 1" | pacmd
 +  
 +  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 "Starting PulseAudio Volume Control..."
 +      pavucontrol 2> /dev/null &
 +  fi
 +
 +===== 범용 스크립트 start_jack_generic =====
 +  #!/bin/bash
 +  
 +  #echo "suspend 1" | pacmd
 +  
 +  DEVICE=$1
 +  
 +  if [ -z ${DEVICE} ]
 +  then
 +      echo You did not specify any sound card!
 +      exit 1
 +  fi
 +  
 +  PATTERN="\[${DEVICE}  "
 +  if grep -q "${PATTERN}" /proc/asound/cards; then
 +      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:${DEVICE}
 +  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 "Starting PulseAudio Volume Control..."
 +      pavucontrol 2> /dev/null &
 +  fi
 +  
 +사용 방법은 다음과 같다.
 +  $ start_jack CODEC
 +  Audio device CODEC found!
 +  --- start
 +  --- driver select "alsa"
 +  --- driver param set "device" -> "hw:CODEC"
 +  --- driver param set "rate" -> "48000"
 +  --- driver param set "nperiods" -> "3"
 +  --- driver param set "period" -> "128"
 +
 +===== 정해영의 run_fluidsynth script =====
 +JACK 구동 명령어를 스크립트 내에 삽입하였다.  --- //2022/04/05 15:47//
 +  #!/usr/bin/env bash
 +  
 +  option="-a jack --connect-jack-outputs"
 +  
 +  if [ "$1" = "alsa" ] || [ "$1" = "-a" ] || [ "$1" = "-alsa" ]
 +      then
 +          option="-a alsa"
 +          echo
 +          echo "ALSA audio driver will be used (default: JACK)"
 +      elif ! pgrep -l jackd
 +      then
 +         echo
 +         echo "Starting JACK...!\n"
 +         echo "jackd -d alsa --device hw:Intel --rate 44100 --period 128 &"
 +         jackd -d alsa --device hw:Intel --rate 44100 --period 128 &
 +         echo "Sleeping five seconds.."
 +         sleep 5
 +  fi
 +  
 +  OIFS=$IFS; IFS=$'\n'
 +  array=($(find $HOME/sf2 -type f)); IFS=$OIFS
 +  
 +  echo
 +  echo "Soundfonts installed in $HOME/sf2: "
 +  i=0
 +  for var in "${array[@]}"
 +  do
 +      echo "[$i]:  $(du -sh ${var})" | \
 +          awk '{idx = split($3, parts, "/"); print $1, parts[idx], "-", $2}'
 +      i=`expr $i + 1`
 +  done
 +  echo
 +  echo -n "Select sf2 index number: "
 +  read -r input
 +  CMD="fluidsynth --server $option --reverb=0 --chorus=0 --gain=0.4 ${array[$input]}"
 +  $CMD
 +
 +===== 정해영의 simple_synth 스크립트 =====
 +PulseAudio를 오디오 드라이버로 사용하는 매우 단순한 FluidSynth 구동 스트립트. 사운드 폰트 파일을 인수로 지정하지 않으면 FluidR3_GM.sf2가 로드된다.
 +
 +  #!/usr/bin/bash
 +  
 +  if [ -z "$1" ]
 +    then
 +        SF=/usr/share/sounds/sf2/FluidR3_GM.sf2
 +    else
 +        SF=$1
 +  fi
 +  echo -e "\nSoundFont file: $SF\n"
 +  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" "FLUID Synth"
 +
 +
  
  
music_on_linux/audio_관련_스크립트_모음.1616386816.txt.gz · Last modified: 2021/03/22 04:20 by hyjeong