Announcement

Collapse
No announcement yet.

How ?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • seeksongtitle.maki

    For a seeker as simple as the one in Echo, you do not need maki. All you need is some graphics and xml.

    But for some funkier ones, you may need it.

    Here is an example of a seeker which gradually changes its color from green at the beginning of a song to orange at the end.

    1. Create an image for the animated seeker and one for the seek map. The images should be of equal widths. The attached zip contains three different images for the animated seeker and one for the seek map.

    2. In player-elements.xml, replace these lines:
    code:
    <bitmap id="player.anim.seek" file="player/songbar2.png" gammagroup="vis"/>
    <bitmap id="player.map.seek" file="player/seek_map2.png"/>

    with these:
    PHP Code:
    <bitmap id="player.anim.seek" file="player/animseek-chameleon.png"/>
    <
    bitmap id="player.map.seek" file="player/seekmap-samewidth.png"/> 
    3. In player-normal-group.xml, this is all you need:
    PHP Code:
    <groupdef id="seeker">
      <
    AnimatedLayer
        id
    ="SeekAnim" image="player.anim.seek"
        
    x="0" y="6" w="137" h="5" move="0" autoplay="0" autoreplay="0"
      
    />
      <
    script id="seeksongtitle" file="scripts/seeksongtitle.maki"/>
    </
    groupdef
    The width of the SeekAnim layer should be the same as the width of the bitmaps. The height should be the same as the height of one row in animseek-chameleon.png

    4. Copy seeksongtitle.m and seeksongtitle.maki into your scripts folder.

    Try it out with animseek-gradient.png and animseek-blink.png, too.
    Last edited by ariszlo; 16 May 2023, 21:04. Reason: Removed old version of seeksongtitle.zip
    Ariszló @ WinCustomize & DeviantArt

    Comment


    • Hi ariszlo

      That was exactly what I was looking for, better look and above all much smother than
      original animated seeker even if I've tracked down why I couldn't make it work : my 1st attempt was a vertical stacked images (silly me), the 2nd was an horizontal contiguous one which didn't work better even if one image size was = to the gradient one when these are images on top of another.

      So, I'm working on the final iteration of ASREC, going from bare player


      to covertart configuration (with resized and displaced shortcuts)

      .

      Unfortunately it's henceforth a slow process as what took me 15mns before is hour(s) now.

      Comment


      • I went back from albumartvis to albumshowhide for this (the second stage in my previous post is still amockup, I'm slowly going thru ichange's xml) but a few attemps to add both of them were a failure : one button to show coverart (and resize/move shortcuts/song display) and another for coverart/vis.

        Comment


        • I'm also a bit sad as I don't why the Online Services entry in media library doesn't work anymore. I've discovered this and found it very great, I used it from time to time but it stopped yesterday ou 2 days ago

          An internal server error has occured
          HTTP 500 - Internal Server Error
          The Online Service has made a request to a server that has encountered an error preventing the completion of the response.

          Try Again

          Comment


          • Originally Posted by parisienne17 View Post
            So, I'm working on the final iteration of ASREC...


            Originally Posted by parisienne17 View Post
            I went back from albumartvis to albumshowhide...
            No more AVS/Milkdrop in the main window?

            Originally Posted by parisienne17 View Post
            I'm also a bit sad as I don't why the Online Services entry in media library doesn't work anymore.
            Fixed by now.
            Ariszló @ WinCustomize & DeviantArt

            Comment


            • Of course I'll use it but I'm working on this 3 states player : bare, covertart and visualisations. As usual, I'm i reverse mode, working on the graphic part before the code... simply because I'm more skillfull in the former ;.))

              My last try gave me issues putting together showhidecover & artvis as I find more ergonomic to use 2 buttons : 1/ bare player/coverart, 2/ bare or coverart/visualisations

              Comment


              • on a second thought, one button is enough ! ;.)

                I've also discovered that winamp modern skin has a 3 repeat states : off, song, playlist.. I'll have to implement it ;.))

                Comment


                • Originally Posted by parisienne17 View Post
                  I'll have to implement it ;.))
                  Here is an example. Change the x's, y's, w's and h's to suit your skin.

                  PHP Code:
                  <NStatesButton
                    id
                  ="Repeat"
                    
                  cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat"
                    
                  nstates="3"
                    
                  cfgvals="0;1;-1"
                    
                  x="303" y="213" w="51" h="29" rectrgn="1"
                    
                  image="button.repeat"
                    
                  hoverImage="button.repeat"
                    
                  activeImage="button.repeat"
                    
                  tooltip="Repeat"
                  /> 
                  This is what is important:
                  • The tag type should be NStatesButton, not togglebutton.
                  • None of these three lines should be left out:

                    cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat"
                    nstates="3"
                    cfgvals="0;1;-1"
                  • No digits in the image id's.

                  Now the elements. The id's are the same as in the NStatesButton tag but they end in a digit.

                  No repeat ends in 0:
                  PHP Code:
                  <bitmap id="button.repeat0" file="Player/repeat.png" x="0" y="0"
                  w="51" h="29"/> 
                  Repeat the list ends in 1:
                  PHP Code:
                  <bitmap id="button.repeat1" file="Player/repeat.png" x="0" y="30"
                  w="51" h="29"/> 
                  Repeat the song ends in 2:
                  PHP Code:
                  <bitmap id="button.repeat2" file="Player/repeat.png" x="0" y="60"
                  w="51" h="29"/> 
                  Last edited by ariszlo; 16 May 2023, 21:03. Reason: Removed old attachment.
                  Ariszló @ WinCustomize & DeviantArt

                  Comment


                  • That's what I got from winamp modern skin.. Besides the pictures that wouldn't show.. Of course as I didn't check the player.elements part ;.)

                    Do you happen to know how winamp modern skin is able to show in the song display area the actual repeat state ?

                    Once again, big thanks for your outmost valuable help !

                    Comment


                    • Is it me or this particular option doesn't allow a hover image ?
                      When I pass a hover image it displays a blank one.

                      Comment


                      • Originally Posted by parisienne17 View Post
                        Do you happen to know how winamp modern skin is able to show in the song display area the actual repeat state ?
                        It is handled by display.maki. To adapt it to your skin, you will need to edit its source: replace "songticker" with "SongTitle" and remove whatever you don't need. Then you compile it with the MAKI Compiler.

                        You can get the sources of the makis of the Winamp Modern and Big Bento skins by installing the Winamp Skin Development Pack, which also includes MAKI Compiler v1.2.0.

                        Originally Posted by parisienne17 View Post
                        Is it me or this particular option doesn't allow a hover image ?
                        When I pass a hover image it displays a blank one.
                        "button.repeat.hover" in the NStatesButton tag and "button.repeat.hover0", "button.repeat.hover1", "button.repeat.hover2" in elements.
                        Ariszló @ WinCustomize & DeviantArt

                        Comment


                        • Originally Posted by parisienne17 View Post
                          Do you happen to know how winamp modern skin is able to show in the song display area the actual repeat state ?
                          1. Add this below <!-- SONG TITLE --> in player-normal-group.xml:
                          PHP Code:
                          <text
                            id
                          ="RepeatInfo"
                            
                          x="0" y="0" w="430" h="60"
                            
                          font="impact" shadowcolor="80,80,80" shadowx="-3" shadowy="3" antialias="1"
                            
                          align="left" valign="top"
                            
                          fontsize="54" color="250,250,250" alpha="190"
                            
                          visible="0"
                          /> 
                          The position and size of RepeatInfo should be the same as the position and size of SongTitle.

                          2. Add this after the Repeat NStatesButton tag:
                          PHP Code:
                          <script id="repeatsongtitle" file="scripts/repeatsongtitle.maki"/> 
                          3. Compile the attached repeatsongtitle.m and copy repeatsongtitle.maki into your skin's scripts folder.
                          Attached Files
                          Ariszló @ WinCustomize & DeviantArt

                          Comment


                          • Last days have been tough so I didn't winamp ;.) Came back in the evening and just found... a bug... ?


                            - Start a song => song display OK
                            - clic on seeker => song display shows the whole song info



                            With these definitions :
                            PHP Code:
                            <groupdef id="songDisplay">
                              <
                            script id="songticker.script" file="scripts/songticker.maki"/>
                              <!-- 
                            SONG TITLE -->
                                <
                            Text
                                id
                            ="SongTitle"
                                
                            display="songname"
                                
                            ticker="1"
                                
                            x="0" y="0"
                                
                            w="430" h="60"
                                
                            font="impact" shadowcolor="0,0,0" shadowx="-3" shadowy="3" antialias="1"
                                
                            bold="0"
                                
                            align="left"
                                
                            valign="top"
                                
                            rightclickaction="trackmenu"
                                
                            dblclickaction="trackinfo"
                                
                            fontsize="54"
                                    
                            color="250,250,250"
                                
                            alpha="190"
                                
                            />

                               <!-- 
                            ARTIST NAME -->
                                <
                            Text
                                id
                            ="ArtistName"
                                
                            display="songname"
                                
                            ticker="1"
                                
                            x="0" y="44"
                                
                            w="150" h="50"
                                
                            font="Song-4"
                                
                            light="1"
                                
                            align="ieft"
                                
                            valign="top"
                                
                            rightclickaction="trackmenu"
                                
                            dblclickaction="trackinfo"
                                
                            fontsize="34" shadowcolor="0,0,0" shadowx="-2" shadowy="2" antialias="1" bold="1"
                                
                            color="255,255,255"
                               
                            />

                              <!-- 
                            ALBUM TITLE -->
                                 <
                            text
                                    id
                            ="AlbumTitle"
                                  
                            x="202" y="44"
                                  
                            w="230" h="40" align="left"
                                
                            font="Song-4"
                                
                            antialias="1" bold="1"
                                
                            ticker="1"
                                
                            fontsize="30" color="220,220,220" shadowcolor="0,0,0" shadowx="-2" shadowy="2"
                                
                            alpha="210"
                              
                            />
                             <
                            script id="albumtitle" file="scripts/albumtitle.maki"/>
                             </
                            groupdef
                            (I haven't used albumtitle.maki for now and even if I remove it there's no change)

                            Checking with previous skins layouts, the only difference is the 'new' song seeker you provided and it's place isn't relevant as moving it doesn't change anything ?

                            Is this the lack of dummy thing used in animated seeker ?
                            Last edited by parisienne17; 5 July 2021, 00:18.

                            Comment


                            • in the same department, is there a way to concatenate song strings as in the above exemple, artist name is 2 letters long when it could be lenghtier so setting a fixed size is non productive : adding for exemple artist_name+album_title with a fixed size with scrolling or flashing as in anunaki would be better.

                              Comment


                              • Originally Posted by parisienne17 View Post
                                - Start a song => song display OK
                                - clic on seeker => song display shows the whole song info
                                Fixed. Replace seeksongtitle.m and seeksongtitle.maki with those in the attached zip.

                                Originally Posted by parisienne17 View Post
                                in the same department, is there a way to concatenate song strings as in the above exemple, artist name is 2 letters long when it could be lenghtier so setting a fixed size is non productive : adding for exemple artist_name+album_title with a fixed size with scrolling or flashing as in anunaki would be better.
                                Yes, there is.

                                1. Remove this line from player-normal-group.xml:
                                PHP Code:
                                <script id="songticker.script" file="scripts/songticker.maki"/> 
                                2. Replace display="songname" with display="SongTitle" in the SongTitle tag.

                                3. Remove the ArtistName and AlbumTitle tags.

                                4. Add a tag with id="ArtistAlbum" and display="SongArtist" (or display="SongAlbum", whichever you prefer) in place of ArtistName and AlbumTitle:
                                PHP Code:
                                <Text
                                  id
                                ="ArtistAlbum"
                                  
                                display="SongAlbum"
                                  
                                ticker="1"
                                  
                                x="202" y="44" w="228" h="50"
                                  
                                align="left" valign="top"
                                  
                                font="Song-4" light="1" color="255,255,255"
                                  
                                fontsize="34" shadowcolor="80,80,80" shadowx="-2" shadowy="2" antialias="1" bold="1"
                                  
                                rightclickaction="trackmenu"
                                  
                                dblclickaction="trackinfo"
                                /> 
                                Make sure the ArtistAlbum tag contains a display line, otherwise it will not scroll.

                                5. Replace this line:
                                PHP Code:
                                <script id="albumtitle" file="scripts/albumtitle.maki"/> 
                                with this:
                                PHP Code:
                                <script id="playitemstrings" file="scripts/playitemstrings.maki"/> 
                                6. Copy playitemstrings.m and playitemstrings.maki into your scripts folder.
                                Attached Files
                                Ariszló @ WinCustomize & DeviantArt

                                Comment

                                Working...
                                X
                                😀
                                🥰
                                🤢
                                😎
                                😡
                                👍
                                👎