Sida 34 av 98

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 21:00
av Konservburk
Hans Linde skrev:start kan inte stannas med pause eller stop
texten behöver markeras om vid tex "list".
Jag har visst haft sönder dem... just nu funkar de precis som start.
Hans Linde skrev:ctlF7 scale-fönster öppnas och röst stannar. Den går inte att starts.
Det felat lyckas jag inte hitta. För mig stannar det inte alls. Vad menar du med att den inte går att starta igen?
Hans Linde skrev:ctlF10-12 felmedelande
Samma felmeddelande som förut med "<Control>kommando" som inte finns?

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 21:16
av Hans Linde
Jag kommer ingen vart eftersom det låst sig,
Det är möjligt att låsning skede på annan plats
i raden, men jag kunde inget dubbel kontrollera.

Nej det vart inte samma felmeddelande.
Om du ger tillbaka "print screen" ska jag visa :(

Hmmm... ny vilket funktion!!!!!
Det går att markera innehållet i en ruta.
Det är ett stort problem för dyslektiker
att de där j-vl grå små rutorna i Window inte
nappar på ctlC..... men här ser de felmeddelandet

Inget kommando 22 har definierats.
Inget kommando 23 har definierats.
Inget kommando 24 har definierats.

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 21:20
av Konservburk
Hans Linde skrev:Nej det vart inte samma felmeddelande.
Om du ger tillbaka "print screen" ska jag visa :(
Det går att ta en skärmbild från gimp utan någon print-screen... file(arkiv)-menyn -> acquire(hämta?)-> screenshot.
Hans Linde skrev:men här ser de felmeddelandet

Inget kommando 22 har definierats.
Inget kommando 23 har definierats.
Inget kommando 24 har definierats.
Har du kört en "install" igen?

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 21:22
av Konservburk
Du får en r9 med lagad stop/pause och en fulfix så att "list" inte förstör utklippet:

Kod: Markera allt

#!/bin/sh
# r9
case "$-" in *i*) return ;; esac
export LC_ALL=C
#exec 2>&-
APP="Talsyntes"
DIR=~/".talsyntes"
SCRIPT="$DIR/talsyntes.sh"
DATA_DIR="$DIR/data"
VOICES_DIR="$DIR/voices"
SETTINGS_DIR="$DIR/settings"

mkdir -p "$DATA_DIR" "$VOICES_DIR" "$SETTINGS_DIR"

if test "x$SCRIPT" != "x$0" && cp -f "$0" "$SCRIPT" 2>&-
then
   iconv -f utf-8 -t iso8859-1 "$0" >/dev/null 2>&- ||
   iconv -f iso8859-1 -t utf-8 "$0" >"$SCRIPT"
   chmod +x "$SCRIPT" && exec "$SCRIPT" "$@"
fi
get_dialog() {
   cat "$SETTINGS_DIR"/dialog 2>&- ||
   which zenity 2>&- ||
   which Xdialog 2>&- ||
   echo "$0: missing zenity or Xdialog" >&2
}
case "$1" in
stop|start)
   pkill -P $(pgrep -u"$(id -u)" -d, "${SCRIPT##*/}") mplayer
;;
pause)
   find "$DIR" -name mplayer.\*.fifo -type p -exec sh -c 'echo pause >{}' \;
;;
list)
   dialog="$(get_dialog)"
   ps -opid=,ppid=,args= $(pgrep -u"$(id -u)" "${SCRIPT##*/}") |
   grep -vE "(^|[[:blank:]]+)$$([[:blank:]]+|$)" | grep "$*$" |
   while read pid
   do pkill -P "${pid%% *}" "${dialog##*/}"
   done
;;
*)
   ps -opid=,ppid=,args= $(pgrep -u"$(id -u)" "${SCRIPT##*/}") |
   grep -vE "(^|[[:blank:]]+)$$([[:blank:]]+|$)" |
   grep -q "$*$" && exit
;;
esac

create_dialog() {
   dialog="$(get_dialog)"
   case "$1" in
   list)
      type="$2"
      title="$3"
      while read item
      do echo "$item" | grep -qE "($4)" && default=true || default=false
         case "$dialog" in
         *zenity)
            set "$@" "$default" "${item##*/}"
         ;;
         *Xdialog)
            set "$@" "${item##*/}" "${item##*/}"
            "$default" && set "$@" on || set "$@" off
         ;;
         esac
      done
      shift 4
      case "$dialog" in
      *zenity)
         set -- --width 400 --height 400 --list \
            --"$type"list --text "$title" --column "" --column "" "$@"
      ;;
      *Xdialog)
         set -- --stdout --separator "|" --no-tags \
            --"$type"list "$title" 400x400 0 "$@"
      ;;
      esac
   ;;
   scale)
      case "$dialog" in
      *zenity)
         set -- --scale --text "$2" --print-partial \
            --min-value -100 --max-value 100 --value "$3"
      ;;
      *Xdialog)
         set -- --stdout --rangebox "$2" 10 60 -100 100 "$3"
      ;;
      esac
   ;;
   progress)
      case "$dialog" in
      *zenity)
         set -- --width 300 --progress --auto-close --text "$2"
      ;;
      *Xdialog)
         set -- --stdout --gauge "$2" 5 60
      ;;
      esac
   ;;
   question)
      case "$dialog" in
      *zenity)
         set -- --question --text "$2"
      ;;
      *Xdialog)
         set -- --stdout --yesno "$2" 10 60
      ;;
      esac
   ;;
   info)
      case "$dialog" in
      *zenity)
         set -- --info --no-wrap --text "$2"
      ;;
      *Xdialog)
         set -- --stdout --fixed-font --msgbox "$2" 0 0
      ;;
      esac
   ;;
   *) return ;;
   esac
   LC_ALL=sv_SE.UTF-8 "${dialog:-:}" --title "$APP" "$@"
}
metacity_info() {
   echo '
      KEY="/apps/metacity/global_keybindings"
      CMD="/apps/metacity/keybinding_commands"
      PREFIX="run_command_"
      SUFFIX=""
   '
}
compiz_info() {
   echo '
      KEY="/apps/compiz/general/allscreens/options"
      CMD="/apps/compiz/general/allscreens/options"
      PREFIX="run_command"
      SUFFIX="_key"
   '
}
scale_mapping() {
   awk -vmin="$1" -vdef="$2" -vmax="$3" -vbend="${4:-1}" '
      function f(x)
      {
         factor = (a != b) ? 2*a*b*log(a/b)/(a-b) : (a+b)
         return factor * log(x) * x / (x^2-1) - ((a < b) ? a : b) / bend
      }
      BEGIN {
         a = (max - def)
         b = (def - min)
         if (max < min) { a = -a; b = -b; }
         x0=2; x1=3; y0=f(x0); y1=f(x1); lim=1e-4
         while( x1>1 && ( (x1-x0)>lim || (x0-x1)>lim) ) {
            y1 = f(x1); x2 = x1 - (x1 - x0) * y1 / (y1 - y0)
            x0 = x1; x1 = x2; y0 = y1;
         }
         incl = (x1>1) ? x1 : 1
      }
      {
         expo = $1 / 100
         if (incl != 1) expo = (incl^expo - 1/incl^expo) / (incl - 1/incl)
         expo = (expo + 1) / 2
         if (a != b) expo = ((a / b)^(2 * expo) - 1) / ((a / b)^2 - 1)
         printf("%f\n", min + (max - min) * expo)
      }
   '
}
get_speed() {
   2>&- scale_mapping 5 1 0.2 <"$SETTINGS_DIR"/speed || echo 1.0
}
get_freq() {
   2>&- scale_mapping 0.2 1 5 <"$SETTINGS_DIR"/freq || echo 1.0
}
get_volume() {
   2>&- scale_mapping 0.2 1 5 <"$SETTINGS_DIR"/volume || echo 1.0
}
get_rate() {
   2>&- scale_mapping 1000 16000 48000 <"$SETTINGS_DIR"/rate || echo 16000
}
get_scale() {
   2>&- scale_mapping 0.2 1 5 <"$SETTINGS_DIR"/scale || echo 1.0
}
get_stride() {
   2>&- scale_mapping 1 60 400 <"$SETTINGS_DIR"/stride || echo 60
}
get_overlap() {
   2>&- scale_mapping 0 0.2 1 <"$SETTINGS_DIR"/overlap || echo 0.2
}
get_search() {
   2>&- scale_mapping 0 14 200 <"$SETTINGS_DIR"/search || echo 14
}
get_method() {
   2>&- cat "$SETTINGS_DIR"/method || echo tempo
}
get_accel() {
   2>&- scale_mapping 0.2 1 5 <"$SETTINGS_DIR"/accel || echo 1.0
}
get_voice() {
   2>&- readlink "$SETTINGS_DIR"/voice
}

find -L "$SETTINGS_DIR" -maxdepth 1 -name voice -type l -exec rm {} \;
ls "$VOICES_DIR"/[a-z][a-z][1-9]:* >/dev/null 2>&- &&
test -x "$SCRIPT" &&
test -x "$DIR/mbrola" ||
set install

cd "$DIR"
case "$1" in
stop|pause)
;;
loop)
   while "$SCRIPT" start ; do :; done
;;
start)
   #xclip -o | grep -q . || exit
   test -h "$SETTINGS_DIR/voice" || exec "$SCRIPT" adjust voice
   find "$DIR" -name mplayer.\*.fifo -type p -exec rm -f {} \;
   FIFO="$DIR/mplayer.$$.fifo"
   trap 'rm -f "$FIFO"' EXIT
   test -p "$FIFO" || mkfifo "$FIFO"
   if voice=$(ls "$VOICES_DIR/$2":* 2>&-)
   then shift
   else voice="$(get_voice)"
   fi
   voice="${voice##*/}"
   speed="$(get_speed)"
   freq="$(get_freq)"
   volume="$(get_volume)"
   rate="$(get_rate)"
   scale="$(get_scale)"
   stride="$(get_stride)"
   overlap="$(get_overlap)"
   search="$(get_search)"
   method="$(get_method)"
   accel="$(get_accel)"

   scaletempo="$scaletempo${scaletempo+:}scale=${scale:-1}"
   scaletempo="$scaletempo${scaletempo+:}stride=${stride:-60}"
   scaletempo="$scaletempo${scaletempo+:}overlap=${overlap:-0.20}"
   scaletempo="$scaletempo${scaletempo+:}search=${search:-14}"
   scaletempo="$scaletempo${scaletempo+:}speed=${method:-tempo}"
   scaletempo="-af scaletempo=$scaletempo -speed ${accel:-1}"

   xclip -o |
   espeak -v mb-"${voice%:*}" |
   "$DIR/mbrola" -e \
      -t "${speed:-1}" \
      -f "${freq:-1}" \
      -v "${volume:-1}" \
      -l "${rate:-16000}" \
      "$VOICES_DIR/$voice" - -.wav |
   mplayer -really-quiet -input file="$FIFO" $scaletempo -demuxer audio -
;;
list)
   cd "$SETTINGS_DIR"
   list=$(
      echo "Nuvarande inställningar"
      echo
      for option in \
         voice speed freq rate volume accel \
         scale stride overlap search method dialog
      do if test -h "$option"
         then
            setting=$(readlink "$option")
            setting="${setting##*/}" && value=""
         else
            setting="$(cat $option 2>&-)"
            value="$(get_$option)"
         fi
         test "$option" = dialog &&
         setting="${value##*/}" && value=""
         test "$option" = method &&
         setting="${setting:-tempo}" && value=""
         printf "%s:\t\t%s\t\t%s\n" \
            "$option" "${setting:-0}" "${value:+(}$value${value:+)}"
      done #| sort
   )
   create_dialog question "$list"
   exit
;;
reset)
   cd "$SETTINGS_DIR"
   case "$2" in
   '')
      create_dialog question "Återställ standardinställningarna?" || exit
      rm -f \
         dialog speed freq volume rate scale stride overlap search method accel
   ;;
   dialog|speed|freq|volume|rate|scale|stride|overlap|search|method|accel)
      rm -f "$2"
   ;;
   esac
;;
adjust)
   case "$2" in '')
      set "$1" $(
         printf "%s\n" speed freq volume rate \
            scale stride overlap search method accel voice dialog |
         create_dialog list radio "Välj inställning" speed
      )
      test $# -gt 1 && exec "$SCRIPT" "$@" || exit
   esac
   value=$(cat "$SETTINGS_DIR/$2" 2>&-)
   case "$2" in
   voice)
      case "$3" in
      '')
         voice=$(readlink "$SETTINGS_DIR"/voice)
         voice=$(
            ls "$VOICES_DIR"/[a-z][a-z][1-9]:* 2>&- |
            create_dialog list radio "Välj röst" "^${voice#../}$"
         ) && test -n "$voice" && voice="$VOICES_DIR/$voice"
      ;;
      *)
         voice=$(ls "$VOICES_DIR/$3":* 2>&-)
      ;;
      esac &&
      ln -sf "$voice" "$SETTINGS_DIR"/voice
      exit
   ;;
   dialog)
      case "$3" in
      '')
         value=$(
            which zenity Xdialog 2>&- |
            create_dialog list radio "Välj dialogrutesystem" "${value:-zenity}"
         ) && echo "$value" >"$SETTINGS_DIR/$2"
      ;;
      zenity|Xdialog)
         echo "$3" >"$SETTINGS_DIR/$2"
      ;;
      esac
      exit
   ;;
   speed) title="Uppläsningshastighet" ;;
   freq) title="Röstläge" ;;
   volume) title="Uppläsningsvolym" ;;
   rate) title="Rösttäthet" ;;
   scale|stride|overlap|search|accel) title="scaletempo: $2" ;;
   method)
      case "$3" in
      '')
         value=$(
            printf "%s\n" tempo pitch both none |
            create_dialog list radio "scaletempo: $2" "${value:-tempo}"
         ) && echo "$value" >"$SETTINGS_DIR/$2"
      ;;
      tempo|pitch|both|none)
         echo "$3" >"$SETTINGS_DIR/$2"
      ;;
      esac
      exit
   ;;
   *) exit
   ;;
   esac
   case "$3" in
   '')
      { create_dialog scale "$title" "${value:-0}" || echo "$value"; } |
      while read value
      do test -n "$value" && echo "$value" >"$SETTINGS_DIR/$2"
      done
   ;;
   *)
      echo "$3" |
      awk -vvalue="$value" '{
         value = ($1) ? value + $1 : 0
         value = (value < 100) ? value : 100
         value = (value > -100) ? value : -100
         print(value)
      }' >"$SETTINGS_DIR/$2"
   ;;
   esac
;;
install)
   URL="http://tcts.fpms.ac.be/synthesis/mbrola"
   TMP=$(mktemp)
   trap 'rm -f "$TMP"' EXIT
   wget -qO- "$URL"/mbrcopybin.html |
   sed -n '
      s|.*"\(bin/[^"]*.zip\)"[^>]*>[^<]*LINUX i386.*|\1 (0.3Mb)|p
      s|.*"\(dba/[^/]*/[^"]*\)"[^>]*>\([^:]*:\s*[^<]*\).*|\1\t\2|p
   ' >"$TMP"
   voices=$(
      cd /usr/share/espeak-data/voices/mb &&
      echo mb-[a-z][a-z][1-9] |
      sed 's/mb-//g;s/\(.\)\s\(.\)/\1|\2/g'
   )
   voices=$(
      grep -E "/($voices)/" <"$TMP" | cut -f2 |
      create_dialog list check "Välj språk" '^(sw|us|en)[[:digit:]]:' |
      sed 's/:[^|]*//g'
   )
   test -n "$voices" || exit
   rm -f "$VOICES_DIR"/[a-z][a-z][1-9]:* 2>&-
   cd "$DATA_DIR"
   grep -E "(^bin|/$voices/)" <"$TMP" |
   awk '{
      size[NR]=size[NR-1]+substr($NF,2,length($NF)-4)
      $NF=""
      voice[NR]=$0
   } END {
      for(i=1; i<=NR; i++) {
         print(100*size[i]/size[NR],voice[i])
      }
   }' |
   while read progress file voice
   do test -f "${file##*/}" ||
      wget -q "$URL/$file" 2>&1
      if test -z "$voice"
      then
         unzip -p "${file##*/}" mbrola-linux-i386 >"$DIR"/mbrola
         chmod +x "$DIR"/mbrola
      else
         unzip -p "${file##*/}" "${voice%%:*}" >"$VOICES_DIR/$voice" 2>&- ||
         unzip -p "${file##*/}" "${voice%%:*}/${voice%%:*}" \
            >"$VOICES_DIR/$voice"
      fi
      echo $progress
   done |
   create_dialog progress "Hämtar Röster..."
   bind_key() {
      eval $("$1"_info)
      gconftool-2 -a "$KEY" |
      awk '$1~/^'"$PREFIX"'[0-9]+'"$SUFFIX"'$/ && $3~/^'"$2"'$/{print($1)}' |
      while read binding
      do gconftool-2 -u "$KEY/$binding"
      done
      ID=$(
         gconftool-2 -a "$KEY" |
         sed -n "s/^\s*$PREFIX\([0-9]\+\)$SUFFIX\s*=\s*/\1\t/p" |
         sort -n |
         awk '{if($1-prev>1)exit;prev=$1}END{print(prev+1)}'
      )
      gconftool-2 \
         -s -t str "$KEY/$PREFIX${ID:-1}$SUFFIX" "$2" \
         -s -t str "$CMD/${PREFIX#run_}${ID:-1}" "$3"
   }
   for wm in metacity compiz ; do
      bind_key "$wm" "F1" "$SCRIPT stop"
      bind_key "$wm" "F2" "$SCRIPT pause"
      bind_key "$wm" "F3" "$SCRIPT start"
      bind_key "$wm" "F4" "$SCRIPT loop"
      bind_key "$wm" "F5" "$SCRIPT adjust"
      bind_key "$wm" "F6" "$SCRIPT list"
      bind_key "$wm" "F7" "$SCRIPT reset"
      bind_key "$wm" "F8" "$SCRIPT uninstall"
      bind_key "$wm" "F9" "$SCRIPT install"
      bind_key "$wm" "<Control>F1" "$SCRIPT voice"
      bind_key "$wm" "<Control>F2" "$SCRIPT speed"
      bind_key "$wm" "<Control>F3" "$SCRIPT freq"
      bind_key "$wm" "<Control>F4" "$SCRIPT rate"
      bind_key "$wm" "<Control>F5" "$SCRIPT volume"
      bind_key "$wm" "<Control>F6" "$SCRIPT accel"
      bind_key "$wm" "<Control>F7" "$SCRIPT scale"
      bind_key "$wm" "<Control>F8" "$SCRIPT stride"
      bind_key "$wm" "<Control>F9" "$SCRIPT overlap"
      bind_key "$wm" "<Control>F10" "$SCRIPT search"
      bind_key "$wm" "<Control>F11" "$SCRIPT method"
      bind_key "$wm" "<Control>F12" "$SCRIPT dialog"
   done
   create_dialog info "$APP installerad"
   exec "$SCRIPT" voice
;;
uninstall)
   create_dialog question "Avinstallera $APP?" || exit
   unbind_keys() {
      eval $("$1"_info)
      gconftool-2 -a "$CMD" |
      grep -F "$SCRIPT" |
      sed -n 's/[^0-9]*\([0-9]\+\)[^0-9]*/\1/p' |
      while read binding
      do gconftool-2 -u "$CMD/${PREFIX#run_}$binding"
         gconftool-2 -u "$KEY/$PREFIX$binding$SUFFIX"
      done
   }
   unbind_keys metacity
   unbind_keys compiz
   rm -rf "$DIR"
   create_dialog info "$APP avinstallerad"
;;
voice|dialog|speed|freq|volume|rate|scale|stride|overlap|search|method|accel)
   exec "$SCRIPT" adjust "$@"
;;
*)
   exec "$SCRIPT" start "$@"
;;
esac

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 21:26
av Hans Linde
Du får en r9 med lagad stop/pause och en fulfix så att "list" inte förstör utklippet:

tack,tack ;)

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 21:37
av Hans Linde
Lysande!

Då kan du ta en öl, så återkommer jag morgon. 8)

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 21:41
av Hans Linde
Nej!!! stopp, kom tillbaka!

loop stannar då jag med "adjust" väljer "accel".
Jag tror att det inträffade när jag kvitterade med"ok" och att justeringslisten kom upp.

Osis. :(

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 21:49
av Hans Linde
Och nu är det låst igen.

Nej så illa var det inte.

Åhh vad rörigt det blir.

Med "reset" kan jag häva låsningen.
Så då får jag också möljighet att kolla var exakt låsningen sker
och det var...hmmm.... ja var vardet..jo när jag släpper justeringen på listen.
Det gäller för alla val från "scale" och ner. Inget "method" o "voice".
Så det har med "listen" att göra.

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 21:57
av Konservburk
Hans Linde skrev:Med "reset" kan jag häva låsningen.
Så då får jag också möljighet att kolla var exakt låsningen sker
och det var...hmmm.... ja var vardet..jo när jag släpper justeringen på listen.
Det gäller för alla val från "scale" och ner. Inget "method" o "voice".
Så det har med "listen" att göra.
Det är när du släpper listen som den ska uppdatera värdet. Det är väl där någonting inte riktigt stämmer.... hur är det, fungerar det ibland? Eller låser det sig alltid?

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 22:00
av Hans Linde
det låser sig alltid, när reglaget på listen släpps.

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 22:13
av Konservburk
Hans Linde skrev:det låser sig alltid, när reglaget på listen släpps.
Jag kan inte komma på varför... för mig fungerar det. Du kan börja med att försöka byta ut första raden från "#!/bin/sh" till "#!/bin/bash", men jag tvivlar på att det hjälper :-\

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 22:19
av Hans Linde
eller uninstall:
Spelar det någon roll om kommandot är
~/bin/talsyntes.sh
eller
~/bin/talsyntes.sh install
??

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 22:22
av Hans Linde
Nej, låsningen inträffar iaf.

Installation gjordes med:
~/bin/talsyntes.sh install

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 15 okt 2008, 22:24
av Hans Linde
Vill du ha något mera "snabb-test" gjord, annars tar jag kväll?

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 16 okt 2008, 14:25
av Konservburk
Hans Linde skrev:Spelar det någon roll om kommandot är
~/bin/talsyntes.sh
eller
~/bin/talsyntes.sh install
??
~/bin/talsyntes.sh kör ~/bin/talsyntes.sh start ifall den hittar någon röst som funkar, annars kör den ~/bin/talsyntes.sh install istället. Om du redan har en fungerande röst, men vill installera fler, eller vill att tangentbindningarna ska uppdateras, då är det ~/bin/talsyntes.sh install som gäller.

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 16 okt 2008, 14:29
av Konservburk
Hans Linde skrev:Nej, låsningen inträffar iaf.
Eftersom vi vet var det låser sig så kan vi testa den delen av koden löst. Då kan jag förhoppningsvis förstå hur den bör modifieras för att undvika låsning.

Test1:

Kod: Markera allt

zenity --scale --print-partial
Test2:

Kod: Markera allt

zenity --scale --print-partial | while read i; do echo $i; done
Test3:

Kod: Markera allt

{ zenity --scale --print-partial || echo nej;  } | while read i; do echo $i; done

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 16 okt 2008, 14:34
av Konservburk
Bara som en förvarning så att du inte tror att tråden helt plötsligt har försvunnit... som vän av ordning funderar jag på om det inte är bäst att slå ihop båda talsyntes-trådarna och flytta alltihop till experimentverkstad.

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 16 okt 2008, 14:51
av Hans Linde
Bara som en förvarning så att du inte tror att tråden helt plötsligt har försvunnit... som vän av ordning funderar jag på om det inte är bäst att slå ihop båda talsyntes-trådarna och flytta alltihop till experimentverkstad.

Det låter som en bra idee.
Annars kanske alla nybörjarna börja med sådan här djupdykningar. ;D

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 16 okt 2008, 14:54
av Hans Linde
Det funkar väl som du tänkt...?

hans@hans-ubuntu:~$ zenity --scale --print-partial
55
55
hans@hans-ubuntu:~$
hans@hans-ubuntu:~$ zenity --scale --print-partial | while read i; do echo $i; done
34
34
hans@hans-ubuntu:~$
hans@hans-ubuntu:~$ { zenity --scale --print-partial || echo nej; } | while read i; do echo $i; done
77
77
hans@hans-ubuntu:~$
hans@hans-ubuntu:~$

Re: Talsyntes/Festival/Scaletempo/Ubuntu-AMD64

Postat: 16 okt 2008, 14:56
av Konservburk
Hans Linde skrev:Det funkar väl som du tänkt...?
Det verkar så. Prova även att trycka på cancel-knappen (eller stäng fönstret med krysset).