Thank you! :-)

2008-04-16
2012-12-10
  • Hi everyone!

    As some others already did, I just wanted to say thank you for anyremote. Another open source project covering a rather unusual, but very useful goal. I really enjoy using it, and I keep exploring new features. Having a party and controlling the sound with my mobile is a really nice thing (beside showing off with it and the tell them "..what do you want, do this with your Vista!" :D).

    And: If by any chance you need another crazy feature request: make a search engine to bowse playlist items, eg. with amarok (I got playlists with hundreds and up to thousand items, they won't even load in the normal playlist-browser on my phone (Nokia 6300)...).

    I'm looking forward to further versions and features! Thanks a lot!

    XaS

     
    • Mike
      Mike
      2008-04-19

      Could You please clarify You idea:
      do You mean filtering playlists without (or with) creation new playlist or just search-and-select ?

       
    • Hi!

      Sorry I didn't reply sooner! I was thinking about something like a "jump to file" dialog, like in XMMS when you press "j". In combination with amarok and anyremote this would mean to enter the search string in the search bar of the active playlist via the phone, show the found tracks from the current playlist on the phone and then allow ot queue them or play them directly. So no new playlist needed to be cerated but the current one would be used.

       
    • Mike
      Mike
      2008-05-05

      Try this ...
      Beware of newlines inserted by this forum !

      %
      % anyremote configuration file for amarok management. (Server-mode)
      %

      % Uncomment if needed
      %AutoRepeat=false
      %Baudrate=19200
      %Device=bluetooth:19
      %Log=true
      Screen=true

      GuiAppName=Amarok
      GuiAppBinary=amarok
      GuiAppRun=echo 'A=`dcop|grep amarok`; if [ "x$A" == "x" ]; then echo NOK; else echo OK; fi'|bash -f -s
      GuiAppIcon=amarok.png
      GuiAppType=Application

      [Aliases]
      % Cancel buttons on different phones
      -11=Cancel
      -8=Cancel
      69=Cancel
      [End]

      [Keys]

      (Connect)=Set(parameter,debug,on);SetMode(amarok);

      AMAROK_HELP =Set(text,replace,Help,1 Vol-  2 Mute  3 Vol+\n4 Rew   5 Play  6 FF\n7 Prew  8 Stop  9 Next\n* Help  0 Pause # Quit);
      AMAROK_TITLE=ExecAndSet(title,dcop amarok player nowPlaying|sed 's/%20/ /g');
      AMAROK_TIMER=Timer(AMAROK_TITLE,5,0);

      [Mode]=amarok

      (EnterMode)=Exec(echo 'A=`dcop|grep amarok`; if [ "x$A" == "x" ]; then amarok 2> /dev/null; fi'|bash -f -s);\     Macro(AMAROK_TITLE);\     Make(var,am_volume,dcop amarok player getVolume);\     Set(skin,default);\     Set(icons,Amarok,1,vol_down,2,mute,3,vol_up,4,rewind,5,play,6,forward,7,previous,8,stop,9,next,*,question,0,pause,#,no);\     Set(status,);\     Set(font,small);\     Set(menu,replace,Playlist,Search,File Browser);\     Macro(ALLIN1MENU);

      Cancel=Exec(dcop amarok MainApplication-Interface quit);Exit;
      (Disconnect)=Timer(AMAROK_TITLE,cancel);

      Back=Set(text,close);Set(menu,replace,Playlist,File Browser);Macro(ALLIN1MENU);

      Playlist=Timer(AMAROK_TITLE,cancel);SetMode(amarok_playlist)
      Search=Timer(AMAROK_TITLE,cancel);SetMode(amarok_search)
      File Browser=Timer(AMAROK_TITLE,cancel);SetMode(amarok_file_browser)

      1=Exec(dcop amarok player volumeDown)
      2=Make(var,am_volume,echo 'if [ "x$(am_volume)" == "x-1" ]; then dcop amarok player getVolume;dcop amarok player setVolume 0; else dcop amarok player setVolume $(am_volume); echo "-1"; fi;'|bash -f -s)
      3=Exec(dcop amarok player volumeUp)

      4=Exec(dcop amarok player seekRelative -10)
      5=Exec(dcop amarok player play);Macro(AMAROK_TIMER);
      6=Exec(dcop amarok player seekRelative 10)

      7=Exec(dcop amarok player prev);Macro(AMAROK_TITLE);
      8=Exec(dcop amarok player stop);Set(title,Stopped);Timer(AMAROK_TITLE,cancel);
      9=Exec(dcop amarok player next);Macro(AMAROK_TITLE);

      * *=Macro(AMAROK_HELP);
      * #=Exec(echo 'P=`dcop|grep amarok`; if [ "x$P" == "x" ]; then amarok 2> /dev/null; else dcop amarok MainApplication-Interface quit; fi'|bash -f -s);\     Set(title,);\     Set(status,);
      0=Exec(dcop amarok player pause);Timer(AMAROK_TITLE,cancel);Set(title,Paused);Set(title,Paused);
      #=Exec(dcop amarok MainApplication-Interface quit);Timer(AMAROK_TITLE,cancel);Set(title,);Set(status,);

      [ModeEnd]

      [Mode]=amarok_playlist

      (EnterMode)=Set(list,font,medium);\     ExecAndSet(list,replace,Playlist,dcop amarok playlist saveCurrentPlaylist;grep '<item'  $HOME/.kde/share/apps/amarok/current.xml|sed 's/<item url=\&quot;file:\/\/\(.*\)\&quot; \(.\)*$/\1/'|xargs -i basename {}|sed 's/uniqueid=.*//g;s/%20/ /g;s/,/\r/g;s/$/,/');\     Set(menu,add,Choose);
      (ExitMode)=Set(list,close);Set(status,Playing);Macro(AMAROK_TITLE);Macro(AMAROK_TIMER);

      Back($$)=SetMode(amarok);
      Choose($$)=Exec(dcop amarok playlist playByIndex `expr $(Index) - 1`);

      [ModeEnd]

      [Mode]=amarok_search

      (EnterMode)=Set(editfield,Search,Pattern, )
      (ExitMode)=Set(list,close);Set(status,Playing);Macro(AMAROK_TITLE);Macro(AMAROK_TIMER);

      Back($$)=Exec(rm -f $HOME/.anyRemote/amarok.numbered_playlist);SetMode(amarok);
      Ok($$)=Exec(dcop amarok playlist saveCurrentPlaylist;grep '<item' $HOME/.kde/share/apps/amarok/current.xml|sed 's/<item url=\&quot;file:\/\/\(.*\)\&quot; \(.\)*$/\1/'|xargs -i basename {}|sed 's/uniqueid=.*//g;s/%20/ /g;s/,/\r/g'|nl > $HOME/.anyRemote/amarok.numbered_playlist;cat $HOME/.anyRemote/amarok.numbered_playlist|grep $(Param) > $HOME/.anyRemote/amarok.filtered_playlist);\     Set(list,font,medium);\     ExecAndSet(list,replace,Filtered,sleep 1;cat $HOME/.anyRemote/amarok.filtered_playlist|cut -f 2|sed 's/$/,/');\     Set(menu,add,Choose_);

      Choose_($$)=Make(var,real_index,cat $HOME/.anyRemote/amarok.filtered_playlist|head -$(Index)|tail -1|cut -f 1|tr -d ' ');\     Exec(dcop amarok playlist playByIndex `expr $(real_index) - 1`);

      [ModeEnd]

      [Mode]=amarok_file_browser

      (EnterMode)=Set(list,font,small);Macro(FILLLIST);Macro(UPDATEMENU);
      (ExitMode)=Set(list,close);Macro(AMAROK_TIMER);

      UPDATEMENU=Set(menu,replace,GoTo,Add to playlist);
      FILLLIST=Set(list,replace,Files,..);\     ExecAndSet(list,add,SAME,cd "`cat $HOME/.anyRemote/ar_storedir.tmp`";ls -F --quoting-style=shell|sed 's/\*//'|sed 's/,/\r/g;s/$/,/');

      Add to playlist($$)=Exec(dcop amarok playlist addMedia `cat $HOME/.anyRemote/ar_storedir.tmp`/$(Param));
      GoTo($$)=Set(list,replace,SAME,..);\     ExecAndSet(list,add,SAME,cd "`cat $HOME/.anyRemote/ar_storedir.tmp`";echo 'if [ -d "$(Param)" ]; then cd "$(Param)";fi;pwd>$HOME/.anyRemote/ar_storedir.tmp;ls -F --quoting-style=shell|sed "s/\*//;s/,/\r/g;s/$/,/";'|bash -f -s);
      Back($$)=SetMode(amarok);

      [ModeEnd]

      [End]

       
    • OK, I made an new .cfg with your code above. When I start anyremote now I get the same screen as with the default amarok file, but in the menu where i could normally find the playlist and file browser, there is only disconnect and nothing else (as I see in your code there should be a new option for the search, right?).

      (By the way I use an Nokia 6300.)

      Thank you very much for your efforts! :-)

       
      • Mike
        Mike
        2008-05-06

        Hi,

        please run anyremote from console with "-log" option:
        anyremote -log -f /path/to/new/amarok.cfg

        then send $HOME/.anyRemote/anyremote.log to anyremote (at) mail.ru

        PS: Have You removed extra newlines which cuold be inserted by this forum ?

         
  • Mez
    Mez
    2011-01-25

    Just wanted to thank the developpers of (and for) this very helpful little piece of software. I tried JM2PC and a few other solutions under wine before learning about anyremote and I wasn't really satisfied with the outcome. Now, everything's working quite fine with ganyremote on Ubuntu Maverick and a Samsung s5230w. I can control a movie playing on my second screen (a TV) in SMPlayer without leaving the couch to reach the laptop touchpad or carrying the mouse around, which was my initial purpose. I won't say it works flawlessly as VLC (1.1.6) doesn't really work fine but I guess this will go on improving and I'm already happy with the result. Anyway, big up to the team behind the app!