summaryrefslogtreecommitdiff
path: root/src/player.h
AgeCommit message (Collapse)AuthorFilesLines
2012-05-17Fix player thread teardown/signals on OS XLars-Dominik Braun1-2/+2
1) Realtime signals don’t exist in OS X 2) libao apparently locks a mutex in ao_play, which is locked again in ao_close and causes a deadlock Closes #256, although I’m considering the option of partially reverting 7df9371491e96a99c1e463f7787aede352ac5a37, as this introduces more nasty behavior than it solves.
2012-05-14Remove pause mutex/add pthread cleanup functionLars-Dominik Braun1-5/+8
No more mutex locking/checking for quit condition. Should (slightly) increase responsiveness of the player thread. Closes #250.
2012-02-22Minor player cleanupLars-Dominik Braun1-3/+5
Move player buffer to heap, a few const’s here and there, increase header buffer size, fix comments.
2011-12-24Avoid struct padding where possibleLars-Dominik Braun1-20/+18
Pointed out by -Wpadding. Does not decrease memory usage/binary size though.
2011-11-09waitress: move large allocations to heapLars-Dominik Braun1-1/+1
2011-05-18Configureable format stringsLars-Dominik Braun1-0/+4
Closes #88
2011-04-12Added missing include for FreeBSDLars-Dominik Braun1-0/+2
See issue #103.
2010-12-27Change my email addressLars-Dominik Braun1-1/+1
Again. And hopefully the last time.
2010-12-27Software volume controlLars-Dominik Braun1-0/+1
2010-03-16Replace player return value magicLars-Dominik Braun1-0/+2
2010-03-16Fix player race conditionLars-Dominik Braun1-4/+11
Pressing any key before the player thread set mode to PLAYER_INITIALIZED lead to a song skip and spawning of another player thread. The two player threads were operating on the same variables/memory area, resulting in a crash. Adding a new player state (PLAYER_STARTING) and setting it _before_ invoking pthread_start should resolve this, 'cause the "if PLAYER_FREED-branch" is not taken any more, ergo no second player thread is started.
2010-01-30Fix libao error detectionLars-Dominik Braun1-0/+1
Under certain circumstances (fast station switching e.g.) a new playlist was not fetched, because the player thread returned 0x1 (== libao error) and the main thread NULLed curStation.
2010-01-21It's 2010 now.Lars-Dominik Braun1-1/+1
2009-05-03Switch to libwaitressLars-Dominik Braun1-5/+4
2009-02-05Time display for mp3 playbackLars-Dominik Braun1-3/+7
Time is now counted in milliseconds, not aac frames. Calculations seem to be inaccurate sometimes (about +-2 seconds).
2009-02-01mp3 playback supportLars-Dominik Braun1-7/+38
Now libfaad and/or libmad are used for playback. There's currently no remaining time displayed for mp3 playback.
2009-01-31Use pthread mutex to block player in pause stateLars-Dominik Braun1-1/+2
2009-01-20It's 2009 nowLars-Dominik Braun1-1/+2
Update copyright notices, add my email address, but don't change libwardrobe (I'm not maintaining it anymore)
2008-10-17Resume aborted song transferLars-Dominik Braun1-0/+1
This fixes those my-favorite-song-suddenly-aborted-"bugs", as well as the pause mode, which was more like a stop mode, because pandora *always* aborted the transfer after a few minutes.
2008-08-19Allow key shortcut configuration via config fileLars-Dominik Braun1-0/+4
Some code restructuring was made, too: - Move UI functions to ui.c and ui_act.c - Change default keys for loving and banning to + and -
2008-07-24Reduce cpu load produced by replaygainLars-Dominik Braun1-0/+1
It's not necessary to re-compute the scale factor as it will be the same every time.
2008-07-24Initial ReplayGain work (including anti-clipping)Lars-Dominik Braun1-0/+1
Could be tuned...
2008-06-28client: Use mode instead of finishedPlayback in playerLars-Dominik Braun1-3/+4
Smarter solution than commit 8421cfd9886ec5ee19cde18b48853c2f9ea60c29.
2008-06-23client: Use function prefix "Bar"Lars-Dominik Braun1-1/+1
2008-06-21client: Some cleanupLars-Dominik Braun1-0/+1
Now unneeded header, linebreaks
2008-06-21client: Read stsz atom containing frame sizesLars-Dominik Braun1-0/+51
This has two advantages: 1) We can pass the correct amount of bytes to NeAACDecDecode (). This should fix some decoding error messages. And 2) We can show the length of the song and the remaining (or already played time) to the user. Cool, eh?