--- mplayer.c.orig 2006-08-18 18:31:11.000000000 +0200 +++ mplayer.c 2006-08-18 19:44:37.000000000 +0200 @@ -3588,6 +3588,8 @@ mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_FPSforced,sh_video->fps,sh_video->frametime); } +int as_submited=0; + //==================== START PLAYING ======================= if(loop_times>1) loop_times--; else @@ -3665,6 +3667,36 @@ break; } // while(sh_audio) +//----------audioscrobbler + +char as_tmp[512]; +char *as_title,*as_artist,*as_album; +float as_pos=(sh_audio->delay - audio_out->get_delay() * playback_speed); +float as_len=demuxer_get_time_length(demuxer); + +if(as_submited==0) +{ +as_submited=1; + +as_title=demux_info_get(demuxer,"Title"); +as_album=demux_info_get(demuxer,"Album"); +as_artist=demux_info_get(demuxer,"Artist"); + +if(!as_title)as_title=demux_info_get(demuxer,"name"); +if(!as_artist)as_artist=demux_info_get(demuxer,"author"); + +if(!as_title)as_title=""; +if(!as_album)as_album=""; +if(!as_artist)as_artist=""; + +if( strlen(as_title)!=0 && strlen(as_artist)!=0 ) +{ +sprintf(as_tmp,"/usr/lib/lastfmsubmitd/lastfmsubmit --artist \"%s\" --title \"%s\" --album \"%s\" --length %.0f &",as_artist,as_title,as_album,as_len); +system(as_tmp); +} +} +//------------------------- + if(!sh_video) { // handle audio-only case: if(!quiet) { @@ -4137,6 +4169,7 @@ case MP_CMD_SEEK : { float v; int abs; + as_submited=1; if(sh_video) osd_show_percentage = sh_video->fps; v = cmd->args[0].v.f;