Gapless music playback (between tracks)
#16
(jmarshall @ aug. 06 2004,11:29 Wrote:2.  dvd/vob playback has nothing to do with this discussion - that's built-in to mplayer.
dvd/vob playback has nothing to do with this discussion, if the method of play back, ie the same dll/dll's, is the same then it does. all i was saying is there arn't any gaps between vobs so why cant this be applied to mp3's
Reply
#17
my point is that the dll of mplayer handles changing vob files itself - we have no input into this at all.

it does not, however, handle changing audio files itself. thus, we must feed it a single audio file at a time. thus, the issue with gaps between playback.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#18
Big Grin 
i bet you would get more donations if you where to run a campain for someone to code a way to play mp3's back to back with no gap! i for one would have thier babies!
Reply
#19
you are more likely to get someone to code something up for a format that is actually gapless such as flac or ogg (by writing a custom player for audio only)

mp3 can be made gapless through a bunch of hacks.

currently it would require having a large audio cache in xbmc (large enough to stop + reload mplayer with the next song) in order for it to be gapless. this will also mean disconnecting the audio output from mplayer (the audio out devices are setup on mplayer_openfile(), and are destroyed on mplayer_closefile()).

plus, a big buffer causes memory issues (around 10mb/minute) and we'd need at least 2mb i should think to be safe with the mplayer loading system.

it was easy enough to do the gapless playback for the cdda player as i had complete control over the buffers. with mplayer, we'd need to rewrite the output code.

just some suggestions incase someone is thinking of implementing it.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#20
Exclamation 
a other idea is to lobby/encurage the mplayer-devs to implement gapless audio plaback themself for supported media formats/containers :evil:
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#21
(not being a programmer) could you not create an app that would stream the mp3's to the mplayer dll much like shoutcast?
Reply
#22
how about having two instances of mplayer playing one after the other - the second one could load the next file by being notified when the current track is about to end, and then xbmc could swap immediately when the track finishes.

basically, the song gets lined up and then cut from one to the other - just like the live djs do !


would that work ? it sounds like a simple setup Huh

clearly its not going to work when manually skipping to the next track using the controller however - but i think that's acceptable.

if no-one has time to do this i might code it - if it'd work.
Reply
#23
yes, it would work if you successfully detached the audio output stuff from mplayer so that you could switch between the two instances of mplayer.

however this would involve 2 copies of mplayer being loaded (ie twice the memory usage of which mplayer already uses a fair bit) plus you'd have to recode the entire player backend as it's only coded to support one player at a time.

good luck.

as i've said before (over and over again) a better way (and perhaps easier)) is to code a new player for whatever audio formats you need, simply using libvorbis, libflac, libmp3 etc.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#24
would a new audio core also make it possible to play songs off smb shares without having the harddisk spinning up in between? if so, that would be really, really nice. it's what's stopping me from using xbmc as primary audio player at the moment. apart from that, it's already a fantastic video player.
Reply
#25
hello to all!wondering if there is a way to reduce the time of play between music traks,becouse playng from the hdd a mixed album,you can ear tha gap between the two.any help??thanx
Reply
#26
oki,
i know that atm every time a music file is played the mplayer is restarted. so my feature request, scan the next file and then choose to restart or to play the next choon gapless Smile
btw.. is there a plugin for mixing?



Reply
#27
it's not likely to happen with mplayer as the playing core, at least not unless mplayer itself has gapless playback for music playlists (which i doubt).

an easier method would be to build a new standalone core for audio only playback, as is done with the cdda player for instance (which is completely gapless).  lame and libogg/vorbis are already compiled for the xbox i believe (for the cd ripper), so adding an ogg or mp3 player would probably be a nice small coding project for someone like yourself.

cheers,
jonathan



Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#28
is there a way for get the xbmc to play a mp3 with out the 2 second gap between tracks? i am storing all my mp3s on my pc and have teh xbox networked but when i play a mixed techno cd it inserts the 2 seconds gap between tracks? is any way to stop it from doing this?
Reply
#29
no. search forums for details
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#30
perhaps mpd would be a good engine for audio. its open source, it supports the most popular audio codecs, it has apis for multiple languages, it has gapless/crossfade.

http://www.musicpd.org/

it supports remote control using a client, resuming, and more!
Reply

Logout Mark Read Team Forum Stats Members Help
Gapless music playback (between tracks)0