2006-07-29: Keith Bennett dixit:
> On Fri, Jul 28, 2006, EV wrote:
> > [...] On the other hand, there are some TODO issues in
> > lkarmafs which seem to me more interesting and short-term
> > demanded than the efficiency boost.  I'd add to the list the
> > implementation of a directory-structure display of playlists.
> 
> Hmm. My problem with all this is that I don't use lkarmafs very
> much so I have little motivation to fix things. [...] However,
> I'm not a *completely* selfish person so I might be able to
> spare a little time looking into lkarmafs matters! :)

Undrestood.  It was just an idea...
 
> > But most important and challenging of all things is to find a
> > (simple, if possible) way to determine tune duration and set
> > it upon file closing. [...]
> 
> Well vorbis is a streaming format by design, so the libraries
> can get this information from the first chunk. Not sure how big
> this is but it is more than likely smaller than the buffer size
> used by FUSE. Not sure about mp3s, flacs and wmas but my guess
> is that these all have the info stored in headers aswell. Could
> take quite a lot of work to implement each one by hand, though.
> With wavs you are totally out of luck. This shouldn't be all
> that important, though. Who in their right mind fills their
> karma with wavs?

I don't know about vorbis, but mp3 files may have a header, a
triler or both.  There is no essential problem with the trailer
tags, as we only need the duration (and/or other tags) upon
clossing the RK file.  So, in principle, this would be doable if
there existed some library for decoding id3 tags from memory
buffers -- rather than from (whole) files.

There is an additional problem with variable frame rate mp3s.  
The exact duration of these files seems difficult to estimate
whthout going through the entire file! (I'd be content with an
approximate estimate, though).

> A far easier method is to query the file that you've just
> uploaded. Is there any reason why you can't just pass this to
> taglib?

I've not found any way to get hold of a file produced by FUSE
from within a FUSE client; i.e., I don know how to reference it
or just set its pathname!  One alternative would be to produce a
dummy temporary file just with a header and trailer large enough
to be sure they hold the tag info.

With the USB interface this could be easyer if we could somehow
determine the /mnt/karma2/fid0/??0 name (from within lkarmafs).  
This might require a low-level libkarma call, however.

Best,
EV.


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
linux-karma-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-karma-devel

Reply via email to