Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues Wiregate-Plugin für Sprachausgabe

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #46
    Ja ist besser.
    Fast schon zu schnell...
    Könnte man per Crossfade noch verfeinern.

    Aber erst mal muss es im groben laufen.

    Problem ist dass der zweite Hash nur vorgelesen wird, aber der Wert nicht mitkommt. Bin noch auf Fehlersuche.

    Ziel wäre allgemein:

    - Den Satz so wie er ist suchen. Falls die datei nicht vorhanden ist mit deinem zweiten Script den Satz erstellen. Beschleunigen und in dass gewünschte Verzeichniss zu schieben (optimistischer Plan )

    - oben beliebig viele Hashes für die Ansage (Ich lasse mir dass in der Früh gerne alles erzählen)

    - Dann noch auf andere GA´s anmelden, z.b "Fenster noch offen" wenn der letzte dass Haus verlässt o.ä. Dabei aber die Hashes aussen vor lassen. Sollte ja mit $msg{'dst'} gehen.

    Mehr ideen was ich brauche hatte ich noch nicht.

    Was ich absolut spitze finde ist Alles zu Cachen. Auch die Zahlen zusammen zu setzen! Genial

    Gruß

    Edit: ich bekomms nicht hin. Von den Hashes ist die erste Ansage mit dem ersten Wert OK. Aber beim 2 Liest er bloß den Namen, den Wert verschluckt er. Obwohl er bis in die subroutine übergeben wird (hab mit plugin_log "gedebuged") bin aber vorerst mit meinem Latein am Ende...

    Kommentar


      #47
      Es gibt eine Laufzeitbegrenzung von 10s für Plugins! Vermutlich läufst du da drüber (obwohl es mir nicht so recht einleuchten will warum).

      mpd und pulseaudio sehe ich mir bei Gelegenheit mal an. Ist das viel Konfigurationsaufwand?

      (ich brauche kein Multiroom vom WG, dafür habe ich die Russound - ich nutze das WG aber mit zwei Sound Kanälen, einer geht direkt in den Eingangsflur, der andere über Russound-Paging in alle Räume).

      VG, Fry

      Kommentar


        #48
        Ich habe mir deinen Code angesehen und sehe spontan keinen Fehler.
        VG, Fry

        Kommentar


          #49
          Ne ist eigentlich nicht allzu viel.
          War etwas blöd zum rum probieren welche Einstellung was macht. Aber wenn du keine externe Soundkarte und nur einen mpd nutzt geht dass fast plug&play.
          Asound.conf, mpd.conf, /etc/pulse/default.pa und daemon.conf sind anzupassen. Dann dürfte dass Standard System laufen. Schick dir aber auch gerne die confs.

          Laufzeit des plugins ist 0,6 Sekunden... Ich teste weiter...

          Gruß

          ***censored***

          Kommentar


            #50
            Hi vlamers,
            ich versuche es jetzt auch mit pulseaudio und mpd.

            Ich habe die gleiche Logilink-USB-Karte, die auch du verwendest, und benutze 2 Stereokanäle (Namen "welcome" an separatem Verstärker in Eingangsflur und "paging" an Russound-Eingang Nr. 8).

            Alles funktioniert unter ALSA, allerdings stören mich die "Gaps" zwischen Tracks bei aplay.

            Also Pulseaudio: Problem ist aktuell, dass der Pulseaudio-Daemon aussteigt mit der Meldung

            Code:
            Apr 23 18:21:47 wiregate581 pulseaudio[13299]: main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Die Operation ist nicht erlaubt
            Apr 23 18:21:47 wiregate581 pulseaudio[13299]: main.c: setrlimit(RLIMIT_RTPRIO, (9, 9)) failed: Die Operation ist nicht erlaubt
            Apr 23 18:21:48 wiregate581 pulseaudio[13299]: socket-server.c: socket(PF_INET6): Die Adressfamilie wird von der Protokollfamilie nicht unterstützt
            Apr 23 18:22:18 wiregate581 pulseaudio[13299]: alsa-util.c: Error opening PCM device pawelcome: Verbindungsaufbau abgelehnt
            Apr 23 18:22:18 wiregate581 pulseaudio[13299]: module.c: Failed to load  module "module-alsa-sink" (argument: "device=pawelcome sink_name=welcome "): initialization failed.
            Apr 23 18:22:18 wiregate581 pulseaudio[13299]: main.c: Module load failed.
            Apr 23 18:22:18 wiregate581 pulseaudio[13299]: main.c: Failed to initialize daemon.
            Apr 23 18:22:18 wiregate581 pulseaudio[13287]: main.c: daemon startup failed.
            Hier die Configs:

            Code:
            asound.conf
            
            pcm_slave.logilink {
                  pcm "hw:1,0"
                  channels 8
                  rate 44100
            }
            pcm_slave.builtin {
                  pcm "hw:0,0"
                  channels 2
                  rate 44100
            }
            pcm.paging {
                type plug
                slave.pcm {
                  type dshare
                  ipc_key 1234
                  ipc_key_add_uid false
                  ipc_gid audio
                  ipc_perm 0660
                  slave logilink
                  bindings [ 0 1 ]
            #      rate 44100
            #      channels 2
               }
            }
            pcm.welcome {
                type plug
                slave.pcm {
                  type dshare
                  ipc_key 1024
                  ipc_key_add_uid false
                  ipc_gid audio
                  ipc_perm 0660
                  slave logilink
                  bindings [ 4 5 ]
            #      rate 44100
            #      channels 2
               }
            }
            pcm.papaging { 
            type pulse 
            device paging
            } 
            ctl.papaging { 
            type pulse 
            device paging
            } 
            pcm.pawelcome { 
            type pulse 
            device welcome
            } 
            ctl.pawelcome { 
            type pulse 
            device welcome
            } 
            pcm.!default { 
            type pulse 
            } 
            ctl.!default { 
            type pulse 
            }
            
            default.pa:
            
            load-module module-null-sink
            
            ### Load several protocols
            .ifexists module-esound-protocol-unix.so
            load-module module-esound-protocol-unix socket="/tmp/.esd/socket"
            .endif
            load-module module-native-protocol-unix
             
            #load-module module-esound-protocol-tcp
            #load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.38/24
            load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/24
            load-module module-zeroconf-publish
             
            #load-module module-hal-detect
            
            load-module module-alsa-sink device=pawelcome sink_name=welcome 
            load-module module-alsa-sink device=papaging sink_name=paging
            
            ### Automatically restore the volume of playback streams
            load-module module-volume-restore
             
            ### Automatically restore the default sink/source when changed by the user during runtime
            load-module module-default-device-restore
             
            ### Automatically move streams to the default sink if the sink they are
            ### connected to dies, similar for sources
            load-module module-rescue-streams
             
            ### Automatically suspend sinks/sources that become idle for too long
            load-module module-suspend-on-idle
             
            ### Make some devices default
            set-default-sink null
            Kannst du das Problem erkennen?
            Danke!
            Fry

            Kommentar


              #51
              Was steht den in der /etc/default/pulseaudio? System-instance = no.

              Vorher alle mpd beendet?
              Root alle Gruppen Mitgliedsstaaten?

              Sitze demnächst am Rechner, dann schau ich genauer nach.

              Gruß

              ***censored***

              Kommentar


                #52
                Hoi,

                das plugin geht. Der Fehler war ein "Rechtschreibfehler" (DPT->dpt)
                Wenn man mehrere Texte mit Zahlen hat, hören sich die Zahlen schon etwas komisch an. Aber damit kann ich leben...

                Gruß

                Kommentar


                  #53
                  Zitat von vlamers Beitrag anzeigen
                  Hoi,

                  das plugin geht. Der Fehler war ein "Rechtschreibfehler" (DPT->dpt)
                  Wenn man mehrere Texte mit Zahlen hat, hören sich die Zahlen schon etwas komisch an. Aber damit kann ich leben...

                  Gruß
                  Prima!
                  Jetzt seh ich mal zu, dass Pulseaudio zum Laufen kommt. Habe heute abend noch etwas am Schaltschrank geschraubt, und spätestens morgen folge ich mal deinen Tipps bzgl. Pulseaudio. Danke! Ggf. brauche ich noch mehr Infos, aber dann melde ich mich
                  VG,
                  Fry

                  Kommentar


                    #54
                    Zitat von vlamers Beitrag anzeigen
                    Was steht den in der /etc/default/pulseaudio? System-instance = no.

                    Vorher alle mpd beendet?
                    Root alle Gruppen Mitgliedsstaaten?

                    Sitze demnächst am Rechner, dann schau ich genauer nach.

                    Gruß

                    ***censored***
                    Ich frag mich, warum pulseaudio ein ALSA-Device öffnen kann und das zweite nicht. Der Fehler tritt nur auf, wenn module-alsa-sink ZWEImal in /etc/pulse/default.pa steht. Sonst nicht. EDIT: stimmt nicht, der Fehler kommt auch bei nur einem Kanal. Irgendwas stimmt nicht mit dem module-alsa-sink.

                    Mit aplay funktionieren beide Kanäle.

                    Any idea?
                    Fry

                    Kommentar


                      #55
                      Wichtigste ist dass die Soundkarte frei ist. Dann sagt der pulseaudio auch was ihm nicht passt.
                      Einfach in der Konsole pulseaudio eintippen (nicht init Script. Evtl mit: -vvv) dann spuckt der was aus.

                      Helfe gerne wo ich kann

                      Gruß

                      ***censored***

                      Kommentar


                        #56
                        Habe nun mpd deinstalliert. Die Soundkarte müsste eigentlich frei sein.
                        Mir erscheint folgende Fehlermeldung:

                        alsa-util.c: Error opening PCM device papaging: Verbindungsaufbau abgelehnt

                        als der Schlüssel zum Ganzen. Hier die asound.conf:

                        Code:
                        pcm_slave.logilink {
                              pcm "hw:1,0"
                              channels 8
                              rate 44100
                                format  "S16_LE"
                        }
                        #pcm_slave.builtin {
                        #      pcm "hw:0,0"
                        #      channels 2
                        #      rate 44100
                        #}
                        pcm.paging {
                            type plug
                            slave.pcm {
                              type dshare
                              ipc_key 1234
                              ipc_key_add_uid false
                              ipc_gid audio
                              ipc_perm 0660
                              slave logilink
                              bindings [ 0 1 ]
                        #      rate 44100
                        #      channels 2
                           }
                        }
                        pcm.papaging { 
                        type pulse 
                        device paging
                        } 
                        ctl.papaging { 
                        type pulse 
                        device paging
                        }
                        Was könnte da los sein?

                        VG, Fry

                        Kommentar


                          #57
                          Hi
                          sorry hatte dass vorher nicht gesehen...

                          den Teil kannst du dir sparen:
                          Code:
                          pcm.papaging { 
                          type pulse 
                          device paging
                          } 
                          ctl.papaging { 
                          type pulse 
                          device paging
                          } 
                          pcm.pawelcome { 
                          type pulse 
                          device welcome
                          } 
                          ctl.pawelcome { 
                          type pulse 
                          device welcome
                          }
                          Dass übernimmt ja pulse.
                          der sink geht auf die oberen pcm devices.(die mit ipc Key)
                          Würde dir gerne meine schicken, bin aber in der Arbeit (dank webwasher kein Zugriff (dyndns)) Handy hat kein Java fürn webmin Explorer.

                          Gruß

                          Edit: dass device papaging erstellst du ja in der default.pa nicht in der asound.conf . der sink papaging zielt auf dass pcm device paging.

                          Kommentar


                            #58
                            Pulseaudio und mpd funktionieren.
                            Vielen Dank!
                            Fry

                            Kommentar


                              #59
                              Darf man Fragen an was es gelegen hat? Nimmst du den mpd dann bloss für durchsagen, oder auch als zuspieler??

                              Gruß

                              Kommentar


                                #60
                                Zitat von vlamers Beitrag anzeigen
                                Darf man Fragen an was es gelegen hat? Nimmst du den mpd dann bloss für durchsagen, oder auch als zuspieler??
                                Aktuell nur für Durchsagen. Vielleicht später mehr, aber die Haupt-Zuspieler für meine Russound sind 3 MusicPals, die ich vor dem Hausbauprojekt bereits besaß.

                                Tja, woran lag es? Erstmal an meinem völligen Unverständnis, wie Pulseaudio und Alsa zusammenarbeiten. Dein Hinweis mit IPC-Keys und Devices vs. Sinks hat mich auf die richtige Spur gebracht, wie die Config. auszusehen hat. Außerdem liefen natürlich MPD-Instanzen und haben Pulse am Start gehindert.

                                Als dann Pulse und 2 MPD-Instanzen liefen, habe ich mich noch über eines gewundert, was ich bis jetzt nicht wirklich verstehe: die Environment-Variablen MPD_HOST und MPD_PORT in Perl verhalten sich anders im Wiregate-Plugin (da muss man die, wie du es machst, in einem System-Kommando setzen und gleich mpc aufrufen) als auf der Kommandozeile (da geht es mit dem %ENV-Hash). Ist mir jetzt aber auch egal, es läuft ja nun. (es ist m.E. ein Designfehler des mpc, dass hier keine Kommandozeilenoption existiert sondern nur Environmentvar. genutzt werden).

                                Die Ansagen sind jetzt flüssiger, ich habe auch einen Weg des Ansage-Queuings gefunden, so dass Ansagen sich nie gegenseitig unterbrechen sondern immer hübsch angehängt werden.

                                Das gefällt mir alles viel besser, und ich werde die neue Version des Plugins auch demnächst ins SVN uploaden.

                                Also: alles prima!

                                VG, Fry

                                Kommentar

                                Lädt...
                                X