This forum has been archived. All content is frozen. Please use KDE Discuss instead.

slow speed plugin

Tags: None
(comma "," separated)
wojciech
Karma
0

slow speed plugin

Thu Mar 24, 2005 8:06 am
Hi
First I\'d like to thank You for Amarok,
it\'s great !
:-)

I\'ve got one question:
is it possible to write a slow speed plugin,
The plugin should have 3 functions:
a) regulation of speed of a song, allowing to make music slow (in real time) without changing pitch (without make it sounds lower)
b) regulation of pitch (changing pitch, separatelly from changing speed)
c) by-pass

it would be very usefull for musicians.
When one wants to learn how to play song on instrument and has no notes, he needs to hear what sounds are played by artist (sometimes player in the band plays very fast and then it is difficult to hear every sound perfectly).

So that kind of plugin would be very usefull for people who play music .

Sorry for my English (I havn\'t use it for years, and I\'m not shure if my post is readable)

Best regards
Wojciech
grefabu
Registered Member
Posts
20
Karma
0

Re: slow speed plugin

Sat May 20, 2006 8:50 am
Hi,

I'm seraching too a option to control the speed of music, then I can use amarok for our dance training.
I only find one player (pytone) who able to change the speed. I the moment it's my favorite player, but amarok is the second in my list, when a pitch control is available i think it will be the first again!

Bye and greetings, you do a great work!

Gregor
User avatar
dangle_wtf
Moderator
Posts
1252
Karma
0

Re: slow speed plugin

Sat May 20, 2006 10:48 pm
Not sure about being able to change the speed, but there used to be a script that would allow you to create playlists based on BPM
http://kde-apps.org/content/show.php?content=31509
HOWEVER... It hasn't been updated for a while, and I don't think it will work on amarok 1.4.0.
If this is the kind of thing that might help, maybe write a comment on that page asking the author to update it for 1.4.0


"There are two theories to arguing with women. Neither one works."
.
If men could get pregnant, we'd learn the true meaning of "screaming nancyboy wuss"
grefabu
Registered Member
Posts
20
Karma
0

Re: slow speed plugin

Mon May 22, 2006 8:03 am
Hi,

I can't install the script in case of dependencies on a view packages, maybe I can use the rpm with alien...
But I think it is not the thing I need, the tool only examine the BPM but do not change it, I guess.

But thank for the reply!

Gregor
tifff
Registered Member
Posts
2
Karma
0

Re: slow speed plugin

Mon Jan 26, 2009 6:30 pm
Pitch control is absolutly necessary. When an equalizer is integrated, why not pitch control? My current solution: Using a script which passes current selection in playlist to alsaplayer. The code (but I still hope that pitch control becomes integrated into amarok to have volume, pitch and equalizer in one player):
#!/bin/bash
#Bash script to startup alsaplayer (required for pitch control)

#following line is used for script name
TITLE='Alsa player'
CUSTOM='customMenuClicked:'
SUBMENU=$TITLE
PLAY='Play selected tracks ...'
CLEAR='Stop  ...'

# to see whats happening
LOG=/tmp/amarok.log

#setting a trap
trap \
'{
dcop amarok script removeCustomMenuItem "$SUBMENU" "$PLAY";
dcop amarok script removeCustomMenuItem "$SUBMENU" "$CLEAR";
dcop amarok script removeCustomMenuItem "$SUBMENU";
exit 0;
}' SIGTERM

#add menu
dcop amarok script addCustomMenuItem "$SUBMENU" "$PLAY"
dcop amarok script addCustomMenuItem "$SUBMENU" "$CLEAR"

#start initial version (to avoid wait on play command
x=$(alsaplayer --status 2>&1)
echo "$x" > $LOG
if [ "$x" = "No active sessions" ]; then
  alsaplayer --nosave &
fi

while true; do
  read CMD
  pp=0
  # as spaces are escaped  here (%20) we take every item
  for ITEM in $CMD; do
    echo "$ITEM" >> $LOG
    case "$ITEM" in
Play)
    x=$(alsaplayer --status 2>&1)
    if [ "$x" = "No active sessions" ]; then
      alsaplayer --nosave &
      echo "$x" >> $LOG
      sleep 1 # as file:// will appear next
    fi
    # adjust volume
    vol=$(dcop amarok player getVolume)
    echo Volume=$vol >> $LOG
    while [ ${#vol} -lt 3 ]; do vol="0$vol"; done
    alsaplayer --volume ${vol:0:1},${vol:1:2} 

    pp=1
    ;;
file://*)
    if [ $pp -eq 1 ]; then
      # using kfmexec: absolute in normal (nonescaping) format
      FNAME="$(kfmexec ls $ITEM)"
      # but amarok has only partial file as URL ???
      echo "$FNAME" >> $LOG
      if [ "$x" ]; then
# replace playlist and (re)start playing
alsaplayer -E "$FNAME"
alsaplayer --start
unset x
      else
# append
alsaplayer -e "$FNAME"
      fi
    fi
    ;;
Stop)
    alsaplayer --quit
    break;
    ;;
    esac
  done
  # dcop amarok playlist popupMessage "$(alsaplayer --status)"
done
User avatar
markey
KDE Developer
Posts
2286
Karma
3
OS

Re: slow speed plugin

Tue Jan 27, 2009 10:42 am
Pitch control is definitely beyond the scope of Amarok core. We won't implement it, sorry.

However, if someone finds a solution to realize this with the scripting capabilities, that would of course be welcome as a 3rd party component for download.

Please see here:

http://amarok.kde.org/wiki/Development/ ... _HowTo_2.0


--
Mark Kretschmann - Amarok Developer


Bookmarks



Who is online

Registered users: abc72656, Bing [Bot], daret, Google [Bot], Sogou [Bot], Yahoo [Bot]