bass.dll Stream Lautstärke ändern

  • VB.NET

Es gibt 14 Antworten in diesem Thema. Der letzte Beitrag () ist von Cpt.Riot.

    bass.dll Stream Lautstärke ändern

    Moin,
    wie ich die Lautstärke der bass.dll änder weiß ich:

    VB.NET-Quellcode

    1. Bass.BASS_SetVolume(Bass.BASS_GetVolume() - 0.01)


    Kann ich die Lautstärke nur für einen Stream ändern, wenn ich z.B. zwei Lieder gleichzeitig abspiele, sodass das erste leiser und das zweite lauter wird?
    Danke, das geht. Und wie setze ich über die Trackbar die Position? Die Abfrage der Position habe ich schon.
    Mit

    VB.NET-Quellcode

    1. Bass.BASS_ChannelSetPosition(stream1, Bass.BASS_ChannelSeconds2Bytes(stream1, TrackBar1.Value).ToString)

    geht es nicht.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „urzeitfurz“ ()

    Ich würde es so machen, das die Trackbar alle Bytes (Length) des Liedes als Maximum hat!
    Also so:

    VB.NET-Quellcode

    1. TrackBar1.Maximum = Bass.BASS_ChannelGetLength(stream, BASSMode.BASS_POS_BYTES)


    Dann würde ich einfach im Scroll-Ereignis die Position in Bytes setzen etwa so:

    VB.NET-Quellcode

    1. Bass.BASS_ChannelSetPosition(stream, TrackBar2.Value)


    Wenn du willst das die Trackbar immer beim Lied mitläuft musst du die Value auch noch setzen also etwa so:

    VB.NET-Quellcode

    1. TrackBar2.Value = Bass.BASS_ChannelGetPosition(stream, BASSMode.BASS_POS_BYTES)


    Ich hoffe ich konnte helfen ;)
    ich weiß, dass das Thema schon etwas älter ist, aber ich krige es iwie net zum laufen :(
    also ich habe im event des playbuttons das "

    VB.NET-Quellcode

    1. TrackBar12.Maximum = Bass.BASS_ChannelGetLength(stream, BASSMode.BASS_POS_BYTES)
    "

    eingefügt.
    damit es mit läuft habe ich einen Timer mit dem Intervall von 1 sec erstellt und dort dies "

    VB.NET-Quellcode

    1. TrackBar12.Value = Bass.BASS_ChannelGetPosition(stream, BASSMode.BASS_POS_BYTES)
    "
    eingefügt.
    Aber es will net funktionieren egal welchen Song ich nehme das Maximum der trackbar is immer 0.
    und zu dem 2 code gibt es iwie immer nen error :(


    EDIT:
    Habe es dann doch geschafft ..... xD


    ich habe einfach nicht die bytes sondern die sekunden genommen:

    als erstes das Maximum vergeben

    VB.NET-Quellcode

    1. TrackBar12.Maximum = Bass.BASS_ChannelBytes2Seconds(Stream, Bass.BASS_ChannelGetLength(Stream))



    dann dafür sorgen dass die trackbar mitläuft

    VB.NET-Quellcode

    1. TrackBar12.Value = Bass.BASS_ChannelBytes2Seconds(Stream, Bass.BASS_ChannelGetPosition(Stream))




    und dann noch um trackbar scroll ereigniss

    VB.NET-Quellcode

    1. Dim posi As Integer posi = Bass.BASS_ChannelSeconds2Bytes(Stream, TrackBar12.Value) Bass.BASS_ChannelSetPosition(Stream, posi)


    mfg
    Cpt.Riot
    Bilder
    • vb error.jpg

      261,65 kB, 1.280×800, 185 mal angesehen
    • vb error1.jpg

      256,59 kB, 1.280×800, 191 mal angesehen

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Cpt.Riot“ () aus folgendem Grund: Hab denn doch geschafft :P