Volumebar

  • Da mir bei meinem letzten Problem so super geholfen wurde, hab ich auch gleich das nächste :D .

    Und zwar hat mein Skin und der Standartskin eine Lautstärkeanzeige die auf jedem Bild oben rechts eingeblendet wird, wenn die Lautstärke verändert wird.

    Hab rausgefunden dass, das Aussehen dieser Lautstärkeanzeige in der Datei DialogVolumeBar.xml gespeichert wird.
    Hab Sie auch schon meinen wünschen entsprechend angepasst.

    Aber was ich nun gerne hätte: Das die Leiste ebenfalls angezeigt wird wenn gemutet wird und solange bis diese wieder aufgehoben wird.
    Ansich ja nicht schwer dachte ich, einfach folgendes in die Datei eintragen:

    Code
    <visible> Player.Muted</visible>


    Und weil er mir den Balken nicht anzeigen soll wenn ich einen Film in Fullscreen schaue:

    Code
    <visible> Player.Muted+!VideoPlayer.IsFullscreen</visible>


    Hab das ganze auch so eingefügt aber es klappt einfach nicht.

    Und noch eine weitere Frage, aber ich weiß nicht ob das noch zum Skin gehört oder doch schon ein Addon oder Skript benötigt.
    Ich wünsche mir folgendes Verhalten:
    Wiedergabe von Musik oder Film>Mute Taste wird gedrückt>Lautstärke senkt sich langsam auf voreingestellte Lautstärke z.B. 20%>Mute taste wird erneut betätigt> Lautstärke erhöht sich wieder langsam auf Ursprungs Lautstärke.

    Das mit den 20% hab ich hinbekommen :D .

    Code
    <[definition='3','0']keymap[/definition]><global><keyboard><key id="61475">SetVolume(20percent)</key></keyboard></global></[definition='3','0']keymap[/definition]>


    Hab das Addon KeymapEditor und einfach angepasst auf oberes.
    Die Lautstärke wird nun auch auf 20% gesenkt aber schlagartig und ich hab keine Ahnung wie ich durch erneutes drücken wieder auf die vorherige Lautstärke komme.

    Glaube aber für die Volumenbar müsste ich denke ich mal den Mute-Befehl ändern da mir sonst der Balken dauerhaft bei 20% angezeigt würde.
    Falls ich einfach nur die Lautstärke von 20% haben möchte.
    Hab auch versucht in ...\AppData\Roaming\XBMC\userdata\guisettings.xml

    Code
    <audio>        <mute>false</mute>        <fvolumelevel>0.000000</fvolumelevel>    </audio>


    auf

    Code
    <audio>        <mute>true</mute>        <fvolumelevel>20.000000</fvolumelevel>    </audio>

    geändert doch bei beenden von XBMC übernimmt es wieder die alten Werte ?( .
    und fvolumenlevel sind das % angaben?

    Hoffe auch bei diesem Problem könnt ihr mir helfen ^^ .

  • Hab das ganze auch so eingefügt aber es klappt einfach nicht.

    Ich denke mal das das daran liegt das der Dialog Standardmässig nur angezeigt wird wenn an der Lautstärke was geändert wird.

    Wenn Du das "Mute"-Symbohl dauerhaft bei "mute" angezeigt haben möchtest würd ich das in nen Custom Window bauen oder ev. besser in die includes.xml und dann einfach überall dort wo dus sehen möchtest inkludieren.


  • Ich denke mal das das daran liegt das der Dialog Standardmässig nur angezeigt wird wenn an der Lautstärke was geändert wird.

    Wenn Du das "Mute"-Symbohl dauerhaft bei "mute" angezeigt haben möchtest würd ich das in nen Custom Window bauen oder ev. besser in die includes.xml und dann einfach überall dort wo dus sehen möchtest inkludieren.

    Aber irgendwo müsste doch theoretisch irgendwo festgelegt sein, dass der Dialog angezeigt wird wenn VolumenUp oder VolumenDown betätigt wird.
    Oder stell ich mir das zu einfach vor?

    Ich glaube das wird in

    Code
    <defaultcontrol>1</defaultcontrol>


    festgelegt. Oder wofür ist dieses tag?

    Weiß auch nicht wo die defaultcontrols festgelegt werden.

    Hier mal der Code der DialogVolumeBar.xml

    Mfg Jann

    Mein Dateien zum Download:
    GoogleDrive

    Nicht über den grausamen Code wundern :D .

    Einmal editiert, zuletzt von M1ghtyWolf (9. Juli 2014 um 22:16)

  • Das hat geklappt einfach Copy und Paste ^^ .


    In die DialogMuteBug.xml und schon funktionierts :love: .

    Das andere fällt das unter Skinning oder wird das schon ein Addon?

  • Soviel ich weiß hat das was mit der Audioausgabe zutun.

    Was passthrough ist weiß ich glaub schon.
    Ich wunderte mich nur weil ich es im Wikki nicht finde ob es das Überhaupt gibt?

    Mein Skin ist portiert aus Frodo und dort hab ich eben andere visibles für den gesamten Dialog.

    <visible>!Window.IsVisible(mutebug) + !Window.IsVisible(infodialog) + !Window.IsVisible(busydialog)</visible>

    Grüße

  • Zitat

    Und noch eine weitere Frage, aber ich weiß nicht ob das noch zum Skin gehört oder doch schon ein Addon oder Skript benötigt. Ich wünsche mir folgendes Verhalten: Wiedergabe von Musik oder Film>Mute Taste wird gedrückt>Lautstärke senkt sich langsam auf voreingestellte Lautstärke z.B. 20%>Mute taste wird erneut betätigt> Lautstärke erhöht sich wieder langsam auf Ursprungs Lautstärke.

    Nochmal hochholen, das es wohl bei der Menge an Text im ersten Post untergegangen ist. ;)

  • Ich weiß nicht ob der Begriff Softmute dir was sagt oder ob es das ist was ich meine :D .

    Beispiel ist z.B. bei einer Navi Ansage im Auto.

    Navi gibt Signal das Radio verringert die Lautstärke und der Navi Sound wird wiedergegeben und danach erhöht sich die Lautstärke der Musik wieder auf das vorherige Niveau.

    Nur das ich einen Tastendruck benutzen möchte und keine Naviansage kommt :D .

  • Hallo,

    Soweit war es mir klar. Ich denk nur das geht nicht mit der Keyboard? Du musst ja dabei wissen welche Lautstärke gerade gewählt ist oder?
    Ich denke ein Tastendruck wird ja nach X Prozent (kann glaub in den AS eingestellt werden) leiser. In der Keyboard kannst bestimmt bloß sagen drücke Taste x mal.
    Aber das bringt dir ja nichts..

    Du hast ja nur

    Code
    VolumeUp 	Increase the volume of playback.
    VolumeDown 	Decrease the volume of playback.

    Du bräuchtest ja dann sowas wie eine Condition "aktuelle Lautstärke" und dann könntest sagen "Drücke 5 mal".

    Du könntest dir vielleicht einen Button Basteln und mit <onclick> Condition="Substring(Player.Volume,50) " und Action(VolumeDown), und das mit allen Werten, und "wieviel Mal geklickt werden soll".
    Oder es in einem Onload Versuchen ob das machbar wäre.

    Sonst müsstest mal ein neues Thema aufmachen ob die Scripter das Lösen können wenn einer Zeit und Lust hat.
    Wäre sicher um einiges Einfacher:).

    Grüße

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!