+ Antworten
Seite 1 von 11 1 2 3 ... LetzteLetzte
Ergebnis 1 bis 10 von 101
  1. #1
    Registriert seit
    Feb 2007
    Ort
    Zwickau
    Beiträge
    5,483

    Arrow Beispiel Internetradio und mp3 Wiedergabelisten per Handsender

    So mache hier mal noch ein Thema auf um die Anhänge anzufügen.
    @steiner (alte Beiträge verschieben bzw. löschen)

    Zunächst möchte ich mal meine Freude zum Ausdruck bringen, dass dieses Forum und das entsprechende Produkt IP-Symcon eine Top Sache ist!
    Habe mich nun einige Tage mit mp3 & Internetradio beschäftigt.
    Hier gibt es viele Lösungen, aber leider war keine dabei (oder ich habe sie nicht gefunden ) die alles das macht was ich gern möchte.
    Das war ==>
    Mit einem F20 S4 Handsender folgende Dinge

    Taste 1 und 2:
    - Internetradiosender abspielen & auswählen, per Sprachausgabe ansagen
    - mp3 Wiedergabelisten abspielen & auswählen, per Sprachausgabe ansagen
    - mp3 Lied weiterschalten
    - Auschalten des Lautsprechers

    Taste 3 und 4:
    - Lautstärkeregelung
    - Auschalten des Lautsprechers

    Dabei war mir wichtig den mp3 Player nicht immer per kill Kommando unsauber zu beenden und die Möglichkeit per Multiroom das ganze für mehrere Soundkarten zu ermöglichen. Und es geht.
    Betreibe die Sache zur Zeit nur mit einer Soundkarte (aber habe es mit der zweiten getestet), Script müßte für mehrere Soundkarten noch etwas angepasst werden.
    Die Lautstärkeregelung ist ja leider etwas komlizierter, da winamp eine eigene verwendet, wird die Masterlautstärke per nircmd.exe auf einen Wert eingestellt der für winamp 100% ist und per WAC_SetVolume Befehl geregelt.
    Bastle an einer verfeinerten Regelung mit Mastervolumeregelung.

    Möchte hier mal was zurück geben, falls jemand auch sowas brauch.

    Lautstärkeregelung (Stand:18.04.07) in der Anlage als
    SZ_Lautstaerke.ips.rar

    mp3 & Internetradio (Stand:18.04.07) in der Anlage als
    SZ_Musikschleife_Handsender.ips.rar

    Auszug aus Kostanten (Stand:18.04.07):

    PHP-Code:
    <?
    /*
    *******************************
     IP-SYMCON Event Scripting
    *******************************
    File     : Konstanten.ips.php
    Trigger  : 
    Interval : 
    */

     //--------------------Variablen aus IP-SYMCON----------------------------------
     //OG_Schlafzimmer
     
    $OG_Sz_Steckdose_Lautsprecher_Status GetValueBoolean("OG_Sz_Steckdose_Lautsprecher_Status");
     
    $OG_Sz_Handsender_Modus GetValueInteger("OG_Sz_Handsender_Modus");
     
    $OG_Sz_Handsender_Volume_Intens GetValueInteger("OG_Sz_Handsender_Volume_Intens");
     
    $OG_Sz_Modus GetValueInteger("OG_Sz_Modus");
     
    //---------------------------Steckdosen----------------------------------------
     
    $OG_Sz_Steckdose 49895;
     
    //-----------------Soundkarteninstancen & Variablen für Musik------------------
     // USB Soundkarte 1.OG / Dach
     
    $SK1 56641;
     
    $TTS_SK1 58112;
     
    $DXMedia_SK1 45845;
     
    //Winamp - IP-SYMCON
     
    $SK1_WAC_Position GetValueString ("SK1_WAC_Position");
     
    $SK1_WAC_Status GetValueString ("SK1_WAC_Status");
     
    $SK1_WAC_Volume GetValueInteger("SK1_WAC_Volume");
     
    //Musik - IP-SYMCON
     
    $SK1_Radiosender GetValueInteger("SK1_Radiosender");
     
    $SK1_Wiedergabeliste GetValueInteger("SK1_Wiedergabeliste");
     
    // interne Soundkarte Erdgeschoß / Keller
     
    $SK2 34025;
     
    $TTS_SK2 24371;
     
    $DXMedia_SK2 16822;
     
    //Winamp - IP-SYMCON
     
    $SK2_WAC_Position GetValueString ("SK2_WAC_Position");
     
    $SK2_WAC_Status GetValueString ("SK2_WAC_Status");
     
    $SK2_WAC_Volume GetValueInteger("SK2_WAC_Volume");
     
    //Musik - IP-SYMCON
     
    $SK2_Radiosender GetValueInteger("SK2_Radiosender");
     
    $SK2_Wiedergabeliste GetValueInteger("SK2_Wiedergabeliste");
     
    //-----------------------------Radiosender-------------------------------------
     
    $radio[1] = "http://38.119.49.140:8000";
     
    $radioname[1] = "Radiosender Datempo Lounge";
     
     
    $radio[2] = "http://64.236.99.41:80/stream/1010";
     
    $radioname[2] = "Radiosender Smooth Jazz";
     
     
    $radio[3] = "http://64.236.98.50:80/stream/1014";
     
    $radioname[3] = "Radiosender Top Hits Music";
     
     
    $radio[4] = "http://64.236.98.50:80/stream/1013";
     
    $radioname[4] = "Radiosender das beste der achtziger";
     
     
    $radio[5] = "http://209.247.146.99:8000";
     
    $radioname[5] = "Radiosender Oldies";
     
     
    $radio[6] = "http://64.236.98.50:80/stream/1002";
     
    $radioname[6] = "Radiosender Neues Jahrhundert";
     
     
    $radio[7] = "http://64.236.36.54:80/stream/1003";
     
    $radioname[7] = "Radiosender Ruhe";
     
     
    $radio[8] = "http://64.236.98.50:80/stream/1024";
     
    $radioname[8] = "Radiosender Eurodance";
     
     
    //----------------------------Wiedergabelisten---------------------------------
     
    $mp3[1] = "E:/Musik/Playlist/tagesmusik.m3u";
     
    $mp3name[1] = "Wiedergabeliste Tagesmusik";
     
     
    $mp3[2] = "E:/Musik/Playlist/zigarrenzimmer.m3u";
     
    $mp3name[2] = "Wiedergabeliste Zigarrenzimmer";
     
     
    $mp3[3] = "E:/Musik/Playlist/Für Ältere.m3u";
     
    $mp3name[3] = "Wiedergabeliste Für Ältere";

     
    $mp3[4] = "E:/Musik/Playlist/rave.m3u";
     
    $mp3name[4] = "Wiedergabeliste Räv";
     
     
    $mp3[5] = "E:/Musik/Playlist/party.m3u";
     
    $mp3name[5] = "Wiedergabeliste Party";

     
    $mp3[6] = "E:/Musik/Playlist/dark.m3u";
     
    $mp3name[6] = "Wiedergabeliste Dark";
     
     
    $mp3[7] = "E:/Musik/Playlist/aktuell.m3u";
     
    $mp3name[7] = "Wiedergabeliste Aktuell";
     
    //-----------------------------------------------------------------------------
    ?>
    Geändert von Ferengi-Master (20.04.08 um 21:49 Uhr)

  2. #2
    Registriert seit
    Feb 2007
    Ort
    Zwickau
    Beiträge
    5,483

    Standard Verbesserte Lautstärkeregelung

    So, habe eine Version der Lautstärkeregelung gebastelt die das Mastervolumen einer Soundkarte oder mehrerer Soundkarten regeln kann.
    Wobei die Zahl hinter master die Soundkarteninstance ist. (nircmd.exe setsysvolume $SK1_Mastervolume master 0)

    PHP-Code:
    <?
    /*
    *******************************
     IP-SYMCON Event Scripting
    *******************************
    File     : SZ_Lautstaerke.ips.php
    Trigger  : OG_Sz_Handsender_Volume_Intens
    Interval : 
    */

     
    include("C:/Programme/IP-Symcon/scripts/Konstanten.ips.php");

     
    // Lautstärke heben
     
    if($IPS_SENDER=="Variable" && $OG_Sz_Handsender_Volume_Intens=="17"
     
    or $IPS_SENDER=="Variable" && $OG_Sz_Handsender_Volume_Intens=="19")
     {
     
    //-----------------------------------------------------------------------------
     
    if($SK1_Mastervolume>=65535)
     {
     
    $c "c:/windows/ding.wav";
     
    DXMedia_Open($DXMedia_SK1$c);
     
    DXMedia_Play($DXMedia_SK1);
     return; 
    // zurück wenn Lautstärke schon max.
     
    }
     
    //-----------------------------------------------------------------------------
     
    if($SK1_Mastervolume<4000)
     {
     
    SetValueInteger("SK1_Mastervolume"$SK1_Mastervolume+200);
     
    IPS_Execute("nircmd.exe setsysvolume $SK1_Mastervolume master 0","",true,true);
     return; 
     }
     
    //-----------------------------------------------------------------------------
     
    SetValueInteger("SK1_Mastervolume"$SK1_Mastervolume+2000);
     
    IPS_Execute("nircmd.exe setsysvolume $SK1_Mastervolume master 0","",true,true);
     
    //-----------------------------------------------------------------------------
     
    }

     
    // sonst Lautstärke senken
     
    else
     {
     
    //-----------------------------------------------------------------------------
     
    if($SK1_Mastervolume<=0)
     {
     
    WAC_Stop($SK1);
     
    SetValueString("SK1_WAC_Status""STOP");
     
    FS20_SwitchMode($OG_Sz_SteckdoseFalse); // Laustsprecher aus Schlafzimmer
     
    WAC_Stop($SK1);
     
    SetValueString("SK1_WAC_Status""STOP");
     return; 
    // zurück wenn Lautstärke schon min.
     
    }
     
    //-----------------------------------------------------------------------------
     
    if($SK1_Mastervolume<=3900)
     {
     
    SetValueInteger("SK1_Mastervolume"$SK1_Mastervolume-200);
     
    IPS_Execute("nircmd.exe setsysvolume $SK1_Mastervolume master 0","",true,true);
     return; 
     }
     
    //-----------------------------------------------------------------------------
     
    SetValueInteger("SK1_Mastervolume"$SK1_Mastervolume-2000);
     
    IPS_Execute("nircmd.exe setsysvolume $SK1_Mastervolume master 0","",true,true);
     }

    ?>
    Geändert von Ferengi-Master (23.04.07 um 22:42 Uhr)

  3. #3
    Registriert seit
    May 2005
    Beiträge
    255

    Hallo,
    ich wollt das ganze mal ausprobieren, aber irgendwo klemmts bei mir ( PHP-Neuling). Kannst Du mir mal kurz schreiben, welche Variablen Du mit dem Handsender steuerst, ich glaube, da hab ich irgendwo den klemmer.
    Gruß
    Jürgen

  4. #4
    Registriert seit
    Feb 2007
    Ort
    Zwickau
    Beiträge
    5,483

    Taste 1 & Taste 2: Trigger über $OG_Sz_Handsender_Modus
    Sobald diese Tasten gedrückt, werden im jeweiligen Untermenü andere Variablen verändert z.B. für die Radiosender etc.

    Taste 3 & Taste 4: Trigger über $OG_Sz_Handsender_Volume_Intens
    Sobald diese Tasten gedrückt wird SK1_Mastervolume verändert
    Geändert von Ferengi-Master (03.05.07 um 06:15 Uhr) Grund: .

  5. #5
    Registriert seit
    May 2005
    Beiträge
    255

    Vielen Dank, jetzt klappts schon etwas besser. Ich muss natürlich noch die mp3-Verzeichnisse anlegen bzw. anpassen. Allerdings meckert die Lautstärkeregelung noch über die Variable SK1_Mastervolume. Ansonsten ein Superscript.
    Gruß
    Jürgen

  6. #6
    Registriert seit
    May 2005
    Beiträge
    255

    Ich nochmal,
    so langsam kommts. Die Rundfunkwiedergabe und Lautstärkeregelung (ältere Version ohne Mastervolume) klappt bestens. MP3 leider noch nicht. Wenn ich die Playlist auswähle, wird sie auch im Winamp angezeigt, aber die Titelnamen laufen sehr schnell durch und es ist nicht zu hören. Lade ich die Playlist über das Winamp-Mnue, klappt alles. Leider kenne ich den Winamp noch nicht so genau. Was hab ich falsch gemacht? Und vieleicht noch ein Tip, was bei der neuen Lautstärkeregelung noch geändert werden muss ( vermutlich Konstanten? )
    Vielen Dank im voraus
    Jürgen

  7. #7
    Registriert seit
    Feb 2007
    Ort
    Zwickau
    Beiträge
    5,483

    1. Was passiert wenn Du das in einem kleinem Script machst?

    PHP-Code:
    $SK1 Soundkarteninstance ID;
    WAC_AddFile($SK1Pfad/Name.m3u);
     
    WAC_Play($SK1); 
    2. Welcher Fehler kommt bei der Lautstärkeregelung. Hast du auch nircmd.exe im richtigen Pfad?

    Hier habe ich übrigens meine neueste Lautstärkeregelung, mal wieder ein paar Feinheiten geändert.

    Ist halt ne Sache die ich mir so nach meinen Wünschen gebastelt habe. Kann man nach seinen Wünschen anpassen oder auch ganz anders machen...

    Wichtig ist das die Variable $SK1_Mastervolume zum Start ein vielfaches von 2000 ist. Also z.B. 6000

    Und $SK1_WAC_Vol = $SK1_WAC_Volume ist.

    PHP-Code:
    <?
    /*
    *******************************
     IP-SYMCON Event Scripting
    *******************************
    File     : SZ_Lautstaerke.ips.php
    Trigger  : OG_Sz_Handsender_Volume_Intens
    Interval : 
    */

     
    include("C:/Programme/IP-Symcon/scripts/Konstanten.ips.php");

     
    // Lautstärke heben
     
    if($IPS_SENDER=="Variable" && $OG_Sz_Handsender_Volume_Intens=="17"
     
    or $IPS_SENDER=="Variable" && $OG_Sz_Handsender_Volume_Intens=="19")
     {
     
    //-----------------------------------------------------------------------------
     
    if($SK1_Mastervolume>=66000)
     {
     
    $c "C:/WINDOWS/Media/ding.wav";
     
    DXMedia_Open($DXMedia_SK1$c);
     
    DXMedia_Play($DXMedia_SK1);
     return; 
    // zurück wenn Lautstärke schon max.
     
    }
     
    //-----------------------------------------------------------------------------
     
    if($SK1_Mastervolume<=2000)
     {
     
    $SK1_WAC_Vol=$SK1_WAC_Vol+5;
     
    SetValueInteger("SK1_WAC_Vol"$SK1_WAC_Vol);
     
    WAC_SetVolume($SK1$SK1_WAC_Vol); //Winamp Lautstärke
     
    if($SK1_WAC_Vol>=255)
     {
     
    $SK1_Mastervolume=$SK1_Mastervolume+2000;
     
    SetValueInteger("SK1_Mastervolume"$SK1_Mastervolume);
     
    IPS_Execute("nircmd.exe setsysvolume $SK1_Mastervolume master 0","",true,true);
     }
     return;
     }
     
    //-----------------------------------------------------------------------------
     
    $SK1_Mastervolume=$SK1_Mastervolume+2000;
     
    SetValueInteger("SK1_Mastervolume"$SK1_Mastervolume);
     
    IPS_Execute("nircmd.exe setsysvolume $SK1_Mastervolume master 0","",true,true);
     
    //-----------------------------------------------------------------------------
     
    }

     
    // sonst Lautstärke senken
     
    else
     {
     
    //-----------------------------------------------------------------------------
     
    if($SK1_Mastervolume<=2000)
     {
     if(
    $SK1_WAC_Vol<=0)
     {
     
    WAC_Stop($SK1);
     
    SetValueString("SK1_WAC_Status""STOP");
     
    FS20_SwitchMode($OG_Sz_SteckdoseFalse); // Laustsprecher aus Schlafzimmer
     
    WAC_Stop($SK1);
     
    SetValueString("SK1_WAC_Status""STOP");
     return;
     }
     
    $SK1_WAC_Vol=$SK1_WAC_Vol-5;
     
    SetValueInteger("SK1_WAC_Vol"$SK1_WAC_Vol);
     
    WAC_SetVolume($SK1$SK1_WAC_Vol); //Winamp Lautstärke
     
    return;
     }
     
    //-----------------------------------------------------------------------------
     
    $SK1_Mastervolume=$SK1_Mastervolume-2000;
     
    SetValueInteger("SK1_Mastervolume"$SK1_Mastervolume);
     
    IPS_Execute("nircmd.exe setsysvolume $SK1_Mastervolume master 0","",true,true);
     }

    ?>

  8. #8
    Registriert seit
    May 2005
    Beiträge
    255

    Hallo,
    erstmal vielen Dank für die schnelle Antwort. Ich hoffe nur, ich geh dir nicht zu sehr auf die Nerven, aber mit PHP kenne ich mich noch nicht so gut aus. Wenn ich das kleine Testprg. starte, passiert etwas ganz merkwürdiges: Im Fenster des Winamp sehe ich , das die Titel eingelesen werden, aber offenbar in einer Endlosschleife ( es hört nicht auf). Starte ich die Playlist dagegen aus dem Menü von Winamp, klappt es einwandfrei.
    Als zweites habe ich dein neues Lautstärkescript probiert. Hier krieg ich zwei Fehlermeldungen, wenn ich über Execute starte, nämlich einmal undefined variable SK1_Mastervolume und das gleiche mit SK1_WAC_Vol.
    Nochmal zum allgemeinen Veständniss: $SK1 ist die Instanz-ID vom Winamp-Control, TTs und DXMedia ist ja klar. Mircmd.exe ist im Hauptverzeichnis, d.h. bei mir E:\IP-SYMCON. Was meintest du mit §SK1_WAC_Vol=§SK1_WAC_Volume?
    Ich hoffe, du kannst mir noch ein paar hilfreiche Tipps geben, denn mit diesem Script steigt der WAF um ein Vielfaches.
    Jürgen

  9. #9
    Registriert seit
    Feb 2007
    Ort
    Zwickau
    Beiträge
    5,483

    Hallo Jürgen,

    Also mit dem Winamp das verstehe ich nicht so ganz bei Dir.
    Veruche mal einach folgendes und sage mir was dann passiert:
    PHP-Code:
    $SK1 Soundkarteninstance ID
    WAC_AddFile($SK1Pfad zu einem beliebigen Ordner mit mp3 Musik); 
    WAC_Play($SK1); 
    Ja $SK1 ist die Winamp Instance ID aus IP-Symcon.
    Lege mit rechter Maustaste im IP-Symcon Variable Menü die beiden SK1_Mastervolume und SK1_WAC_Vol als Interger Variablen an.
    $SK1_WAC_Vol=$SK1_WAC_Volume bedeutet das der Integerwert der beiden vor Scriptaufruf gleich sein muß. z.b. 200

  10. #10
    Registriert seit
    May 2005
    Beiträge
    255

    So, das Script funktioniert, d.h. er spielt die MP3 aus dem Verzeichnis ab.
    Aus der Musikschleife gehts nicht.
    zu 2.
    Die Variablen waren angelegt, aber ich musste in Konstanten.php noch folgendes einfügen:
    $SK1_Mastervolume = GetValueInteger("SK1_Mastervolume");
    $SK1_WAC_Vol = GetValueInteger("SK1_WAC_Vol");
    Ich denke,das ist richtig so, zumindest gibts bei execute keine Fehlermeldung mehr. Jetzt ist nur die Frage: Was tun mit den MP3´s?
    Gruß
    Jürgen

Ähnliche Themen

  1. Internetradio umd mp3 Wiedergabelisten
    Von Ferengi-Master im Forum Allgemeine Diskussion
    Antworten: 5
    Letzter Beitrag: 17.04.07, 16:57