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).

Notice: Only Gecko based browsers prior to FF4 support the multipart/mixed "server push" method used by this log reader to auto-update. Since you do not appear to use such a browser, this page will simply show the current log, and not automatically update.

#rockbox log for 2011-04-14

00:00:55logvelcfunman: yes it does, too much in fact. I'm looking for a concise description of 'what happens' when the current hard-code is replaced
00:01:11AlexPlogvelc: It is the same as replacing e.g. windows with linux
00:01:27AlexPRockbox is an operating system and music playing app combined
00:01:34AlexPAs is the original firmware
00:02:34 Quit GodEater (Read error: Operation timed out)
00:03:10logvelcAlexP: I see. I didn't ask for a necessarily Rockbox-oriented description. I'm just interested in what would be analogous to the boot stage in the OS change
00:03:25logvelcProblem is, i can't google "Philips gogear raga boot"
00:03:30AlexPI don't understand the question
00:03:35logvelc(with great success)
00:04:04gevaertsWell, there's a bootloader in the on-chip ROM that somehow loads code from disk or flash and runs it
00:04:15Tornethe power comes on and it starts running code from some kind of rom or flash
00:04:16Tornethat's it.
00:04:21 Quit kevku (Ping timeout: 248 seconds)
00:04:25Tornewhat the code in that rom or flash chooses to do is hardware-dependent
00:04:47Torneas is where it finds that code, how big it is, what it's stored on, etc
00:05:27logvelcso you place a very DAP-dependent file on a very DAP-dependent place in the DAP file system and then all the magic happens?
00:05:42gevaertsWell, it doesn't have to be the filesystem
00:05:51***Saving seen data "./dancer.seen"
00:05:53gevaertsIt can be in a raw partition, or a flash chip
00:06:01gevaertsOr anywhere, really
00:06:13 Quit mystica555 (Ping timeout: 240 seconds)
00:06:19logvelci tried to remove everything on my DAPs filesystem. The stupid menu persevered.
00:06:27logvelchow do you place it somewhere else?
00:06:29TorneIn fact the first stage is guaranteed not to be in a filesystem, pretty much
00:06:37Tornethe first kind has to be in ROM or a raw NOR flash device
00:06:45gevaertsBy researching where it should be placed first
00:06:47Torneit might eventually load something from a filesystem
00:06:56Tornewhich may or may not be a filesystem you can access from a computer
00:07:06logvelcfor me, all ways i could interact with the DAP is "write and read to file system"
00:07:16Tornebut many of them don't and the entire firmware binary is just in the boot flash
00:07:28 Join GodEater [0] (
00:07:28 Quit GodEater (Changing host)
00:07:28 Join GodEater [0] (~bibble@rockbox/staff/GodEater)
00:07:40saratogaat this level of detail the process is the same as a PC, code is present in memory and gets run, that code loads an operating system off of storage, system boots, etc
00:08:26logvelcbut it seems rockbox can be installed on many daps using only a computer connected to the dap
00:08:34saratogatheres no real conceptual difference here between an mp3 player and a PC, they just put the code in different places, etc
00:08:42saratogayes we've written many installers to do that
00:09:06logvelcfunman: i don't know how to answer that question
00:09:06 Quit ender (Quit: These were also the same guys who used a simplified hungarian notation in Java. To them, this meant that every variable name except for Strings and primitives was prefixed with an o ... because everything is an Object.... yup...-- Xyro, TheDailyWTF for)
00:09:19Tornelogvelc: on almost every device this works via the manufacturer's firmware upgrade process
00:09:22Tornewhatever that is.
00:09:32logvelcmy question then is: what do they do, besides writing to the dap file system?
00:09:40saratogaeach one is different
00:09:50TorneSome do just write a file with a certain name/structure to a particular place
00:10:04TorneSome communicate with the player via a different USB protocol unrelated to storage
00:10:14saratogausually a firmware file gets written to the DAP via its upgrade procedure, or some special mode is used to load new code into the DAP's memory which then installs something we want, etc
00:10:17logvelcsaratoga: any answer would be interesting as i have no idea what's possible to do besides writing to the file system
00:10:26Tornelogvelc: "anything", is the answer
00:10:34TorneUSB supports an infinite variety of communication types
00:10:38 Join JesusFreak316 [0] (
00:10:44TorneYou have to do whatever the hardware or existing software expects
00:10:46Tornewhich can be anything
00:10:47saratogalogvelc: besides the file system, the other place you can usually write to would be RAM
00:10:50logvelcoh, i see
00:10:59saratogaoccasionally theres some other memory on the player as well
00:11:17logvelcso i would have to figure out what my dap usb connection does
00:11:26saratogabut usually just a disk/flash and ram are writeable (or at least easy to write to)
00:11:59logvelcwhat the dap does with the data coming via the usb connection is not standardized?
00:12:17Tornethere are a good dozen or two standards
00:12:17saratogaif it works with windows its standardized
00:12:23Torneand lots of hardware that doesn't use any of them
00:12:39Torneat leat, not for firmware updates.
00:12:52TorneUSB devices can implement more than one kind of interface at the same time
00:13:02Torneso it can have a standard storage interface and also a nonstandard firmware update interface
00:13:06Torneor just a different standard.
00:14:11logvelcthen i guess i should start experimenting with the usb interface
00:14:28Tornedo you actually know what that means?
00:14:29saratogahonestly if you're asking these questions you should just buy a supported player
00:14:37saratogabecause you're not going to be able to do anything at all
00:14:53 Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS)
00:15:03Tornelogvelc: it takes us hundreds/thousands of hours of work to get a new player working
00:15:10logvelcwell i don't mean i will practically do it right away, but if i know how it works i'll know a lot more useful things
00:15:24saratogayour player will be dust by the time you learn enough to start this project :)
00:15:25Tornestarting with people who have done it before and know how it's done
00:18:15logvelcDo you know of a description of the 'usb interface' of some well-investigated player?
00:18:33logvelcIf it's cheap that would also be great :p
00:18:43logvelc(the player)
00:20:29 Quit evilnick_B (Quit: Page closed)
00:21:04 Quit bertrik (Quit: :tiuQ)
00:22:08 Quit JesusFreak316 (Ping timeout: 250 seconds)
00:22:46logvelcstarting with people who know it is not really an option. I don't know any.
00:23:13saratogalike I said before, buy a Sansa Clip, we know quite a bit about its USB interface, and you can read the driver code in rockbox
00:24:33logvelcthanks for all your patience
00:24:43*logvelc detaches his screen
00:25:39 Quit sideral (Quit: Leaving.)
00:27:13 Quit funman (Quit: leaving)
00:40:14 Quit yosafbridge (Quit: ERC Version 5.3 (IRC client for Emacs))
00:40:26 Join yosafbridge [0] (
00:49:33 Join BHSPitMonkey [0] (~stephen@unaffiliated/bhspitmonkey)
00:56:05 Quit jhMikeS ()
00:58:36 Quit DerPapst1 (Quit: Leaving.)
00:58:45 Join scromple [0] (
00:59:15 Quit Rob2222 (Read error: Connection reset by peer)
00:59:33 Join Rob2222 [0] (
01:00:00 Join wodz [0] (
01:00:20 Join jhMikeS [0] (~jethead71@
01:00:20 Quit jhMikeS (Changing host)
01:00:20 Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS)
01:04:04 Quit piotrekm (Quit: piotrekm)
01:07:30JdGordon1whats the button combo to get the ipod into recovery mode?
01:15:31 Quit bluebrother (Disconnected by services)
01:15:32 Join bluebroth3r [0] (~dom@rockbox/developer/bluebrother)
01:22:21 Quit wodz (Quit: Leaving)
01:24:50 Part toffe82
01:26:15 Quit boghog (Quit: boghog)
01:37:54 Quit mudd1 (Ping timeout: 246 seconds)
01:37:57 Join telliott [0] (
01:37:59 Join Judas_PhD [0] (
01:41:06 Quit Keripo (Ping timeout: 240 seconds)
01:41:13 Join Keripo [0] (
01:44:18 Join Darkknight512 [0] (
01:48:14 Quit dfkt (Quit: -= SysReset 2.55=- Sic gorgiamus allos subjectatos nunc.)
02:04:13 Quit ender| (Ping timeout: 240 seconds)
02:04:56 Join ender| [0] (
02:05:52***Saving seen data "./dancer.seen"
02:09:14 Quit Elfish (Read error: Operation timed out)
02:09:20 Join Elfish [0] (amba@2a01:4f8:100:90a1:abc:abc:abc:abc)
02:13:22 Join L-Strife89 [0] (~Strife89@
02:32:58 Join [Saint] [0] (
02:44:13 Quit factor (Ping timeout: 240 seconds)
02:44:32 Quit MethoS- (Remote host closed the connection)
02:56:34 Quit telliott (Quit: Leaving)
02:57:39 Quit scorche|sh (Changing host)
02:57:39 Join scorche|sh [0] (~scorche@rockbox/administrator/scorche)
02:58:54 Join delt [0] (
02:59:17deltanyone good with electronics here?
03:00:23deltjust wondering... how come when you wire a wall adapter to a device that normally uses batteries, it always seems like the voltage is too high?
03:00:46delteven if it's set to nominal level, ie. 3V for two 1.5V batteries
03:01:04scorche|shdelt: for future reference, this channel is reserved for rockbox topics only - anything else is offtopic
03:01:22*scorche|sh points to the topic
03:01:32deltscorche|sh: thanks
03:03:23 Join factor [0] (~factor@
03:07:20 Quit GodEater (Ping timeout: 276 seconds)
03:09:06 Join GodEater [0] (
03:09:16 Quit GodEater (Changing host)
03:09:16 Join GodEater [0] (~bibble@rockbox/staff/GodEater)
03:25:21 Join _jhMikeS_ [0] (
03:25:21 Quit _jhMikeS_ (Changing host)
03:25:21 Join _jhMikeS_ [0] (~jethead71@rockbox/developer/jhMikeS)
03:25:21 Quit jhMikeS (Disconnected by services)
03:25:22 Nick _jhMikeS_ is now known as jhMikeS (~jethead71@rockbox/developer/jhMikeS)
03:25:25 Part delt
03:30:30 Quit mt (Remote host closed the connection)
03:35:07 Quit Judas_PhD (Quit: This is a quitting message)
03:35:28 Join kendell [0] (~chatzilla@
03:36:21kendellhi all. is there a way to recalibrate the battery to improve runtime estimation? I ask because my iPod went from around seventy percent, to 0 percent in two hours. then it went back up to one percent. it never shut off, but was just wondering.
03:38:26kendellcould it be because of constantly skipping tracks? I'm guessing heavy hdd activity drains the battery?
03:38:39 Quit leavittx (Read error: Operation timed out)
03:45:11kendellJdGordon1: sorry to bother you, but I saw on the wiki that there are ssd's available that will fit the iPod. can the iPod even use them? does it know how? if so I'll probably get one
03:46:33saratogadoesn't the wiki list which ones work with what ipods?
03:47:33kendellsaratoga: I think so, but it also has a list of hard drives, who makes them, and what kind of connector they use. the iPod video uses ziff 40.
03:48:10kendellnext best thing to flash memory. the hdd is draining battery like you wouldn't believe :(
03:51:32kendellmmmmm, coffee's almost done
03:59:18 Join Llorean [0] (~DarkkOne@rockbox/user/Llorean)
04:00:53 Join T44 [0] (
04:03:35 Quit Darkknight512 (Quit: CGI:IRC)
04:03:53 Quit Topy (Ping timeout: 240 seconds)
04:05:53***Saving seen data "./dancer.seen"
04:06:20 Join kugel_ [0] (~kugel@rockbox/developer/kugel)
04:09:11 Quit kugel (Ping timeout: 240 seconds)
04:21:48 Join Barahir_ [0] (
04:25:07 Quit Barahir (Ping timeout: 258 seconds)
04:46:35 Quit amiconn (Disconnected by services)
04:46:36 Join amiconn_ [0] (quassel@rockbox/developer/amiconn)
04:46:41 Quit pixelma (Disconnected by services)
04:46:44 Join pixelma_ [0] (quassel@rockbox/staff/pixelma)
04:46:46 Nick pixelma_ is now known as pixelma (quassel@rockbox/staff/pixelma)
04:46:54 Nick amiconn_ is now known as amiconn (quassel@rockbox/developer/amiconn)
04:57:12 Quit TheSeven (Ping timeout: 248 seconds)
04:58:35 Part kendell
05:01:11 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
05:12:16 Join Rob2223 [0] (
05:13:01 Quit bieber_ (Remote host closed the connection)
05:15:02 Quit Rob2222 (Ping timeout: 252 seconds)
05:15:05 Join bieber_ [0] (
05:15:14 Join t0rc [0] (~t0rc@unaffiliated/t0rc/x-5233201)
05:42:58 Quit Horscht (Quit: Verlassend)
06:05:55***Saving seen data "./dancer.seen"
06:19:37 Join ChickeNE_ [0] (~ChickeNES@
06:20:59 Quit ChickeNES (Read error: Operation timed out)
06:23:18 Quit factor (Read error: Connection reset by peer)
06:24:30 Quit L-Strife89 (Read error: Operation timed out)
06:25:05 Join L-Strife89 [0] (~Strife89@
06:25:27 Join factor [0] (~factor@
06:26:40 Quit BHSPitMonkey (Read error: Operation timed out)
06:28:25 Quit L-Strife89 (Client Quit)
06:29:04 Quit Strife89 (Ping timeout: 240 seconds)
06:34:10 Quit t0rc (Quit: WeeChat 0.3.4)
06:42:32 Join BHSPitMonkey [0] (~stephen@unaffiliated/bhspitmonkey)
06:58:37 Join mudd1 [0] (
07:00:27 Quit JesusChrysler (Quit: JesusChrysler)
07:02:40 Join Judas_PhD [0] (
07:25:46 Join FoolOnHill [0] (
07:26:01 Join sideral [0] (~sideral@rockbox/developer/sideral)
07:26:57 Quit FoH (Ping timeout: 252 seconds)
07:31:48 Quit JdGordon1 (Ping timeout: 258 seconds)
07:32:51 Join Buschel [0] (
07:34:37 Quit sideral (Quit: Leaving.)
07:38:15 Join Strife89 [0] (~Strife89@
07:38:42 Join stoffel [0] (
07:38:42 Quit Buschel (Quit: ChatZilla [Firefox 3.6.16/20110319135224])
07:40:03 Join JesusChrysler [0] (
07:49:50 Quit Keripo (Read error: Connection reset by peer)
07:50:48 Join smk [0] (~smk@
07:51:21 Quit fyrestorm (Read error: Connection reset by peer)
07:51:42 Join fyrestorm [0] (~nnscript@
07:57:11 Join JdGordon| [0] (~jonno@rockbox/developer/JdGordon)
07:59:32 Join Keripo [0] (
07:59:57 Join DerPapst [0] (
08:05:57***Saving seen data "./dancer.seen"
08:07:50 Join JdGordon1 [0] (~jonno@rockbox/developer/JdGordon)
08:16:29 Join sideral [0] (~sideral@
08:16:29 Quit sideral (Changing host)
08:16:29 Join sideral [0] (~sideral@rockbox/developer/sideral)
08:17:51smkregarding malloc in libfaad. all dynamic allocation is being done by calling faad_malloc. So i started by finding all functions that call faad_malloc and calculating how much mem is allocated by each such call. am using cscope for this.
08:17:56smkis there a better way?
08:22:32 Join mystica555 [0] (
08:24:49 Join B4gder [0] (
08:24:49 Quit B4gder (Changing host)
08:24:49 Join B4gder [0] (~danielx@rockbox/developer/bagder)
08:26:14 Quit ChickeNE_ (Quit: Computer has gone to sleep.)
08:30:25 Join Zagor [0] (~bjst@rockbox/developer/Zagor)
08:37:49 Join bluefoxx [0] (
08:42:03 Quit BHSPitMonkey (Read error: Connection reset by peer)
08:42:06 Join ender` [0] (
08:55:12 Quit smk (Remote host closed the connection)
09:04:01 Join efyx [0] (~efyx@
09:04:48 Join kevku [0] (~kevku@2001:470:28:773:babe:feed:dead:bee)
09:08:39 Quit amiconn (Disconnected by services)
09:08:40 Join amiconn_ [0] (quassel@rockbox/developer/amiconn)
09:08:41 Join LinusN [0] (~linus@rockbox/developer/LinusN)
09:08:58 Nick amiconn_ is now known as amiconn (quassel@rockbox/developer/amiconn)
09:10:20 Quit pixelma (Disconnected by services)
09:10:20 Join pixelma_ [0] (quassel@rockbox/staff/pixelma)
09:10:37 Nick pixelma_ is now known as pixelma (quassel@rockbox/staff/pixelma)
09:10:49 Quit scromple (Quit: Gots to go get me outta here)
09:11:24 Quit Rob2223 (Ping timeout: 276 seconds)
09:11:51 Join Rob2223 [0] (
09:17:52 Quit rasher (Ping timeout: 240 seconds)
09:18:34 Quit simonlnu (Quit: brb)
09:19:21 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
09:21:40 Quit bieber (Ping timeout: 240 seconds)
09:22:18 Join bieber [0] (
09:25:29 Join rasher [0] (~rasher@rockbox/developer/rasher)
09:27:08 Join petur [0] (~petur@rockbox/developer/petur)
09:27:54 Quit pamaury (Remote host closed the connection)
09:29:00 Quit utanapischti (Quit: WeeChat 0.3.2)
09:29:25 Join sasquatch [0] (
09:31:53 Quit Judas_PhD (Quit: This is a quitting message)
09:32:52 Quit Keripo (Ping timeout: 260 seconds)
09:37:23 Quit rasher (Ping timeout: 276 seconds)
09:39:58 Join simonlnu [0] (simon@unaffiliated/simonrvn)
09:41:41 Join n1s [0] (~quassel@rockbox/developer/n1s)
09:53:20 Quit JdGordon| (Quit: leaving)
09:55:23 Join rasher [0] (~rasher@rockbox/developer/rasher)
10:06:00***Saving seen data "./dancer.seen"
10:14:47 Join leavittx [0] (~leavittx@
10:21:23 Quit mudd1 (Read error: Operation timed out)
10:26:54 Quit bieber (Read error: Connection reset by peer)
10:27:20 Join bieber [0] (
10:30:41 Join pamaury [0] (81680b01@rockbox/developer/pamaury)
10:38:08 Join smk [0] (~smk@
10:39:07 Quit DerPapst (Quit: Leaving.)
10:39:19 Join DerPapst [0] (
10:42:48smkn1s: started libfaad work. all calls to malloc are made through faad_malloc. So i am finding all functions which call faad_malloc and calculating how much is allocated for each such call
10:42:56smki am using cscope for this.
10:43:19 Join Judas_PhD [0] (
10:43:35 Quit DerPapst (Ping timeout: 240 seconds)
10:43:44smkanything else i should be looking at? or is there a better way to go about it?
10:46:24n1ssmk: you should talk to saratoga about it he looked into that stuff, iirc it's something with the container parsing that needs memory proportional to the file length or somesuch
10:47:00n1sbut it sounds like a reasonable approach
10:47:09 Join sumit_ [0] (~smk@
10:47:20 Quit sumit_ (Client Quit)
10:48:42 Quit smk (Ping timeout: 260 seconds)
10:50:25n1ssmk: (for the logs) look at libm4a/demux.c
10:53:26n1sheh, that doesn't seem to free any of its allocations
10:57:09 Quit TheSeven (Ping timeout: 276 seconds)
10:57:29 Quit bluefoxx (Read error: Connection reset by peer)
11:01:15 Quit rasher (Ping timeout: 240 seconds)
11:02:37 Quit leavittx (Ping timeout: 252 seconds)
11:14:09 Join rasher [0] (~rasher@rockbox/developer/rasher)
11:23:17 Join bluefoxx [0] (
11:41:06 Quit mystica555 (Read error: Connection reset by peer)
11:47:41 Join Hendrik_de [0] (~radke@theorie-dyn-29-179.Informatik.Uni-Oldenburg.DE)
11:49:29 Join DerPapst [0] (
11:53:58 Join dfkt [0] (~dfkt@unaffiliated/dfkt)
12:00:06 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
12:06:02***Saving seen data "./dancer.seen"
12:09:08tguinotUSB still doesn't work on sansa Fuze V2?
12:09:23 Quit JdGordon1 (Ping timeout: 250 seconds)
12:10:44 Quit dfkt (Read error: Connection reset by peer)
12:11:00 Join dfkt [0] (~dfkt@unaffiliated/dfkt)
12:11:37pamauryit's a complicated matter, it works with most people but it seems there are a few problems with some so it's still not enabled by default. It's also quite possible that the remaining problems have nothing to do with usb
12:27:21 Join swilde [0] (
12:35:56 Join wodz [0] (
12:36:48wodzwe had a problem during switch to eabi that gcc optimized out busy loops - while(n−−) {}. What was the solution?
12:37:24n1swodz: the most reliable way is a volatile asm
12:38:15n1si think it had more to do with the compiler upgrade than the abi switch too, same thing happened when turning on Os optimizations for coldfire
12:39:05Torneisn't the solution "don't write your own busy loops, use one already implemented that took care of this"
12:40:12n1syeah, probably
12:41:53 Join MethoS- [0] (~clemens@
12:42:18n1swodz: if udelay is fine that's probably best
12:43:34wodzI am crafting lcd_init for rockchip and this isn't running in rb framework yet
12:44:27n1swell, the quick and dirty is either volatile asm or slapping a vloatile on the loop index
12:44:53 Quit bluefoxx (Ping timeout: 260 seconds)
12:48:29n1si2c_telechips.c has an example if you havenẗ́ coded one already
13:02:16 Quit MethoS- (Ping timeout: 260 seconds)
13:04:50 Join robin0800 [0] (
13:16:50 Join JdGordon| [0] (~jonno@rockbox/developer/JdGordon)
13:23:16 Quit n1s (Remote host closed the connection)
13:42:11 Join einhirn [0] (
13:47:51 Part LinusN
13:48:24 Join LinusN [0] (~linus@rockbox/developer/LinusN)
13:53:24 Part LinusN
13:55:15 Join LinusN [0] (~linus@rockbox/developer/LinusN)
14:05:38 Join MethoS- [0] (~clemens@
14:06:05***Saving seen data "./dancer.seen"
14:10:59 Part LinusN
14:15:23 Join smk [0] (~smk@
14:16:27smkn1s: no, i am not freeing any allocations right now. doing a worst case analysis of how much is being used. will make it static then. as you had suggested
14:16:48 Join japc [0] (~japc@
14:17:53smkthat was reply to ur earlier comment. I saw it very late :(
14:18:47 Join LinusN [0] (~linus@rockbox/developer/LinusN)
14:19:39 Quit bieber (Ping timeout: 240 seconds)
14:23:38*pamaury is unhappy with the battery life of his clip+
14:24:22sideralpamaury: Are you using an SD card, and are you using svn-current?
14:27:52 Quit pamaury (Ping timeout: 252 seconds)
14:29:20 Join ChickeNES [0] (~ChickeNES@
14:31:56 Join pamaury [0] (81680b01@rockbox/developer/pamaury)
14:32:46pamaurysideral: I'm using a quite old version of the firmware, and I have a sd card, I should upgrade before complaining :)
14:33:20pamauryI used to put new version on my sd card to work on usb
14:33:39JdGordon|smk: doesnt worst case depend on the specific audio track?
14:33:41sideralpamaury: We don't enable high-speed mode on the card any more, that could help with battery life
14:34:08pamauryyeah I know there were lots of recent changes with respect to sd on amsv2
14:34:43sideralalso, some SD cards have an automatic power-saving mode and some don't. I don't think the AMSv2 SD driver puts SD cards to a sleep state explicitly
14:35:22sideralpamaury: BTW, have you seen that I have reopened FS #11877?
14:35:56pamauryit would be awesome if you had a reliable procedure
14:36:11 Quit TheSeven (Ping timeout: 260 seconds)
14:36:29pamaurythough I'm unsure it has to do with usb
14:36:48sideralI can send you my disk image. this seems to trigger it reliably for me
14:37:00smkJdGordon|: i am calculating worst case according to the parameter passed while allocating. that is if the passed parameter is of uint8_t, then its max value is 255. so i use 255 in the mem calculation
14:37:10sideralYeah, could be something else. But I ruled out jhMikeS' latest sync changes
14:37:16smkthe practical worst case would of course be lower
14:37:22smkand would depend on the track
14:37:27pamaurysideral: you just mount the device and unmount and it gets corrupted ?
14:37:57sideralright. but correction: it appears corrupted to fsck.vfat, it isn't actually corrupted
14:38:25pamauryhum, corrupted in which way ?
14:38:26sideralunplugging / replugging often makes the problem go away
14:39:16sideralexactly as described in that tracker item: fsck.vfat complains about circular cluster chains because some FAT bytes get corrupted on their way to the host
14:40:52 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
14:42:56 Quit MethoS- (Read error: Connection reset by peer)
14:43:07sideralpamaury: This is the relevant description:
14:43:32smkJdGordon| : am i doing it right?
14:44:51JdGordon|i have no idea... doesnt really sound right but i havnt looked at that code.. ever
14:45:00 Quit DerPapst (Quit: Leaving.)
14:45:13JdGordon|the problem isnt so much how much it allocs, its how often it does and that will almost certainly depend on the track
14:46:25smkyes. most of the allocs are conditional. so whether the condition is true or not, would depend on the circumstance
14:46:42smkbut i am assuming worst case as all calls go through
14:47:18 Quit pamaury (Ping timeout: 252 seconds)
14:48:24smkthe size to be allocated depends on some variables. so the worst case allocation , i think , would be when these variables attain their respective max values. which depends on the variable type
14:49:14 Join pamaury [0] (81680b01@gateway/web/freenode/ip.
14:49:18 Quit pamaury (Changing host)
14:49:18 Join pamaury [0] (81680b01@rockbox/developer/pamaury)
14:49:22sideralpamaury: Here's an except of a hex-dump diff of a good vs a bad FAT, which should make it obvious why fsck.vfat reports a circular cluster chain:
14:51:06pamauryit's really weird for sure
14:51:27pamauryand not easy to debug
14:52:32sideralas it's always the first byte of a 4K block, it's likely some missynchronization-induced buffer corruption
14:55:50pamaurya very tortured way to check some things is to tweak usb-storage to act as a proxy: all communications are sent back to the host which emulates storage. This way, one can check if it's a usb corruption
14:56:11smkwhom can i consult for libfaad ?
14:57:36sideralpamaury: I can't think of anything else it could be, really. I have already ruled out that the SD driver reads the corrupted bytes from the SD storage.
14:58:02 Quit dfkt (Read error: Connection reset by peer)
14:58:03 Join dfkt_ [0] (dfkt@unaffiliated/dfkt)
14:58:11pamaurybut I can't see how the usb corrupts a single byte
14:58:50pamauryI agree that if the sd driver gets corrupted data and assuming the usb-storage is quite bullet proof, there isn't much space left :)
14:59:32pamaurybut only the FAT gets corrupted it seems no ?
15:00:39sideralthat's what fsck.vfat hammers on and reports. So far I have only compared good and bad FATs, so I cannot rule out that more than the FAT would be corrupted
15:02:00pamauryI'll try to get usb transfers error. I have some usb code which transfers huge amounts of data with crc checks to track such errors. Otherwise, I can somehow hook the transfers on the host side to compute crcs and logf them on usb on the device side and compare. Or finally, I can go the way I described
15:02:09sideralI don't know how the handshake between the USB driver and the USB device works, but I can conceive of scenarios where an old byte is sent due to an off-by-one gap in IRQ handshakes, for example
15:02:34pamaurydma handles everything, the driver never touches the data
15:02:44sideralwhat's the dma block size?
15:03:03pamauryAnd I can't imagine an off by one error in the cache/buffer arm flushing code
15:03:12pamauryI don't know
15:05:12sideralI at least ruled out caching problems in the SD driver (I forced use of a code path that used uncached memory rather than cache-flush instructions), which did not change the behavior, so I'd agree the cache flush appears to work correctly
15:06:58sideralpamaury: My offer to get you my disk image still stands. Perhaps you can reproduce the problem by running fsck.vfat on it?
15:07:50pamauryI'll see, I prefer to try alternative ways before, testing usb alone is much easier
15:10:22sideralpamaury: Great work on the Fuze+ BTW :)
15:10:35 Quit B4gder (Quit: Konversation terminated!)
15:10:54pamauryeverything is still to do I would say but yeah, that's a great step forward
15:11:14 Join evilnick_B [0] (0c140464@rockbox/staff/evilnick)
15:13:54 Join TheLemonMan [0] (
15:20:03 Quit [Saint] (Quit: I'm only going to Heaven if it feels like Hell, I'm only going to Heaven if it tastes like caramel...)
15:20:18Hendrik_deHello Rockboxers. Compliments on your great work. My question:
15:20:18Hendrik_deIs someone working (or has someone worked) on a port for Medion MP3 players?
15:20:55 Join MethoS- [0] (~clemens@
15:22:16 Join [Saint] [0] (
15:22:26gevaertsI haven't heard of any effort there
15:22:41gevaertsBut I also can imagine that there's not a single medion player
15:23:08Hendrik_deYes, there are several models which no doubt have different chips.
15:23:33Hendrik_dePersonally, I would be most interested in the Medion MD-83300 family.
15:24:34gevaertsI can't find any mention of it on our wiki or forums
15:26:13pamaurythe bare minimum would be to have an idea of what is inside
15:27:14Hendrik_deHmm, maybe I could open my box tonight and take some pictures, I think it is held closed with a few phillips screws.
15:28:44*pamaury never heard of medion mp3 players, I'm not sure any developper has one of those
15:31:01Hendrik_deMaybe they are only distributed in Germany.
15:31:48Hendrik_deWhat would I have to look for when opening? The labels on the integrated circuits, or is there some other info to be gained?
15:32:14TheLemonManhaving a firmware update would be useful too
15:32:28pamauryyeah, the labels on the chips
15:32:53pamaurysome posts on the forum suggests some medion lines were PP502) based
15:36:52Hendrik_de@pamaury: PP-5020? This is the same chip as in the iPods, right?
15:37:32gevaertsHendrik_de: do you have a directory named "System" on it?
15:37:37pamaurysome iPods yes
15:38:10gevaerts(assuming it's not mtp-only...)
15:38:14Hendrik_deI'm sorry I don't have the device here right now, but I think there is no such directory on the player.
15:39:15gevaertsIf there is, it's probably hidden
15:39:48gevaertsAnyway, if it has a system directory, with in there a file with .mi4 extension, chances are it's a "traditional" PP502x player
15:40:45Hendrik_deHidden? With the FAT "hidden" attribute? Then I should be able to see it after mounting it with linux. I'll give it a try tonight.
15:42:55Hendrik_deBy the way, I have a picture (from the outside, at least) and some description (sorry, German language).
16:01:17 Join benedikt93 [0] (~benedikt9@unaffiliated/benedikt93)
16:02:10 Join DerPapst [0] (
16:04:34tguinotIs the gsoc channel reserved to mentors?
16:04:43tguinotor for general discussion about projects?
16:05:00 Quit TheLemonMan (Quit: Destructor called)
16:06:07***Saving seen data "./dancer.seen"
16:07:02 Quit jhMikeS (Ping timeout: 248 seconds)
16:08:28 Part LinusN
16:08:36 Join sinless [0] (
16:08:37 Quit antil33t (Read error: Connection reset by peer)
16:08:47 Join antil33t [0] (
16:09:15pamauryour gsoc channel is reserved to developpers
16:10:08 Join n1s [0] (~quassel@rockbox/developer/n1s)
16:10:33 Quit DerPapst (Read error: Connection reset by peer)
16:10:34sinlesshello,RB developpers,It seems that IPOD remote do not work with ipod 4g and photo,although fm radio shows in debug menu
16:11:09 Join DerPapst [0] (
16:11:33sinlessand DataBase gets hang if RAM store is open
16:12:26sinlessAND RAM database seems not to work with all ipods
16:12:32 Quit sinless (Client Quit)
16:12:58 Join sinless [0] (
16:13:41 Part Hendrik_de
16:13:56sinlessRAM DataBase won't work with all my ipods..
16:15:09smksaratoga: n1s redirected me to you, for libfaad-malloc questions. can i ask them now?
16:16:06sideralsinless: Re hang during DB update: Which version of Rockbox are you using?
16:16:14n1ssmk did you see my comment after you left? a look at libm4a/demux.c could be interesting as that mallocs a bit too
16:16:24n1sand i think the real problem is there
16:16:56sinlessthe new release build
16:17:14sinlessin fact,RAM didn
16:17:23sinlessdidn't work for a long time
16:17:27smkn1s sure will take a look at that.
16:18:33sinlesssideral:once open RAM,ipod gen1~5 will freeze,and ipod classic shows a dada abort
16:19:59smkn1s i am a bit unsure about my method though. JdGordon| mentioned that my worst case analysis might be wrong.
16:20:05sideralsinless: what's the exact version number? I'm asking because 3.8 had a problem with DMA on PP-based devices
16:20:05 Quit antil33t (Read error: Connection reset by peer)
16:20:14 Join antil33t [0] (
16:20:34sideralshould be fixed in 3.8.1 though
16:20:58sinlesssideral:R29688,7 iPods,the same version
16:21:10 Quit JdGordon| (Ping timeout: 252 seconds)
16:22:15AlexPsinless: That's not new, it is 22 revisions out of date :) It should be new enough for this though
16:22:33AlexPAnd yes, database to RAM does work with ipods
16:22:50AlexPSo either you have hit a bug, or you have a different issue
16:23:00sideralsinless: it's likely that the metadata parser chokes on one of your files. enable metadata debugging in the debug menu and look at the metadata access log after the hang
16:23:30sinlessOK,I'm going to test
16:24:19 Quit Zarggg_ (Quit: Zarggg_)
16:24:28n1ssmk: how do you find the worst case?
16:25:12sinlessand,I remember that about one year ago,ipod radio remote can work with ipod 4g/mini/photo with remote control,but now,although FM radio shows in debug menu,neither control nor radio works
16:26:02smki traced back the functions that call faad_malloc. The memory allocated depends on some variables. directly proportional actually. so worst case would be when these variables attain their maximum
16:26:21smkso for a parameter of type uint8_t , the max value is 255.
16:26:38 Quit DerPapst (Ping timeout: 240 seconds)
16:26:39sinlesssideral:metalog open,now freeze at searching....
16:27:55 Quit bieber_ (Remote host closed the connection)
16:28:25smkn1s: for example. in one of the allocations, the size is a function of variable 'bytes'. so max size would be allocated when the value of 'bytes' is max.
16:28:41sideralnow look at the metadata log file. the last entry has the file that was accessed last
16:29:23sinlessUnluckily,there is no log file in the device
16:30:02 Join DerPapst [0] (~Alexander@
16:30:05n1ssmk: so do you always derive the max value from the type?
16:30:39sinlessonly ipod classic can display a data abort
16:32:11smkn1s: yeah the max value a variable can safely attain,yes i derive from the type. the actual max would depend on the context of the call.
16:32:20sideralsinless: the file is called metadata.log in the root directory of the device. Strange if it doesn't exist.
16:33:41sideralIf you can reproduce the data abort with the latest release build from the website (3.8.1), please post a bug report with the full abort message (including the address) to the bug tracker
16:34:01 Quit sinless (Quit: CGI:IRC)
16:34:11 Join sinless [0] (
16:34:32sinlesssideral:yes,I know,once I create it by you think i should open metalog before or after ram open?
16:35:02sideralI don't know what you mean by "ram open"
16:35:19sinlessopen ram database
16:36:02sideralHow do you "open ram database"? I thought you were referring to a database refresh or init
16:37:21sinlesssettings−−gengral settings-database-ad to RAM
16:37:47sinlessafter load to ram open,database will hang with all ipods
16:37:53 Join toffe82 [0] (
16:38:51n1ssmk: so if the malloc size is calculated from an int you decide the worst case is a 2GB allocation?
16:39:03sideralAh, so enable the option, and then you can't browse the database any more?
16:39:46sideralI thought you'd have to reboot before setting the option takes effect, but I may be wrong
16:41:27sinlessYes,with old build,RB will show a reboot sign,now it didn't show,i reboot and enter DB,ipod gen1~5freeze,and classic show a data abort
16:42:04 Quit tmzt (Read error: Connection reset by peer)
16:42:24sideralCould you try regenerating the database? (Initialize Now)
16:42:32 Join tmzt [0] (
16:42:45 Quit pamaury (Quit: Page closed)
16:43:01sinlessRAM cache is really need for a HDD player...initialize not work,in fact all ipods share the same problem...
16:43:32AlexPNo they don't
16:43:40AlexPAs plenty of people use it without a problem
16:44:06AlexPThere may be a recent bug or something though
16:44:13sideralHow does "Database options->Initialize Now" fail?
16:44:24sinlessI figured out it just accident
16:44:34sinlessthe system language
16:44:52sinlesswhen set to English,RAM DB works
16:45:03AlexPNow that is odd
16:45:09Zagorhaha, nice bug
16:45:37sideralmaybe you forgot to install an up-to-date language file?
16:45:41sinlessbut it used to work with my language
16:46:11sideraldid you make and install the complete zip?
16:46:40AlexPCould you try with a build from
16:46:50smkn1s: yeah , doing that would be the libfaad code, it's all 8 bit or 16 bit, so things were under control..but in general,yes, making such an assumption would be wrong
16:47:21AlexPsinless: I'm confused, are you using a build from, or you are using your own build?
16:47:37sinlessI use builds from only,and,for 5 years
16:47:57AlexPWhen did it stop working?
16:48:22sinlessopen ram cache-reboot-database-artist-freeze
16:48:31AlexPyes I know
16:48:44sinlessipod gen1~5,mini,nano freeze,ipod classic data abort
16:48:44AlexPWhat version of Rockbox did it stop working with?
16:48:49AlexPHow long ago?
16:49:13sinlessi don't remember...sorry
16:49:23n1ssinless: what is your language that broke it?
16:49:41n1strad or simplified?
16:49:54AlexPdoes it work with trad?
16:50:20 Quit sinless (Quit: CGI:IRC)
16:50:28smkn1s: how do i go about it then?. i think i should find the range of values the variable would attain in the program..
16:50:36 Join sinless [0] (
16:50:58sinlesswait..i'm trying
16:51:17sideralperhaps there's an assumption in the code that "<All tracks>" and "<Random>" have translations, and the simplified Chinese translation miss them?
16:51:37sinlesstrad works
16:51:46AlexPhah, nice :)
16:51:54n1ssmk: well, figure out where the value comes from, i guess they all come from the file so find what the max allowed value is and if nothing checks that it is in the allowed range, add a check, all assuming there is a spec for aac
16:51:55 Quit sinless (Client Quit)
16:51:56AlexPSo now we need to see what the difference is :)
16:52:17 Join sinless [0] (
16:52:38n1ssmk: otherwise at least limit it to the size of the field in the file that it comes from
16:52:41 Quit sinless (Client Quit)
16:52:54 Join sinless [0] (~73c4812b@
16:53:01sinlesstrad works
16:53:18n1salso ffmpeg might be interesting to look at as they usually don't do dynamically sized allocations
16:53:27AlexPsinless: Thanks, an odd bug
16:53:40sideralsinless: It would be of great help if you could do a binary search over the last few hunded revisions (binary bisect -> try 8 or 9 revisions to nail it down) to see which revision broke it.
16:53:42AlexPsinless: simp chinese is supposedly 100% up to date
16:53:53AlexPer, sideral sorry
16:54:25sinlessI just update my ipods from the build one year ago...
16:54:53sinlessEnn...where can i download the old build?
16:55:00sideralsinless: Thanks for reporting and helping to debug this!
16:55:07n1sAlexP: i'm looking to see if there is any buggy printf formatting in that lang
16:55:39sinlessand does any body interested with remote control?
16:55:46 Quit Rob2223 (Ping timeout: 264 seconds)
16:55:52sinlessafter the update,ipod remote control not work
16:56:13AlexPHave you tried turning on accessory power supply?
16:56:40sinlessI'm a old rockbox user...
16:56:44sideralnot sure where very old builds can be found...
16:56:54AlexPsideral: they can't (usually)
16:57:02AlexPWe have dailies for a month IIRC
16:57:39sideralah, too bad. we do have an archive for old releases, though, IIRC
16:58:00sinlessipod Fm radio remote can work with ipod 4g/mini/photo with control key,the new build now work anymore
16:58:38 Join Rob2222 [0] (
16:58:40AlexPsideral: on
16:58:46sinlessnow,there is fm radio in the debug menu of 4g/photo but remote key can't work
16:58:55smkn1s: in the case of adding a check, what is the criteria? i mean, how should i assume that a particular variable should lie within a defined boundary?
16:59:13n1ssmk: is there a spec
16:59:33sinlessI will try the builds...
16:59:44sinlessgive me half an hours
17:00:57n1sfound one buggy string in the simplified chinese but that's in the equalizer screen
17:01:45sinlessno one work with remote control?..
17:02:13sideralsinless: if you can't find help here, please file a bug report
17:02:49sinlessin the front page?
17:03:28n1sis simplified chinese ever voiced?
17:04:04smkn1s: no...
17:04:37AlexPwhy all the ...s?
17:05:17sinlessoh,ipod video's remote works,only ipod video
17:05:25 Quit avacore (Ping timeout: 246 seconds)
17:07:09CIA-87New commit by 03nls (r29711): Fix missing printfstyle formatting in simplified Chinese.
17:07:11 Join avacore [0] (
17:08:31sinlessAlexP:I wonder if you can help make a custom build,i don't program...
17:08:50AlexPsinless: Custom in what way?
17:09:13sinlessfall back ipod classic's hdd driver..
17:09:47AlexPI don't understand
17:10:26n1ssmk: ah, then it's kind of hard to know but i'd look at ffmpeg and at how many bits are actually read
17:10:33sinlessthe new HDD driver support ce-ata hdd,but for my classic with a SSD,the disk spinup time increased from 40ms to 2780ms....
17:11:09CIA-87r29711 build result: All green
17:14:18sinless3.7.1,also freeze
17:14:33smkn1s: yeah. being new, i am yet to figure out how libfaad fits in the big picture. as in what interaction does it have with the rest of the code. sure i'll look at ffmpeg and libm4a as you say.
17:16:10 Join sinlessx [0] (
17:16:25AlexPsinless: I don't know about that I'm afraid
17:17:08smkn1s: finding the max by the variable type was the shortest way out :P. i will think more on it, and see if i can find something. will get back to you. or anyone who can help.
17:17:15sinlessxipod photo with 3.7.1 also freeze,does ipod classic help?it shows a data abort with error code
17:19:04 Join Leif [0] (
17:19:40 Quit sinless (Quit: CGI:IRC (Ping timeout))
17:19:55smkn1s: will be off now. if you have any advice, post here. will check the logs later. thanks :)
17:19:58sinlessxwith 3.3,RAM DB works
17:20:08 Quit smk (Quit: Leaving)
17:21:31 Quit sideral (Quit: Leaving.)
17:24:25 Quit antil33t (Read error: Connection reset by peer)
17:24:41 Join antil33t [0] (antil33t@
17:27:21 Quit ChickeNES (Quit: Computer has gone to sleep.)
17:28:29 Part Zagor
17:31:35 Quit Leif (Read error: Connection reset by peer)
17:34:52 Quit robin0800 (Quit: Leaving)
17:35:19 Join Leif [0] (
17:40:22 Join u42p [0] (
17:41:50 Join Rob2223 [0] (
17:44:22 Quit Rob2222 (Ping timeout: 264 seconds)
17:50:17 Quit benedikt93 (Quit: Welcome to the Internet, where the men are men, the women are men and the children are agents of the FBI)
17:56:02 Quit sinlessx (Quit: CGI:IRC)
17:58:39 Nick dfkt_ is now known as dfkt (dfkt@unaffiliated/dfkt)
17:58:47saratogasmk: i'm back now if you have questions
18:00:09 Quit petur (Quit: *plop*)
18:00:35 Join Xerion [0] (
18:01:35 Join pamaury [0] (
18:01:35 Quit pamaury (Changing host)
18:01:35 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
18:02:53 Join domonoky [0] (~Domonoky@rockbox/developer/domonoky)
18:03:30 Join komputes [0] (~komputes@ubuntu/member/komputes)
18:06:10***Saving seen data "./dancer.seen"
18:08:28 Quit DerPapst (Quit: Leaving.)
18:09:20 Quit evilnick_B (Ping timeout: 251 seconds)
18:16:09 Join Rob2222 [0] (
18:17:22 Join evilnick_B [0] (0c140464@rockbox/staff/evilnick)
18:18:14 Quit Rob2223 (Ping timeout: 248 seconds)
18:18:34 Quit slooopy (Ping timeout: 246 seconds)
18:26:18 Quit saratoga (Quit: Page closed)
18:26:30 Join saratoga [0] (9803c6dd@gateway/web/freenode/ip.
18:27:52 Join Rob2223 [0] (
18:29:56 Quit Rob2222 (Ping timeout: 258 seconds)
18:32:42 Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier.
18:34:50 Quit saratoga (Changing host)
18:34:50 Join saratoga [0] (9803c6dd@rockbox/developer/saratoga)
18:37:36 Quit Leif (Read error: Operation timed out)
18:38:43 Quit krazykit (Quit: awe yeeeeeee)
18:47:12 Join petur [0] (~petur@rockbox/developer/petur)
18:50:44 Join slooopy [0] (
18:57:17 Quit swilde (Quit: ERC Version 5.3 (IRC client for Emacs))
18:59:18 Join DerPapst [0] (
19:01:47 Quit MethoS- (Read error: Operation timed out)
19:02:03 Join MethoS- [0] (~clemens@
19:03:18 Join ChickeNES [0] (~ChickeNES@
19:03:27 Quit bluefoxx_ (Read error: Connection reset by peer)
19:03:53 Join bluefoxx_ [0] (
19:08:56 Join t0rc [0] (~t0rc@unaffiliated/t0rc/x-5233201)
19:11:01 Join bertrik [0] (~bertrik@rockbox/developer/bertrik)
19:13:52 Join sideral [0] (~sideral@
19:13:52 Quit sideral (Changing host)
19:13:52 Join sideral [0] (~sideral@rockbox/developer/sideral)
19:15:20bluebroth3randroid code should follow the common Rockbox coding guidelines, right?
19:16:29bertrikI'd like to think so
19:16:38bluebroth3rgood. Me too :)
19:16:55*bluebroth3r goes killing some tabs
19:17:04 Quit sideral (Remote host closed the connection)
19:17:33 Join sideral [0] (~sideral@
19:17:33 Quit sideral (Changing host)
19:17:33 Join sideral [0] (~sideral@rockbox/developer/sideral)
19:21:13 Join Horscht [0] (
19:21:13 Quit Horscht (Changing host)
19:21:13 Join Horscht [0] (~Horscht@xbmc/user/horscht)
19:22:54CIA-87New commit by 03bluebrother (r29712): Fix some whitespace errors.
19:26:49CIA-87r29712 build result: All green
19:27:19 Quit sideral (Remote host closed the connection)
19:28:07 Join sideral [0] (~sideral@rockbox/developer/sideral)
19:29:37 Quit t0rc (Quit: WeeChat 0.3.4)
19:30:02bluebroth3rare there Android devices without sdcard but large internal memory around?
19:30:27TorneDepends exactly what you mean
19:30:46Tornethe nexus s has a 1GB data partition and then a 15GB non-sdcard-but-still-FAT partition used for UMS
19:31:05bluebroth3rcan I assume /sdcard to be always present?
19:31:15Torneer, no, it's an sd card
19:31:19Tornethe slot might be empty
19:31:52bluebroth3rwell, the thing is that Rockbox wastes a lot of space of the internal memory.
19:32:17bluebroth3rand my assumption is that it is feasible to assume an SD card to be always present (since you need to store your music somewhere)
19:32:52bluebroth3rmoving everything but rocks and codecs to /sdcard/rockbox when extracting gains ~5MiB on my device.
19:33:26bluebroth3rand after extracting is still lying around. Is it possible to delete that after extraction automatically? It's also almost 3MiB for me
19:33:53Tornei don't think it's a problem to assume that there's an external storage device
19:34:08Tornebecause as you said you need somewhere for your music.
19:34:33bluebroth3rhence the question if there are Android devices that can be used as media player without SD card :)
19:34:43TorneRight, but that's why i qualified
19:34:49TorneThere are devices without an SD card
19:34:51Torneat all
19:34:58Tornebut they still have a large UMS-accessible FAT volume
19:35:04Tornemounted the same
19:35:18bluebroth3rso /sdcard is a safe bet.
19:35:30Tornei don't think you're supposed to hardcode any paths, though :)
19:35:49bluebroth3rRockboxService.class already does :)
19:36:01Tornethat doesn't mean you should hardcode any more
19:36:35bluebroth3ranyway, I was just looking into a proof of concept so hardcoded paths are ok for now. Not that I would promote hardcoded paths :)
19:36:47amiconnIs this possible at all for android before 2.2?
19:37:34 Quit sideral (Remote host closed the connection)
19:38:18 Join sideral [0] (~sideral@
19:38:18 Quit sideral (Changing host)
19:38:18 Join sideral [0] (~sideral@rockbox/developer/sideral)
19:38:33Torneamiconn: is what possible?
19:38:59Torneisn't it only "data files" being discussed here?
19:39:43Tornewhich can go where you feel like, unrelated to supporting apps on sd
19:43:35 Join Buschel [0] (
19:48:57 Quit TheSeven (Ping timeout: 260 seconds)
19:52:23 Quit JesusChrysler (Quit: JesusChrysler)
19:53:10Buschelin which time zone is smk?
19:53:31 Part u42p ("Leaving")
19:54:40 Quit japc (Ping timeout: 260 seconds)
19:56:42saratogaBuschel: hes in India IIRC
19:57:07Buschel+3.5h from here then, bad.
19:57:38Buschelwill be hard to find overlapping time to talk to him in realtime
19:58:13saratogai'm not sure what he was interested in libfaac for, I think he applied for the bufferlib project
19:58:55Buschelsmk: (for the logs) you should check FS #8923 regarding the aac memory issues
19:59:27gevaertssaratoga: it's on MrSomeonesTodoList
19:59:38saratogaah ok
20:00:10saratogaIMO libfaad's memory use isn't too bad, although the mp4 parser is another story
20:03:22saratogawhat the hell rockchip makes a 1.2GHz A8 SOC
20:04:01Buschelwell, some files do not play w/o reading this stuff. at least the playback stops at some point for several files. so, it is a libfaad issue −− or an issue of our integration of it
20:05:30 Join JesusChrysler [0] (
20:06:13***Saving seen data "./dancer.seen"
20:07:02saratogaits not just the parser giving the decoder bad data?
20:10:37Buschelsee r11187
20:11:32Buschelif you remove the call to get_sample_offset() several of my files do not play anymore
20:11:52 Quit stoffel (Remote host closed the connection)
20:11:58Buschel(in apps/aac.c)
20:12:40saratogai don't really understand mp4, but is that to check if the adjacent frames have a gap between them?
20:15:20Buschelyes, something like this. the next frames headers position is off by a few bytes. the decoder does not handle this and aborts with error.
20:16:23BuschelI am also not too much into mp4. so, I do not know what the best and correct solution would be. fact is, that the current solution makes it hard to shrink the chunk-data.
20:16:33saratogadid you ever find a good explanation of the mp4 format?
20:17:28BuschelI never searched for it ;)
20:17:29 Join TheLemonMan [0] (
20:17:43saratogai've found books talking about parsing mp4 files, but never a good overview of the whole format
20:18:05saratogaplus it appears to be kind of stupidly designed, which makes it even harder
20:18:45 Join Keripo [0] (
20:20:24 Quit Keripo (Read error: Connection reset by peer)
20:21:15 Quit ChickeNES (Quit: Computer has gone to sleep.)
20:25:46 Join mudd1 [0] (
20:26:31Buschelif I see this right the decoder directly jumps to reading each frame header when calling NeAACDecDecode(). so, if the current position is not right the decoder aborts. isn't there any mp4 header sync word defined?
20:28:15TheLemonManthe mp4 format is one of the least documented
20:29:08wodzgah, I screwed up something with code loader for rockchip and didn't bothered to make backups :-/
20:30:29 Join ChickeNES [0] (~ChickeNES@
20:31:34 Quit mudd1 (Ping timeout: 240 seconds)
20:32:17 Join mudd1 [0] (
20:32:47saratogaIIRC ADTS has one
20:33:03saratogasince iirc its almost the same as mp3
20:33:26 Quit bertrik (Quit: :tiuQ)
20:33:40saratogaah yeah its 12 '1' bits
20:36:44 Quit mudd1 (Ping timeout: 252 seconds)
20:36:56 Join kugel [0] (~kugel@rockbox/developer/kugel)
20:36:57 Join mudd1 [0] (
20:39:42 Quit kugel_ (Ping timeout: 260 seconds)
20:46:54 Quit kugel (Ping timeout: 240 seconds)
20:49:27 Join kugel [0] (~kugel@rockbox/developer/kugel)
20:53:25 Quit kevku (Ping timeout: 248 seconds)
20:58:43Buscheladts is not relevant for the errorous file. let's check what's next...
20:59:45Buschelerror is returned from raw_data_block()
21:00:39saratogaoh mp4 streams don't have separate adts headers?
21:01:05Buscheladts is not used for all of my m4a's it seems...
21:04:55 Join kugel_ [0] (~kugel@rockbox/developer/kugel)
21:05:14 Join bertrik [0] (
21:07:36 Quit kugel (Ping timeout: 246 seconds)
21:09:47 Quit kugel_ (Ping timeout: 252 seconds)
21:09:52 Join kugel [0] (~kugel@rockbox/developer/kugel)
21:14:21 Join kevku [0] (~kevku@2001:470:28:773:babe:feed:dead:bee)
21:15:15 Join pepsi [0] (~pepsi@unaffiliated/jbutera)
21:17:26pepsidoes the mini2440 port support the 1GB nand version?
21:23:51bluebroth3rI don't see a reason why it shouldn
21:24:05 Join kugel_ [0] (
21:24:10 Quit kugel_ (Changing host)
21:24:10 Join kugel_ [0] (~kugel@rockbox/developer/kugel)
21:26:09*bluebroth3r now has an Ipod dock that doesn't work with Rockbox
21:26:36pepsithe 256M and 1G variants use a different block size or something like that
21:26:38 Quit [Saint] (Ping timeout: 240 seconds)
21:27:02 Quit kugel (Ping timeout: 240 seconds)
21:32:58 Join [Saint] [0] (
21:39:15bertrikbluebroth3r, good, something to work on! ;P
21:40:07bluebroth3rbertrik: yeps. I'm considering to go buying some logic analyzer board
21:40:22bluebroth3rbut ... there's always this stupid time thingy :(
21:41:02bertrikyou can use a sound card as a oscilloscope-alternative, at least for slow signals
21:41:59bluebroth3rI've seen the DSO nano in action. Quite nice, and also rather cheap
21:44:21wodzbluebroth3r: and parallel port as logic analyzer alternative for slow signals
21:44:23 Join robin0800 [0] (
21:44:49bluebroth3rhmm ... no parallel port on this box :)
21:45:20wodzyeh it become rare unfortunately.
21:47:13 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
21:47:18saratogaoh yeah, got my headphone to BNC adapter today, so I guess I can try and measure the Clipv2 background noise
21:47:23bertrikbut I guess it's a serial signal, the only thing you need to figure out then, is the bitrate
21:52:30 Quit TheSeven (Ping timeout: 276 seconds)
21:55:45 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
21:58:10 Join Darkknight512 [0] (
21:59:26 Quit ChickeNES (Quit: Computer has gone to sleep.)
22:00:26*bluebroth3r considers getting the Open Workbench Logic Sniffer
22:00:32bluebroth3ranyone knows that device?
22:04:25bertrikTheSeven, any more luck yet with the clip+ boot rom?
22:06:17***Saving seen data "./dancer.seen"
22:11:28 Quit TheLemonMan (Quit: Destructor called)
22:13:03 Join silbo [0] (~quassel@
22:14:36 Quit mudd1 (Ping timeout: 276 seconds)
22:17:11bertriksaratoga, I guess you've put some thought into a better resampler
22:17:33saratogabertrik: just a little
22:17:38bertrikCould we do (for example) a poly-phase filter for that?
22:17:50saratogai did some digging but couldn't come up with much about how to do better then linear at reasonable CPU use
22:18:01saratogaprobably somekind of spline or other polynomial filter
22:18:33bertrikHow much CPU can we expend on a resampler?
22:18:57saratogaquite a bit i think
22:19:03saratogacompared to linear
22:19:19bertrikI have no idea how heavy a typical codec like ogg or mp3 is in comparison (like number of multiplies per sample)
22:19:42saratogabest to think about MHz needed for real time
22:19:48saratogalinear is extremely low
22:20:02 Part bertrik ("Leaving")
22:20:24 Join bertrik [0] (
22:21:24saratogathing is i have no idea how well FIR or IIR resamplers work at relatively low numbers of taps compared to polynomial filters
22:21:35saratogai think they're usually used with very large numbers of taps
22:22:26bertrikAs far as I understand polyphase for 48 kHz to 44.1 kHz it's basically a FIR acting as a low-pass filter, but the coefficients change because the input and output are continually shifting phase against each other
22:25:49TheSevenbertrik: I made an IDB of it and did some cleanup
22:25:55TheSevennot much actual reversing yet
22:26:12 Join mudd1 [0] (
22:29:56saratogabertrik: yes thats generally the highest quality way to do it, but for limited numbers of taps I'm not sure how well it works
22:30:20saratogaperhaps I should ask on HA
22:33:02saratogaFWIW I think for 48khz swapping the playback clock is a much better approach
22:33:12saratogathe sampling rates are so close its probably not even that hard . . .
22:34:42bertrikyes, possibly. The eq will be off by a bit, but adjusting the eq is probably easier than resampling.
22:35:49saratogasince the difference is just 8%, we can probably just change the GUI and leave the EQ alone
22:36:32saratogaso that when you put in 440Hz at 48k, it just secretly does 440*441/480
22:39:46 Join DrDnar1 [0] (
22:42:05tguinotwhat is the best method (from the mechanic point of view) to sniff dock communications?
22:42:10 Quit DrDnar (Ping timeout: 258 seconds)
22:45:40wodzdissasemble the dock and connect probes to the dock connector from inside I would say
22:46:28wodzthe other strategy is to build custom patchcord if both the plug and socket are available
22:46:44 Join DrDnar [0] (
22:48:35 Quit DrDnar (Read error: Connection reset by peer)
22:49:04 Quit DrDnar1 (Ping timeout: 258 seconds)
22:51:23 Join skapazzo [0] (~skapazzo@
22:51:36saratogathis also looks interesting:
22:51:50 Quit wodz (Read error: Operation timed out)
22:54:55 Join wodz [0] (
22:56:08 Quit kevku (Quit: KVIrc 4.0.4 Insomnia
22:57:59saratogathe latter paper actually have some very interesting filter designs that look quite efficient
22:58:20bertrikhm it doesn't have to be perfect IMO, just a lot better than linear
23:00:12saratogathat paper has a table of a a couple dozen interpolators showing their SNR vs. number of multiplies
23:00:13saratogaand c code for each
23:04:05 Quit wodz (Quit: Leaving)
23:04:54saratogaheh as expected linear is quite awful
23:05:06 Join gbl08ma_ [0] (
23:09:13 Nick Rondom_ is now known as Rondom (
23:09:28 Quit Buschel (Quit: ChatZilla [Firefox 3.6.16/20110319135224])
23:12:05 Join DrDnar [0] (
23:12:56gbl08ma_hello everyone, is it just me or SVN and forums are having less activity those days (or weeks?)?
23:13:03gbl08ma_not complaining :)
23:13:29sideraleveryone's busy hacking :)
23:13:51AlexPforums aren't much indication of development
23:14:05AlexPSVN has been slightly slower, yes
23:14:14AlexPBut these things come and go :)
23:14:24gbl08ma_I know
23:15:58gbl08ma_by the way, I have fade in on stop/pause option enabled, but even when not using line out, I can't hear any fade (no audible difference between having this setting on or off)
23:19:50gbl08ma_it's been this way since around week ago (updating every day). I don't know the version number because I only noticed some updates after and the SVN logs don't seem to include any changes for that option.
23:20:16gevaertsAre you sure it's not there? It's been shortened a lot a while ago
23:21:12gbl08ma_Yep, I remember something about it changing to 300ms, but that was long ago and I think I updated after that, and the fade was still audible.
23:21:37gbl08ma_Anyways, where in the code can I change that value so I can play with it?
23:21:40AlexPr29558, 10/03/2011
23:21:51 Quit domonoky (Read error: Connection reset by peer)
23:22:34saratogai doubt fade is going to work over line out
23:22:42saratogathe volume on that should be fixed
23:23:23 Join boghog [0] (~aphax@2001:980:34c7:0:1e6f:65ff:fe86:1e03)
23:23:36gbl08ma_there's a patch for that on the tracker
23:24:22gbl08ma_the volume should be fixed, but the fades are something independent from the system volume (well, at least visually the value doesn't change while fading), so why not?
23:24:46saratogalooking at the revision AlexP posted, fades are implemented by changing the system volume
23:25:16gbl08ma_what annoys me more in the line out is not the lack of the fade, but the time it takes to silence after pressing pause
23:25:50gbl08ma_that time is now reduced as the fade is quicker, so it doesn't annoy me so much. However, now I miss the lack of the fade on the hearphones
23:25:59gbl08ma_oops not meant to press enter
23:26:39gbl08ma_now I miss the fade on the hearphones, that's what I wanted to have written before pressing enter :)
23:27:29gbl08ma_it seems I really must choose between having fade on the headphones or not having a delay when on lineout
23:28:56gbl08ma_indeed, after looking at the code, I understand why line out only silences after some time: audio_pause is only called after the while loop
23:36:03gbl08ma_Now about other subject, I was looking at the "Mr. Someone's formal To Do list" and saw that on the list of to-do things, under the Infrastructure section, it talks about adding a blog-style "news" section to the website...
23:37:02 Join jhMikeS [0] (
23:37:03 Quit jhMikeS (Changing host)
23:37:03 Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS)
23:37:03gbl08ma_Isn't this already done? (by Mr. Someone or not)
23:37:54gbl08ma_So, what is that "Project News" section on the main page?
23:38:15saratogaits an HTML table that the web server maintainer can update
23:38:35gbl08ma_And you mean a complete blog?
23:38:48 Join Zagor [0] (~bjst@rockbox/developer/Zagor)
23:39:02gbl08ma_Where developers can post entire blog entries? (I don't think they will have time to do such things...)
23:40:07saratogawhy are you telling us what we have time to do ;)
23:41:21AlexPI don't think anyone is suggesting that we will be blogging about random stuff
23:41:30gbl08ma_because you're always complaining about lack of time, "rockbox's not a product" (and it isn't), RB is developed in developers' free time, etc. blah blah... I don't mean that you're not right when you say you don't have time, It's just that if you complain about lack of time I don't see you writing blog posts ;)
23:41:47AlexPBut for instance if someone introduces a feature, then they can write a little blurb to describe it for instance
23:42:11gbl08ma_obviously I'm not talking about random stuff like "today I've eaten..." :D
23:42:18AlexPAnyway, surely that is for the devs to decide?
23:42:30gbl08ma_Yes, don't mind me
23:42:37gevaertsgbl08ma_: the point is to *reduce* spent time
23:43:19 Join mishra [0] (
23:44:05gbl08ma_So, the idea of the blog was to post important developments in the project like many other OSS projects do. I see, not everyone reads SVN logs (or actually understands them).
23:44:46AlexPWe aren't going into journalism :)
23:44:52TheSevendevelopers are always hard to convince that writing documentation reduces totally spent time
23:45:20AlexPThis isn't really documentation though
23:45:24bluebroth3rpixelma: did you also experience the audio stopping on Android?
23:45:24AlexPAnd nobody has to do it
23:45:33AlexPAnd we don't even have one anyway :)
23:46:06gbl08ma_But is nice for users that want to have a quick way to see the developments of the project.
23:46:19 Quit komputes (Quit: I haven't slept for ten days, because that would be too long.)
23:47:56gbl08ma_So, the blog infrastructure would need to be something simple that would show the title of most recent posts on the homepage, right?
23:48:37AlexPgbl08ma_: i don't know if anyone has really thought about it
23:49:40gbl08ma_It's just that going for a complex blog infraestructure is one thing, and writing a PHP script that has a simple table in a SQL DB and a simple textbox to input the blog post is another.
23:50:22gevaertsThe idea *isn't* to design and implement a new blog system
23:50:46gbl08ma_but it'd need to be something simple, right?
23:50:48 Join pepsi_ [0] (~pepsi@unaffiliated/jbutera)
23:51:19gevaertsdefine simple
23:52:23bluebroth3ra website created out of rst files?
23:53:14 Quit pepsi (Ping timeout: 240 seconds)
23:53:51gbl08ma_One text box to input the title, other to input the text, perhaps another to input the author of the post, a "Post" button to submit and a PHP script to write the post in a SQL table, then another script would retrieve the posts form that table and display them in a Rockbox-website-style page.
23:54:49gevaertsThat sounds like a NIH-driven recipe for disaster to me...
23:55:47gbl08ma_but is "simple". If it will work or not, that's another story.
23:56:18gevaertsOne thing we *need* is multiple posting accounts
23:57:07gbl08ma_perhaps, you'd better going off Wordpress... but that is not 'simple' IMO
23:57:48bluebroth3rwhy so complicated?
23:58:09gevaertsYou're the one who said it had to be "simple"
23:58:17bluebroth3ruse a rst file (or any other markup) that's in svn. Display the latest n entries. Done.

Previous day | Next day