Previous day | Jump to hour: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | Next day

Seconds: Show Hide | Joins: Show Hide | View raw
Font: Serif Sans-Serif Monospace | Size: Small Medium Large

Click in the nick column to highlight everything a person has said.
The Logo icon identifies that the person is a core developer (has commit access).

#rockbox log for 2005-05-28

00:09:52 Join webguest47 [0] (
00:10:17webguest47hi guys, please make it so we can view current.txt log in mozilla
00:10:45webguest47Adity1: i've been unable to read it with mozilla for the last couple of days now, and i'm getting addicted
00:10:58webguest47thanks, see ya
00:11:01 Part webguest47
00:11:31rasherIt's a "feature" of mozilla, really, but it really is annoying.
00:11:47zewhats the problem?
00:12:12rasherMozilla doesn't believe the server saying that the file is text/plain
00:12:32zeuh hmm
00:12:38zenever known mozilla to not believe the server
00:12:47ze...even when the server's wrong
00:13:04preglowit does here
00:13:07preglowthat's the point
00:13:14zefrom what i've heard, ie's the only one that pulls that kinda crap
00:13:18zewhats the url?
00:13:20preglowfirefox does as well
00:13:42 Join webguest61 [0] (
00:13:55rasherie does it a lot more, true
00:14:03zeit just gets displayed for me
00:14:03webguest61hehe, actually i spoke too soon, the log bot just open a new log, and this one seems to be working fine with mozilla
00:14:04zein firefox
00:14:16rasherbut in this case, firefox really is second-guessing the server
00:14:28DBUGEnqueued KICK rasher
00:14:28rasherwell wait until I use colours
00:14:48ze00.14.28 DBUG Enqueued KICK rasher
00:14:48ze00.14.28 # <rasher> well wait until I use 8colours
00:14:49rasherthe control character will throw off mozilla/firefox
00:14:50webguest61yes, color looks annoying
00:14:57rasherHm, okay
00:15:05DBUGEnqueued KICK webguest61
00:15:09rashersome other characters bold perhaps?
00:15:18CtcpIgnored 2 channel CTCP requests in 37 seconds at the last flood
00:15:18*preglow has stripped colours from his irssi :]
00:15:18 Join markun [0] (
00:15:20webguest61same also
00:15:24zestill showing
00:15:29rasherwell, some characters do that
00:15:30preglow*cough* complete the gray scale patch! *cough*
00:15:50markunYeah yeah.. :)
00:16:30markunI thought I'd be a good boy and submitted the center-scrolling patch to the tracker.
00:16:38 Part webguest61
00:17:12 Quit Harpy_ (Read error: 110 (Connection timed out))
00:17:30markunalso implemented it for the menu
00:18:25zeah ok rockbox-20050527.txt is doing it though
00:18:35ze"which is a: Text File"
00:18:46zeodd, usually that says a mime-type
00:19:09preglowfirefox does some foolish second guessing
00:19:15preglowi wonder if it's possible to turn it off
00:20:31zeok just checked the headers with curl and both current.txt and rockbox-20050527.txt come up with the same Content-Type: so hmm
00:21:00zethat means firefox is interpreting the mime-type and replacing it with "Text File" in that dialog... and yet after doing that, not recognizing it as a text file it can display? wtf
00:21:43zewhoa wtf, something's broken in my firefox... about:config gives an XML parsing error
00:23:45markunAt the MK-3006GAL (1,8" 30GB) is cheaper than the MK-2004GAL (1,8" 20GB). I'd love to trade my HD with them..
00:24:56rashersell the 20gb one to a ihp-100 owner
00:25:18markunThat's also an idea.
00:32:32rasherI'm going to blame that guy for what firefox is now doing
00:35:12zeso firefox now tries to save a txt file
00:35:20zemeanwhile a misconfigured mime-type on an html file
00:35:25zestill makes it try to save it
00:35:27rasheronly if it thinks it isn't a text-file
00:35:41rasherfor some value of "thinks"
00:36:00zebut it still doesn't do what its supposed to do, in working around misconfigured mime-types
00:36:14zeits just broken both ways now
00:37:05preglowconluding something isn't text just because it contains a non-ascii character is braindead
00:37:31rasherwell it's non-printable characters
00:38:04preglows/ascii/printable/ and my point still stands :>
00:38:18preglowsome heuristic would be nice
00:38:26preglowmore than 75% printable chars, and it's most certainly tex
00:40:03 Quit courtc (Read error: 110 (Connection timed out))
00:40:05rasherGuess I'll check bojira
00:40:18 Join courtc [0] (
00:45:54zei don't get why it does that at all
00:46:15zeif its text/plain and .txt it should show it as text
00:46:23rasherIt should.
00:46:50zeits only when its things like .rar or .gif that it shouldn't
00:47:05ze(and yet, it was that long ago it did show an archive or image or other binary file to me as text)
00:51:44 Quit Strath ("Client closed")
01:00:50 Join Strath [0] (
01:05:13 Quit markun ()
01:06:38 Quit Aison ("( :: NoNameScript 3.72 :: )")
01:15:14***Saving seen data "./dancer.seen"
01:17:14 Join ashridah [0] (
01:43:45rasherI'm sortof expecting them to explain that this is a feature
01:43:51rasherwhich is bogus
01:44:40preglowof course they are
01:45:11preglowi'd rather they just did the while thing by extension
01:45:17preglowif it's labeled .txt, then it sure as hell is text
01:45:37preglowif someone named their mp3 .txt, then good riddance, they may use another browser
01:46:41rasherI'd say mime-type is the thing to follow
01:47:02rasher*maybe* I could accept treating text/plain files ending in .mp3 as not being text
01:47:20preglowof course mime type is the way to go
01:47:24rasherbut only if they find that it contains a lot of non-text
01:47:34preglowtheir point is that there are _a lot_ of misconfigured servers out there
01:47:41preglowthat send everything as text/plain
01:48:17rasherThis is overdoing it though
01:48:20 Quit Stryke` (Read error: 110 (Connection timed out))
01:48:37preglowi think their fallback should be extensions
01:48:47preglownot silly guessing based on contents
01:52:28preglowextension is how apache determines mine type in the first place anyway
01:52:41preglowunless specified by some script, of course
01:54:03rasherI think it may be doing some magic as well
01:54:17rasherBut I'm not sure about that
01:54:23rasherBut yes indeed
01:55:05preglownot much magic, as far as i know
01:55:24preglowedit mime.types, and boom, there you go
01:55:43rasherI think there's some module that tries to guess from file-contents, which brings us back to square one
01:56:09rashernot enabled by default for sure, and probably not by a lot of eople anyway
01:59:04preglowyeah, there is, but like you say, it's not default
01:59:15preglowit uses a 'file' like mechanism
01:59:49preglowif you've ever used that program
02:00:03rasherYeah, it's lovely
02:00:10rasherfile -i even does that
02:01:06preglowyeah, that's pretty leet
02:01:23preglowbut of course more cpu intensive than i table/hash lookupć
02:06:59 Quit Strath ("Client closed")
02:07:01rasherexciting, someone replied to the bug
02:10:04preglowdoesn't seem like he's a dev, though
02:11:29rashermore confirmations is fine though
02:11:49rasherespecially that it also happens on mozilla
02:12:23 Quit gromit` (Read error: 54 (Connection reset by peer))
02:12:59 Join gromit` [0] (~gromit`
02:18:42amiconnHrmpf, silly preprocessor :/
02:19:03rasherwhat's up?
02:19:34amiconnThe c preprocessor doesn't evaluate
02:19:38amiconn#if (CONFIG_HWCODEC == MAS3587F) && (CONFIG_TUNER & S1A0903X01)
02:19:42amiconnas expected
02:19:48amiconnI have to use
02:19:52 Quit gromit` (Read error: 104 (Connection reset by peer))
02:20:08amiconn#if (CONFIG_HWCODEC == MAS3587F) && ((CONFIG_TUNER & S1A0903X01) == S1A0903X01)
02:20:39 Join gromit` [0] (~gromit`
02:20:42amiconnEven != 0 or > 0 don't work
02:22:57amiconnThe bit masked condition does work when used on its own, but not in && combination
02:27:23rasheryes, very nice
02:27:42preglowif you've only got #ifdef CONFIG_CPU == whatever, then some target specific asm code, then an #endif
02:27:46preglowshould sims go red build then?
02:29:42amiconnI don't think so
02:30:04amiconnIirc CONFIG_CPU doesn't get defined at all for simulator builds
02:30:21preglowmok, i could have sworn i did a red build like that some time
02:30:50preglowi've seen CONFIG_CPU == lolwhatevev && !SIMULATOR all over the place
02:31:43preglowno, i seem to be wrong
02:31:53preglowmust be some wrong notion i've picked up from looking at dave chapmans code
02:37:08amiconnNow this is strange. That conditional works in a .c, but not in a .h
02:37:32amiconn...copied literally
02:38:16amiconnWhen I change it as mentioned, it works in the .h too
02:47:13preglowi love code that isn't 64 bit safe
02:47:14preglowi adore it
02:50:35 Quit cYmen_ ("zZz")
02:58:31 Quit preglow ("leaving")
03:06:35 Join webguest53 [0] (
03:07:23webguest53Archos questions here?
03:08:40webguest53Well ok, I have a 6000 and can no longer write to the disk, Latest Rockbox is on it and works great
03:09:14webguest53Lots of songs on it and they play good
03:09:31webguest53I cannot delete or add songs to it anymore
03:09:40*rasher points to amiconn
03:09:50webguest53Archos says replace their special USB cable
03:10:08webguest53Is their cable truly the only one that works?
03:11:44 Join asianl0ve [0] (
03:13:25webguest53Well thank you anyway folks, maybe another time
03:13:46asianl0vewhat is the gb emuulator name in the rock box software
03:14:07rasheryeah, check back in the afternoon (GMT)
03:14:10webguest53I do not know what GB is?
03:14:27rasherasianl0ve: rockboy
03:14:41asianl0vedoes it play GBA files?
03:15:13webguest53I do not know that yet, I downloaded and installed the latest stable on the site two weeks ago, I have no GBA files
03:15:15***Saving seen data "./dancer.seen"
03:15:16rashergb and gbc
03:15:27asianl0veI want to rally some pokemon emerald on my h120
03:15:46asianl0vei spent an hour looking for roms
03:16:06asianl0vetheres nothing out there
03:16:30webguest53I think I am in the wrong conversation
03:16:50asianl0veyes that's possible
03:17:04webguest53ooops sorry
03:17:22asianl0vedoes anyone know any Gameboy sites that have pokemon on it?
03:17:29asianl0vefor roms
03:17:35webguest53I will check back in the afternoon as suggested, thanks all for reponses
03:17:41 Join amiconn_ [0] (
03:18:08 Part webguest53
03:20:16 Join Stryke` [0] (
03:21:53asianl0vewhere do i place the GB rom so rockboy recognizes it?
03:25:07ashridahasianl0ve: anywhere, with an extension of .gb
03:26:01ashridahthen select it in the file browser, and click the navi button (aka, press joystick in). rockboy's built in menu is accessed by a-b
03:34:18 Quit amiconn (Read error: 110 (Connection timed out))
03:34:18 Nick amiconn_ is now known as amiconn (
03:36:46 Quit rasher ("Lost terminal")
03:41:32 Join Strath [0] (
03:46:11 Join textchimp [0] (
03:48:18 Quit asianl0ve ()
03:49:29 Quit tvelocity ("Leaving")
04:05:16 Join QT_ [0] (as@area51.users.madwifi)
04:08:35 Quit QT (Read error: 60 (Operation timed out))
04:25:45 Nick DMJC0skeeo is now known as DMJC (
04:49:10 Quit Stryke` ("Friends don't let friends listen to Anti-Flag")
05:13:03 Join amiconn_ [0] (
05:15:16***Saving seen data "./dancer.seen"
05:29:39 Quit amiconn (Read error: 110 (Connection timed out))
05:29:39 Nick amiconn_ is now known as amiconn (
05:35:06 Quit ferenczy ("using sirc version 2.211+KSIRC/1.2.4")
06:01:25 Quit Adity1 (Read error: 131 (Connection reset by peer))
06:15:44 Quit textchimp ()
07:15:17***Saving seen data "./dancer.seen"
07:24:43 Quit ashridah (Read error: 145 (Connection timed out))
07:41:47 Join ashridah [0] (
08:21:20Bagermorning all
08:33:26 Quit DMJC ("Leaving")
08:36:17 Join Harpy [0] (
08:37:34 Quit edx (Read error: 60 (Operation timed out))
08:46:22 Join DMJC [0] (
08:57:05 Quit DMJC ("Leaving")
09:15:20***Saving seen data "./dancer.seen"
09:31:10SlasheriIf i call mp3 decoding initializing the codec plugin "normally" i get 131% speed. If i initialize the plugin inside a thread then it gives me only 60% performance..
09:33:36amiconnIt's always within a thread. The scheduler makes no difference between the main thread and others
09:37:58SlasheriOkay. This is really interesting what is causing the issue..
09:47:45amiconnThere are only 2 differences between the main thread and others. (1) The main thread doesn't get created by create_thread(), because it's the one that is already there when the scheduler gets initialised
09:48:01amiconn(2) It has a significantly larger stack than the default
09:49:49 Join Boobies [0] (
09:50:25 Nick Boobies is now known as Yokaloshi (
09:51:00YokaloshiOkay guys before my broadband router so kindly kicked me off the internet yesterday by breaking down, i asked a question....
09:51:06Yokaloshidoes anyone remember?
09:51:34ashridahif you know what time it appears in the irc logs, we can find out
09:51:49Yokaloshilol i'll just ask u again then....
09:52:17Yokaloshiyeh, occasionaly mainly when i am walking my jbr10 just stops playing...
09:52:32Yokaloshithe screen says it is still playing but the music has stopped
09:52:37Yokaloshigot any ideas?
09:52:58amiconnIs the red LED on when that happens?
09:53:24Yokaloshierm it might be, but i'm not sure, i never noticed. i will look next time
09:53:35Yokaloshibut i 'think' it is
09:53:48amiconnPlease check that next time it happens.
09:53:58amiconnI'd also be interested in your hard disk model
09:54:09Yokaloshierm wait a sec i'll see
09:54:29amiconn(Info->Debug->View disk info)
09:57:13Slasheriamiconn: Hmm, great. But i am unable to find out what is causing this. With vorbis2wav 150% performance from main thread and ~98% from new thread (there should be no yields inside the decoding thread so it gets all of the system power and cpu_boost is set to true)
09:59:51 Join Bob [0] (
10:00:29Bobokay how comes it says i am still logged in> (this is yokaloshi btw)
10:00:34amiconnSlasheri: Some ideas: (1) Perhaps there are changes in how IRAM is used? (2) Is your thread stack long aligned? (3) Maybe some functions are reordered and this changes icache friendliness
10:01:12Bobone of the other more annoying features of my box just came into play too
10:01:28Bobwhen i plug it in/un plug it it restarts my pc
10:02:16Bobokay amiconn it is a Hitachi_DK23DA-10
10:03:06Slasheriamiconn: the stack is created this way: static long codec_stack[(DEFAULT_STACK_SIZE + 0x1000)/sizeof(long)]; (i have even tried + 0x100000 with no difference in speed)
10:04:11BobAmiconn are you there?
10:04:43BagerBob the red light dead
10:04:47Bageralmost sure
10:05:00Bagerthis bug was corrected recently
10:05:07Bagerget daily build of rockbox
10:05:27Bobtht means i need to re flash my box again doesnt it?
10:05:45Bagerdid you flashed it with rockbox ?
10:05:50Bobyeh just yesterday
10:05:59Bagerbut in flash
10:06:07Bageror it's loading from disk
10:06:08amiconnBob: (1) Bager is right, I'm almost sure it's the red led death, with that disk model
10:06:15Bageramiconn ;)
10:06:28Bobokay i flashed rockbox on yesterday
10:06:31Bagerand with that "shaking"
10:06:39BagerBob what do you mean with "flashed"
10:06:50Bagerhow did you flash it
10:07:09amiconn(2) If you flashed rockbox, just update your main image.
10:07:15Bobby following the blind guys rules on ;)
10:07:28Bobor *guide even
10:07:32BagerBob just follow amiconn's advice
10:07:35amiconnUnzip the daily build to your recorder, play (=RoLo) ajbrec.ajz, then play rombox.uck
10:07:44Bobokay thn kwl
10:07:48amiconnErr, rombox.ucl
10:07:50Bobwht is rombox btw?
10:07:54Bobi nvr did quite get tht
10:08:24amiconnYou'll find the *.ucl files in /.rockbox; need to set 'Show files' to 'all'
10:08:35Bobcos yesterday when i flashed it i opened rockbox.ucl... was tht right?
10:08:51amiconnRombox means that rockbox is running _directly_ from flash rom, leaving more free ram for buffering mp3
10:09:01Bobahhhh kwl
10:09:14Bobso its better thn playing rockbox.ucl?
10:09:22amiconnI'd recommend it
10:09:47Bobjust incase my pc reboots when i plug in my box, brb
10:10:00Bobwow, i'm still here
10:10:08Bobdidnt break this time
10:10:14amiconnI'm always running rombox on all my archoses
10:10:22Bobkwl kwl fact I'm the one who debugged it :)
10:10:38Bobhahah :D fair enough
10:11:12Bobalso what is the recorder 8mb thing?
10:11:59 Nick Strath is now known as StrathAFK (
10:12:27amiconnIt's a hardware mod. Replace the 2 MB ram chip with an 8 MB one for much more mp3 buffer
10:12:43Bobhow ya do tht?
10:12:50amiconnThen you'd need the recorder 8 MB build to make use of the additional ram
10:12:56amiconnNo I didn't
10:13:09Bobno, i was meaning how do you do that?
10:15:02Bobthts silly
10:15:05BobAll Archos Jukebox models have 2MB RAM which is mainly used for buffering mp3 data. An unmodified device can buffer about 50 seconds of music in 256 kbps or 100 seconds in 128 kbps. That means the harddisk spins up very frequently, fills the buffer and then turns off again.
10:15:15Bobsome of my mp3s are over 1mbps
10:15:32 Quit Yokaloshi (Read error: 110 (Connection timed out))
10:15:52ashridahwhat the hell is the point in having an mp3 that's 1Mbps?!
10:16:16Rick"quality lel"
10:16:35ashridahRick: except it isn't. there's a point where adding a higher bitrate will do jack, particularly if you're using mp3
10:16:43ashridahyou'd have been better served getting a player that supports FLAC
10:16:54Rickashridah: I know. Hence why it was in quotes. ;)
10:17:14amiconn...uncompressed PCM...
10:17:41 Nick Bob is now known as Yokaloshi (
10:21:28 Join edx [0] (
10:21:35SlasheriAh, i found the problem!
10:21:42Slasheristatic long codec_stack[(DEFAULT_STACK_SIZE + 0x1000)/sizeof(long)] __attribute__ ((section(".idata")));
10:21:55SlasheriNow it works. It requires the stack to be placed in IRAM
10:22:21Slasherithanks amiconn .)
10:22:21amiconnHaha. Did I say something changed in IRAM usage? ;P
10:22:27Slasheriyes :)
10:23:28Yokaloshii did what you said, so you reckon the problem will be fixed now?
10:25:27amiconnThere's strong hope. I analysed the problem with my jukebox Studio, which happens to have the very same disk model, Hitachi DK23DA-10
10:26:01Yokaloshiokay cool
10:26:22amiconnThis disk is infamous for causing RLD for a long time
10:26:44Yokaloshihaha, i thought it might be a disk problem at first
10:26:52Yokaloshii was thinking about putting a new one in
10:26:57Yokaloshibut now i dont need to :)
10:27:25amiconnI'd ask you to monitor whether the problem is fixed now, and report back
10:27:42Yokaloshiyeh i will
10:29:16Yokaloshiwhile i am here, i might aswell ask, what is with the way rockbox charges once it is flashed? it doesnt constantly charge does it? and also are there any ways to conserve battery life?
10:29:18amiconnWe should really think about a 2.5 release. 2.4 is oooold now.
10:30:02amiconnThe charging was also reworked recently, so it should perform better than 2.4.
10:31:01Yokaloshiahh i see that now :) it actually charges now when the unit isnt turned on, instead of doing whatever it did before
10:31:31Yokaloshilast night i had it on charge alllll night,for like 11-12 hours, and got up this morning and it only had 18% battery
10:31:56amiconnBet you had set 'deep discharge' to on
10:32:09Yokaloshino, it was set to trickle
10:32:30 Join DangerousDan [0] (
10:32:55Yokaloshioh well, it works now :P, the problem is irrelevant
10:32:59*HCl smacks crappy dreams.
10:33:10*HCl yawns and goes to eat breakfast
10:37:35Yokaloshihas anyone got the rockvideo thing that they can email me because the original download site with it doesnt work anymore
10:41:16HClrockvideo thing?
10:43:50Yokaloshithanks :)
10:46:58Yokaloshiamiconn all it says once i have tried convert something something is an error the RVFMux filter failed to initialise
10:47:20amiconnDid you install that filter?
10:47:33Yokaloshioh lol, yeh i forgot bout tht
10:47:37Yokaloshii used to ave it
10:48:30Yokaloshii'm bein a right dippy muppet today
10:51:34SlasheriIs it possible to implement any pre-emptible scheduling to the kernel? Now codecs work in a separate thread but UI is very sluggish
10:53:48SlasheriHmm, wait.. Maybe there is not need for that
10:56:03SlasheriStill some lag with ui but not very bad
11:03:48Yokaloshii'm bored, what can i do to my box tht doesnt involve de soldering it?
11:07:15 Join Zagor [0] (
11:15:24***Saving seen data "./dancer.seen"
11:18:11 Join preglow [0] (
11:19:30preglowSlasheri: i'm quite certain libmad needs more than 4k stack
11:19:44preglowwhat's the default stack size?
11:20:12Slasheripreglow: Hmm, now I can easily check the stack size requirement through the debug menu because codec is playing on the background :)
11:20:58preglowpreemptive multi-tasking shouldn't be THAT hard
11:21:06preglowbut isn't it possible to have the codec yield between frames?
11:21:11SlasheriBut currently i am working on vorbis and implementing real file buffer and codec api for it
11:21:25Slasheripreglow: Yes, if the frames are small enough
11:21:41preglowwell, that depends on the codec
11:21:45preglowmp3 frames are pretty small
11:21:53preglowvorbis frames are mediumish
11:22:02Slasherigreat.. then it shouldn't be a problem
11:22:08Bagerguys, did you know that google can be used as scientific calculator ?
11:24:30Yokaloshiand yes
11:24:40Yokaloshiit can also be used as a dictionary and other stuff
11:25:19Yokaloshijust type define: <your word> and it gets a load of dictionary definitions
11:28:36amiconnGtg, cu
11:28:57 Part amiconn
11:32:42 Join textchimp [0] (
11:36:10 Join _DangerousDan [0] (
11:37:40Slasheripreglow: it worked great! Now listening to vorbis and there is no lag with ui at all! :)
11:39:47preglowhave you found out how to do the wps stuff?
11:40:17Slasherinot yet.. I still have to work with buffers etc. Maybe i will look into it later
11:40:56preglowplayback mechanism is more important by far
11:43:39Slasheriwith the current implementation it's also impossible to use another plugins while listening to something. But this can be fixed later
11:43:49 Join AlphaFish [0] (
11:44:09 Part AlphaFish
11:45:17preglowcodecs are supposed to be a special plugin type anyway
11:45:58textchimpis there any disadvantage to having the codecs as plugins?
11:46:08textchimpare they less efficient?
11:46:16Slasheriyes.. maybe there should be entirely different plugin api for codecs
11:46:26preglowwe won't have to waste a ton of memory on all the codecs
11:46:27Slasherino, there are not
11:46:40preglowand they won't be any less efficient
11:46:53textchimpsomeone said plugins were harder to debug?
11:46:58preglowthey are
11:47:11preglowbut that's a coder problem
11:47:34preglowi still don't want to waste to megabytes of my precious ram on codecs i'll never use
11:48:20textchimpram? are all the plugins loaded into ram?
11:48:44Slasherionly the current plugin being used is loaded
11:49:22preglowthe entire point of codecs is that they're only in ram when you need them
11:49:30preglowentire point of plugins
11:49:32Slasheriwith codec plugins, all necessary codecs to decode files in the buffer are loaded in that buffer too
11:52:51preglowdo you handle file buffering currently, btw?
11:53:04Slasherionly partially, still working on it
11:53:25preglowi'll imagine that'll be a bit tricky
11:53:26Slasheribut there should be no problems so far to do full buffering
11:53:35preglowthe codecs will have to load their own data, but that can come later
11:54:00 Quit DangerousDan (Read error: 110 (Connection timed out))
11:54:11Slashericodecs load all their data from file buffer by calling size_t (*read_filebuf)(void *ptr, size_t size);
11:54:24Slashericurrently only vorbis codec supports this
11:54:34preglowso you do delegate that task to the codec itself?
11:55:04Slasherino, codec api will handle the buffer read requests
11:55:27preglow'cause codecs will need to strip away metadata and such
11:55:28Slasheribut codec itself will get new data from buffer when it needs it
11:56:09preglowand mod format will need to do more advanced loading than just reading the file into memory
11:56:13SlasheriHmm, yep. The codec gets access to the original file content by calling that callback function
11:56:13preglowbut this can come later
11:56:24Slasherihmm, okay
11:56:31preglowyeah, sure, but the codec is also what needs to read the file into the file buffer in the first place
11:56:43preglowsince the codec knows better than rockbox what needs loading and what can be stripped
11:57:00SlasheriAh, i see
11:57:26preglowand in the case of mod and midi format, the entire file needs to be preprocessed, and the result of that is what is put in the filebuf
11:58:53SlasheriOkay, hmm. I will think about that
11:59:27preglowit's worth keeping in mind, yes, even if you don't need to implement it yet
12:16:07Slasheripreglow: Hmm.. Maybe it would be a basic solution that codec may tell the api if it needs the whole song in the memory to be directly accessible all the time?
12:17:08preglowonly non-streaming codecs need that, and those are also the very same codecs that need to do their own loading
12:17:11preglowjust forget those formats for now
12:17:14 Quit Yokaloshi ()
12:17:19Slasheriah, ok :D
12:17:23preglowthey'll be a lot of work
12:24:33 Join Yokalosh [0] (
12:24:39 Quit textchimp (Read error: 60 (Operation timed out))
12:25:07YokaloshWhat do the plug ins in the latest daily build of rockbox for jbr do?
12:25:14Yokaloshlike alpine_cdc etc
12:29:11Zagormost plugins are described in the wiki
12:29:30Zagoralpine_cdc is an Alpine CD-changer emulator
12:30:09Yokaloshoh, what can you do with it?
12:39:21Yokaloshactually dw
12:39:24 Quit Yokalosh ()
12:43:51 Join Bumi [0] (
12:43:55Bumihey everyone
12:44:54 Join Yokalosh [0] (
12:46:26Bumiany iriver port people here
12:47:21Yokaloshhaha pokémon yellow on my jbr 10
12:47:24Yokaloshfunny stuff
12:47:49HClrockboy runs very slow on archos..
12:48:46Yokaloshyou are right there :)
12:49:05Yokaloshhow comes it is so slow?
12:49:18Bumii talked to the guy who made the right right to left pluging to rockbox
12:49:31Bumiand he sayed that he is willing to update it
12:49:44Bumibut only if it gets added to the main releace
12:49:56Bumisince he dosnt want to rewrite the patch for each version
12:50:08preglowwhy'd he do that?
12:50:19preglowdoesn't change that often
12:50:26preglowbut we can't guarantee anything like that beforehand
12:50:32preglowif it's good, then it get's added
12:50:43Bumiits gonna work thats for sure
12:50:52Bumiand its better then no sepport at all.....
12:51:08ZagorBumi: not if the code is bad
12:51:19Zagor(not saying it is, I haven't looked at it)
12:51:31Bumiwhat he sayed is that for him to update the patch means to refind all the places and lines that need to be changed...
12:51:39Bumidid anyone look at the last patch?
12:51:49Bumiits in the patch section of the rockbox site
12:51:53Zagori don't know
12:52:02Bumijust dosnt work with the latest version]
12:52:16Zagordo you know the name or number?
12:52:41Bumiit whold just help us israelys and i guess arabs as well if there was right to left sepport
12:54:26 Join tvelocity [0] (
12:54:57Yokaloshguys which is the best iriver to buy?
12:55:19Bumii have the iriver ihp-120
12:55:22ZagorYokalosh: ...for what? rockbox compatibility?
12:55:26Bumiit has good hardware
12:55:34Bumiand bad firmware
12:55:51ZagorYokalosh: we don't support any iriver 100% yet, but the 1xx series is furthest along
12:55:53Bumirockbox is going to change that
12:56:19Bumiyou can allso buy the iaudio X5 which looks perty cool
12:56:25Bumino rockbox
12:56:29Bumibut still damn good
12:56:39 Join textchimp [0] (
12:56:45Yokaloshso i shud get a ihp-140 or summot thn?
12:57:31Bumithay are perty hard to find BTW...
12:58:06Bumiany chance someone can talk to gadi? (the creator), a feture like that will realy help us alot
12:58:51Zagori recommend he joins this channel, it's the best way to talk
12:59:18Zagorthe code looks fairly good, just a few issues i'd like to ask about
13:00:15Bumii have his email and MSN
13:00:19Bumiill try to talk to him
13:02:25Yokaloshhey look
13:02:35Yokaloshdo you think i shud get it? or try...
13:03:46Zagorif you want a 140, go for it (but don't bid until last hour)
13:04:06 Join DMJC [0] (
13:12:09Yokaloshwell which is the best in ur view?
13:15:27***Saving seen data "./dancer.seen"
13:22:28 Join rasher [0] (
13:23:13 Join Lost-ash [0] (
13:23:32 Quit ashridah (Nick collision from services.)
13:23:40 Nick Lost-ash is now known as ashridah (
13:30:22Bumii talked to the developer
13:30:27Bumihe will come soon
13:30:37Bumihey rasher
13:30:40Bumiits omri
13:30:54Bumithe developer of the hebrew patch will come on mirc soon
13:31:15 Join Kinslayer [0] (
13:31:23Bumihey kinslayer
13:31:46Kinslayerhey man
13:32:16Kinslayeroh i'm just dandy :) u?
13:32:45Bumiwonder where he ment
13:32:48Bumiyou here?
13:33:26Bumiwhere did everyone go
13:33:26Zagorsorry, was away
13:33:40Kinslayerbumi: time for you to change deodorant :)
13:34:07Bumididnt get the joke
13:34:17Bumii guess army made me too tired
13:34:35Bumiwell anyway Zager
13:34:49Bumican you talk to kinslayer about the patch?
13:35:28Zagorah, Kinslayer you're gadi?
13:35:56Kinslayeryeah hey :)
13:36:22Zagorright well the first point is how much of the code is specific to hebrew and how much is "just" right-to-left and works for other r2l languanges
13:36:50Kinslayerits all general r2l code
13:36:57Kinslayeri made sure it worked with arabic characters aswell
13:37:07Kinslayerof course there's no shaping support
13:37:14Zagorgreat. in that case I'd suggest we not call files and functions 'hebrew'.
13:37:23Kinslayerhehe ok... go for "bidi"
13:38:08Zagoranother point is about style. we try to keep the code in rockbox very simple. i'd like you to split lines so there is only one statement (semicolon) per line.
13:38:25Zagorexcept for() lines of course, but you get the point i think?
13:38:31Kinslayerok, not a problem
13:41:45Zagorotherwise it looks good. small and neat patch.
13:41:52Kinslayerok great
13:41:57Bumiand very usefull
13:41:58Kinslayeri havent seen the rockbox code in a good couple of months
13:42:06Kinslayerbut ill try do it this week sometime and make sure everything compiles cleanly
13:42:11Kinslayerthanks :)
13:42:44Bumii have another question
13:42:50Bumiif it works on the archos
13:43:03Bumiwill it mean that it will work on the irivers as well?
13:49:12 Quit Yokalosh ()
13:51:33rasherI agree with amiconn that a release would be nice
13:52:43Zagorya, a release is always nice :-)
13:53:19rasherWell... hasn't there been enough changes to justify it?
13:53:59preglowpft! wait until iriver port is ready, then do rockbox 3.0!
13:54:46Zagorrasher: yes it has
13:55:23Zagori've just been lazy/absent this spring
13:56:24 Join MoosCamaro [0] (
13:56:27MoosCamaroHi all
13:58:51 Quit StrathAFK (
13:58:51 Quit Bagder (
14:13:27NJoinBagder [0] (
14:14:41 Join Strath [0] (
14:18:45 Join Aramil [0] (
14:26:26 Quit tvelocity (Read error: 60 (Operation timed out))
14:32:03 Join t0mas [0] (
14:40:17 Quit Aramil ("Leaving")
14:52:30 Join bumi2 [0] (
14:52:31 Quit Bumi (Read error: 104 (Connection reset by peer))
14:54:00 Nick bumi2 is now known as bumi (
14:57:09 Join asdsd____ [0] (
15:15:26 Part asdsd____
15:15:31***Saving seen data "./dancer.seen"
15:30:40 Join Yokalosh [0] (
15:39:00 Join Allex [0] (
15:40:46AllexHi ppl, whats up?
15:44:44Slasherifilebuffering almost done. Now it can play all vorbis files, no matter how big they are
15:45:33Yokaloshhow do you guys do this shit?
15:45:58Yokaloshur flippin genius's
15:46:38preglowSlasheri: l33t, does it handle wrapping at the end of the buffer and so on?
15:46:58ashridahYokalosh: all it takes is motivation and a decent background in the right field. you don't start out knowing everything, you build your way there through many grueling years at a uni, and then start all over again when someone throws you into the deep end at a job :)
15:47:14preglowor you just skip the uni
15:47:25ashridahpreglow: true, there's other ways to pick it up
15:47:35Slasheriyes, but currently it wont jump to next track when last is finished. I will do that next - gapless of course ;)
15:47:38ashridahbut the general idea is the same. start simple, work upwards in complexity
15:47:38preglowi've learnt most things on my own
15:48:04Allexinterest porting rockbox to SAA7750... did you have some docs?
15:48:17preglowi've learnt absolutely NOTHING new in programming in uni
15:48:26ZagorAllex: docs about rockbox or the saa7750?
15:48:37t0masSlasheri: you're using viewer plugins right?
15:48:44t0masso no audio API?
15:48:53Yokaloshwell i ave uni to come.... i'm 15
15:49:05AllexZagor: i have some PDF's but... but not full infos
15:49:12 Join Aditya [0] (
15:49:16ZagorAllex: ask philips directly. they're usually pretty good about releasing docs.
15:49:17ashridahYokalosh: the other ingredient is a willingness to experiment, and read anything in sight
15:49:30Yokaloshyeh haha
15:49:53Yokaloshcan somebody make the gameboy thing work cos it is kwl but tooo sloowwwww
15:49:59Slasherit0mas: Hmm, i am not sure how to say this.. Certainly there is some api but codec plugins are loaded as "regular plugins"
15:50:24AllexZagor: hmm.... don't think so...
15:50:38SlasheriThe only problem with the current implementation is that no other plugins can be used while audio is being played
15:50:46ashridahYokalosh: i don't think anyone really has a good idea what HCl's been doing in the way of dynarec to pick it up without significant effort, and he seems less motivated to get it working.
15:50:47t0masSlasheri: ok, I ment: it's not following the proposal in wiki right?
15:50:50t0masit's a new idea?
15:50:52ZagorAllex: ?
15:50:52ashridahof course, it'll never be fully functional
15:51:05Yokalosh:( awwww
15:51:09t0masashridah: not much
15:51:22Slasherit0mas: not precisely but the idea is same
15:51:31AllexZagor: anyone asks philips about this chips?
15:51:35Yokaloshhey, i know i asked earlier but what is that alpine plug in and how does it work?
15:51:43Slasheriplugins and dynamically loaded as necessary and multi codec architecture is supported
15:51:57ZagorAllex: I think not yet, but we've asked them about other chips before and got good responses.
15:52:12AllexZagor: what chip?
15:52:22Slasherit0mas: And there is input buffer for file data and output buffer for audio
15:52:25t0masSlasheri: ok, and you can't use plugins at the same time because the plugin buffer is used for the codecs?
15:52:37preglowyokalosh: read
15:52:53ZagorAllex: the UDA1380TT iirc
15:53:06SlasheriHmm, yes. That might be one problem. But i will do a work around to this, sooner or later..
15:53:17t0masSlasheri: So a new codec buffer should be created? and then plugins can work again?
15:53:36Slasherialso the internal plugin stack is used by loaded codecs
15:53:37AllexZagor: i want to program my MPIO FL100... now i can work with LCD... need infos about other stuff
15:53:55ZagorAllex: at least try asking them. can't hurt.
15:53:55t0masSlasheri: so new thread + buffer is needed?
15:54:05Zagorgotta go
15:54:39Slasherit0mas: Hmm, new thread is already done. I can't say for sure what is needed because I have not yet looked the code close enough
15:54:42AllexZagor: bye
15:55:26preglowSlasheri: so you've just hacked the xxx2wav plugins to stop outputing data on the lcd and made then output pcm data through the plugin api?
15:55:26Yokaloshbye zagor
15:55:32 Quit Yokalosh ()
15:55:48Slasherit0mas: in fact, the pluginbuf should not be a problem later
15:56:37AllexAnyone intresting to port on SAA7750?
15:56:38Slasheripreglow: yes, that is the basic idea. I might also copy the modified vorbis2wav, xxx2wav etc. files to entirely new files
15:57:17Slasheripreglow: in fact, they are not outputting the data through plugin api but codec api
15:57:35t0maswhat codec api?
15:57:53Slasheri(codec api is given to the plugins as a parameter on codec initialization)
15:57:58t0masah ok
15:58:28t0masit's 34 degrees celsius here... and my cpu is at 67 :X
15:58:39t0masnormally it's at just 45 to 50
15:58:55t0mas(fully loaded)
15:59:08Slasherihere its ~16C outside
15:59:16t0masah, you live on a hill?
15:59:28Slasheriin finland :)
15:59:33t0masoh wait
15:59:34Slasherinot a summer yet
15:59:46*t0mas thought you lived in ausria ;)
16:00:08*t0mas stops his compile...
16:00:16t0masat 70 it starts beeping...
16:00:27t0mastime to put my case fan back in
16:00:36Slasheriyes, you need a better cooling
16:00:39rasher70 isn't too hot
16:00:54t0masnormally it's at 33 to 37 rasher
16:01:01rasherI mean it's hot, but the cpu shouldn't complain until you hit 85-90
16:01:02t0masand on 100% load it gets to 45
16:01:11Slasherimy cpu is 38C currently (water cooled system)
16:01:14rasherwait.. what kind of cpu is this?
16:01:21t0masathlon XP
16:01:49rasheramds don't mind heat much
16:01:52preglowSlasheri: ahh, excellent, that's good thinking
16:02:13preglowgod damn, i wish i had time to help out
16:02:19t0masrasher: still... 70 is hot
16:02:28rasherbut not too hot
16:02:45t0masI'll just put my case fan back in tonight
16:06:09 Join BTKDaImMaikata [0] (~Bager@
16:06:11 Quit Bager (Read error: 131 (Connection reset by peer))
16:07:22 Nick BTKDaImMaikata is now known as Bager (~Bager@
16:09:33Bagerrasher about cpu temp... 85 is too much for athlon XP ......
16:10:51rashertrying to find amd's spec papers, but they're throwing me into an infinite redirection loop
16:11:11Bagerin fact, iirc, 80 or 90 degree C. is dieing
16:11:31Bagerw8, rasher
16:14:03rasheramd lists 85 as maximum temperature for xp 2400
16:14:20rashertrying to find the numbers for xp3200
16:15:25Bagerrasher there are about this
16:15:28Bager80 or 90
16:15:51Bagerone of the letters in the marking of CPU is for this temperature
16:16:21rashermax temp for xp2000 is 90C
16:24:55*preglow hugs his athlon64
16:25:47*preglow gets burnt
16:44:52*Bager gives preglow some liquid nitrogen
16:45:08Bageror it's too late ?
16:59:12 Quit Allex ("CGI:IRC (Ping timeout)")
17:00:17 Quit ashridah ("sleep")
17:15:35***Saving seen data "./dancer.seen"
17:38:09 Quit rasher ("CGI:IRC (EOF)")
17:46:41 Quit CoCoLUS (Read error: 60 (Operation timed out))
17:56:36 Quit bumi (Read error: 110 (Connection timed out))
17:59:11t0masBager? what's max for 2600+ barton?
18:07:38 Join dn [0] (~dn@
18:08:24 Quit dn (Client Quit)
18:08:36 Join CoCoLUS [0] (
18:18:19CoCoLUSis that playback-patch from 2 days ago included in cvs yet?
18:19:48t0masnot afaik
18:21:21 Join ehntoo [0] (
18:22:19MoosCamarowe all waiting Slasheri greats works :)
18:22:41MoosCamaroand Linus's of course
18:23:13Slasheri=) buffering should be finished soon. Now I will start testing if gapless playback with playlist works
18:24:04MoosCamaroplease go ahead :)
18:25:51CoCoLUSdoes it work without a playlist? :)
18:26:10preglowSlasheri: do you know how to extract exact track length info from mp3 files?
18:26:30preglowCoCoLUS: that patch won't be included in cvs, it's just a hack
18:26:46SlasheriCoCoLUS: Hmm, you can select individual files from file browser / playlist, so yes? :)
18:27:13Slasheripreglow: No, i haven't had time to look into any wps stuff yet
18:28:03preglowSlasheri: you need the info for gapless playback, not wps
18:28:16SlasheriHmm, is that really necessary?
18:28:21preglowwell, yes
18:28:27preglowmp3, by default, doesn't store how long the track is
18:28:40preglowhow can you make gapless playback when you don't know how long the track is?
18:29:12preglowyou know how long the track is in frames, but you don't know how many real samples the last frame contains
18:29:20Slasheriokay, so it's not enough if switching between audio codecs is gapless? (i.e., no null data would be written into audio buffer)
18:29:31*t0mas is away: eating
18:29:42preglownot for mp3
18:29:46preglowfor vorbis, that will be enough
18:29:52preglowsince you know, in samples, how long a track is
18:30:05Slasheriah, yes i understand
18:30:08ZagorSlasheri: correct. mp3 requires extra massaging of the pcm data
18:30:08preglowso you know how many samples from the last frame you're supposed to chop away
18:30:27preglowmp3 doesn't tell you how many of the last frame samples you're supposed to chop away
18:30:40preglowlame does encode that file into the mp3s, though
18:31:44preglowand luckily, lots of people use lame these days
18:33:35preglowdoes encode that _INFO into the mp3
18:34:00*preglow curses his sentence contruction skills
18:35:02Slasherihmm, i will look that mp3 problem later after i got vorbis fully working
18:35:21preglowvorbis is inherently gapless, so that's the better plan
18:35:31Slasherigreat :)
19:12:16 Quit Zagor (Remote closed the connection)
19:15:36***Saving seen data "./dancer.seen"
19:19:49 Join tvelocity [0] (
19:20:32 Join ripnetUK [0] (
19:20:48 Quit textchimp (Read error: 60 (Operation timed out))
19:21:01ripnetUKhello box-rockers - ive been away for a week or 2 - any news on iRiver port?
19:22:43 Quit ripnetUK (Client Quit)
19:23:37 Join bumi2 [0] (
19:24:31 Join bill2or3 [0] (
19:47:01 Join LinusN [0] (
19:52:16 Join webguest79 [0] (
19:54:56 Quit webguest79 (Client Quit)
19:56:02 Join webguest79 [0] (
20:00:57 Part LinusN
20:01:51 Quit webguest79 ("CGI:IRC (EOF)")
20:05:55 Quit bumi2 (Read error: 110 (Connection timed out))
20:40:13MoosCamaroHi Slasheri what's new about your works? :)
20:41:23 Join bagawk [0] (~Lee@bagawk.user)
20:41:26MoosCamaroohh go/back of Linus I see
20:58:03SlasheriMoosCamaro: Still testing.. Now contiguous playing of ogg files almost works. Still some small problems with buffering
21:00:11 Quit bagawk ("Leaving")
21:01:40CoCoLUSas soon as gapless playback is working, im switching :)=
21:04:14MoosCamaroSlasheri: that progresses fine, it's cool
21:04:23MoosCamarogood luck ;)
21:10:13Slasherihehe, thanks ;)
21:10:19Slasheriluck is needed
21:12:14preglowextremely good news
21:13:16tvelocitydid i hear correctly? contiguous playing of ogg files almost works?
21:14:16Slasheriyes, that's correct. However, currently there is no wps or any display about what file is being played
21:14:50tvelocitythats great. congrats
21:15:39***Saving seen data "./dancer.seen"
21:18:12Slasherieven highest bitrate vorbis files seems to work, at least if they are pre-buffered enough
21:18:29CoCoLUSis a system for reading tags/displaying already there and just not used or is it work in progress?
21:18:59tvelocityi haven't been following progress lately... what else is done/almost done?
21:19:14SlasheriI think the wps is there, but i don't know yet how to use it
21:20:40tvelocityhow's the sound API going?
21:20:50CoCoLUSyou're talking about the highest possible bitrate that the ogg codec allows or the original firmware limit (iirc 500 kbps)?
21:21:13SlasheriHmm, 500 kbps
21:22:47CoCoLUSyou're are using the 120 mhz mode at the moment?
21:23:22CoCoLUSi'm curious... sorry for the questions ;)
21:23:54SlasheriHowever, i think that all codecs will get faster when more optimizations are made to them
21:24:17SlasheriAt least vorbis, mp3 and flac should be realtime at the moment (maybe even more?)
21:24:21CoCoLUSdo "normal" files (ie files with a bitrate like 150-250) run realtime with a lower frequency? without future optimizations
21:24:43SlasheriCurrently they wont
21:25:50SlasheriBut that's not a problem because switch to higher frequency should be only be made when it's necessary to fill the audio buffer faster
21:27:16Slasherifor example when audio buffer reaches watermark, we could boost the cpu and when the buffer is full, just restore slower frequency
21:27:20preglowSlasheri: wavpack
21:27:45preglowCoCoLUS: "without future optimisation" is not a viable option, nor is "lower frequency"
21:27:52preglowthey'll all have to see optimisation
21:28:27preglowrunning the transforms codecs at a lower frequency might help "some"
21:28:35preglowthe only codec i'm sure can do that is mp3 anyway
21:29:05CoCoLUSi was talking about lower cpu frequency
21:29:33preglowmp3 might be able to run at a lower frequency
21:29:37preglowwavpack might also
21:29:40preglowperhaps flac, if you're lucky
21:29:42preglowthat's that
21:30:06CoCoLUSbecause iirc the 120 mhz mode is somewhat unfriendly to the battery ;)
21:30:31preglowwe'll not be using it all the time
21:30:33preglowjust when decoding
21:31:24CoCoLUSso the plan is not to run continously at lower cpu frequency levels but use 120 mhz "bursts" ?
21:45:54 Join Yokalosh [0] (
21:46:55YokaloshI have a random little problem, its quite weird and i don't know why my recorder 10 does it
21:48:36Yokaloshdoes anyone know about a weird little battery prob
21:48:53Yokaloshits just my battery earlier, i turned it on it had 50% battery
21:48:59Yokalosh2 minutes later 52
21:49:04Yokaloshthen 47
21:49:09Yokaloshthen 43
21:49:20Yokaloshthen 47 and then it went right down to 33
21:49:32Yokaloshall in around 10 minutes
21:49:37Yokaloshcan anyone help?
21:52:40 Join LinusN [0] (
21:55:30Yokaloshanyone? yes, no, maybe?
21:56:31LinusNYokalosh: are your batteries in good condition?
21:56:44Yokaloshthey should be
21:56:46LinusNhave you entered the correct battery capacity in the settings?
21:56:54Yokalosherm yes
21:57:03LinusNhow long does it play before it dies?
21:57:25Yokaloshit depends from day to day, usually a couple of hours, 5 or 6 maybe
21:57:46LinusNthe battery percentage is just an educated guess
21:58:11LinusNand it is an attempt to tell how much playtime is left
21:58:17Yokaloshokay cool
21:58:47Yokaloshi never noticed it did that before though which is weird
21:58:48LinusNwhat is the battery capacity?
22:01:00LinusNthen 5-6 hours seems pretty ok
22:02:11Yokaloshcool, but this only seems to have started happening since yesterday when i flshed it for the first time
22:03:09LinusNthe battery capacity calculation is often somewhat off just after starting the jukebox
22:03:31Yokaloshyeh, this was 2 or 3 hours in :S
22:05:25Yokaloshi prbably just need new batteries, these are about 16 months old now
22:06:47LinusNguess so
22:08:29MoosCamaroSalut Linus
22:08:43Yokaloshso what cool things are planned for the future then?
22:09:11MoosCamaroLinus: Have you read the begining Slasheri works? :)
22:09:27LinusNMoosCamaro: yes, i'd like to see his code
22:10:20LinusNYokalosh: nothing special, i'm mostly working to get the iriver working
22:14:01SlasheriLinusN: I could probably do a patch tomorrow or at next week when i get the code more clean and working better
22:14:21Yokaloshc you guys later :)
22:14:22LinusNSlasheri: could you describe what you have done so far?
22:14:37 Quit Yokalosh ()
22:15:53SlasheriLinusN: Little improved audio buffer, file buffer for codecs&plugins (still buggy), changed plugin loader to also load from ram, passed plugin api to codecs as pointer to a structure, and very basic playlist control (i can select a song to start play with)
22:16:24SlasheriThe playback starts almost immediately and buffering continues on background until the whole file buffer is filled
22:17:08Slasheri*passed codec api to codec plugins...
22:18:26LinusNSlasheri: how much have you looked at the current file buffering code?
22:19:13SlasheriHmm, not much.. Maybe i should really check it
22:19:58LinusNwe don't want a completely different approach for the iriver playback
22:20:42LinusNin the best case, we could have the same code on all platforms
22:21:39Slasheriyes.. currently the iriver related code is separated on a different file
22:24:57LinusNone of the reasons that it has took me so long to do the playback code myself is that it has been a lot of work to revamp the current code to fit into the software codec concept
22:24:58SlasheriHmm.. do you think it might be possible to use existing file buffer directly on iriver?
22:25:23Slasheriokay, i understand..
22:25:51LinusNmy suggestion to you is to concentrate on the pcm playback issues
22:26:08LinusNand not to worry much about wps and playlists issues
22:26:27LinusNthen we can "easily" merge your efforts into the current code
22:26:50Slasheriok, i try to do that :)
22:26:52LinusNbtw, what do you mean with "changed plugin loader to load from ram"?
22:28:27Slasherii made a little change to the code: i changed the function plugin_load to plugin_load_ram that loads plugin from a giver address location. plugin_load still works as before and calls plugin_load_ram
22:30:15LinusNwhat for?
22:30:46Slasherii used it to load codec plugins directly from ram buffer instead of file :)
22:31:17Slasheriand it worked well..
22:32:01LinusNyes, but what for=
22:32:52SlasheriHmm, when there are many songs loaded into memory, the new codec can be loaded from memory too insted of spinning up the disk..
22:33:35LinusNwhy not just keep it loaded?
22:34:35SlasheriAh, you mean that all necessary codecs could be loaded from disk when it's spinning and then keeping all of them running?
22:34:59SlasheriHmm, that might be really a good idea
22:35:20LinusNthe general idea is to have up to two codecs running at the same time
22:35:25SlasheriBut then the plugin loader has to be modified to support multiple plugins to be loaded simultaneously?
22:35:28LinusNloaded on demand
22:35:43LinusNdon't confuse plugins with codecs
22:36:10LinusNthe codecs are separate from the ordinary plugins
22:36:34Slasheriyes.. (i just currently used plugin loader for testing)
22:37:02Slasheriokay, i understand what you mean
22:37:45Slasheriso there is no need to buffer codecs if codec loader could keep two instances on memory at a time
22:39:07LinusNyou have to, if you want gapless
22:40:41LinusNi really appreciate your work on this
22:41:00LinusNit would really be nice to commit some of it to cvs
22:41:20LinusNespecially the pcm buffer playback stuff, to begin with
22:43:27Slasherihmm, maybe i could improve the pcm playback code more if that would be useful
22:44:30SlasheriI just added cpu_boost control so when the pcm buffer reaches watermark, boost is set to true
22:44:58SlasheriAnd on full buffer speed is dropped, unless file buffering is going on
22:54:26LinusNis pcm playback in a separate thread now?
22:56:23SlasheriHmm, now.. At the moment i have pcm.c that includes two threads: one for filebuffer control and other for codec. But maybe i could change the pcm playback to a thread
22:57:50SlasheriBut is there any need for pcm playback to be on a separate threads as all events are generated by dma interrupt?
23:00:38SlasheriWhat tests i have done, codec thread and file buffer control thread was enough for a seamless playback and fast ui. But maybe there are other, better approaches also
23:02:42LinusNsounds ok
23:04:38Slasheriand my very simplified codec api looks like this:
23:04:40Slasheri| size_t (*read_filebuf)(void *ptr, size_t size);
23:04:40Slasheri| bool (*audiobuffer_insert)(char *data, size_t length);
23:05:22Slasheriso codec could read the amount of data it needs, and write some audio chunks when it's ready
23:05:47SlasheriAudio chunks are also prebuffered by pcm playback until MIN_CHUNK_SIZE bytes are received
23:08:17LinusNlooks ok so far
23:08:29Slasherigreat :)
23:08:45LinusNit's not like we have to set anything in stone
23:09:26Slasheridon't mind if i do some file buffering stuff, that don't need to be added to cvs ever. It just might be useful for testing. Maybe i will concentrate more on the pcm playback stuff :)
23:10:14LinusNwould be nice if you did, so we can commit your stuff in steps
23:10:31LinusNit's a pain to commit huge patches
23:10:33Slasheriok, that would be great
23:14:05 Quit MoosCamaro (Read error: 110 (Connection timed out))
23:15:41***Saving seen data "./dancer.seen"
23:17:14LinusNi have to go. please consider preparing the pcm playback stuff for commit
23:17:31Slasheriok, thanks. night :)
23:17:38 Part LinusN
23:28:06 Quit Harpy (Read error: 60 (Operation timed out))
23:28:56 Join rasher [0] (
23:32:47rasherSlasheri: excellent work

Previous day | Next day