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 2004-10-20

00:00:50 Join [IDC]Dragon [0] (
00:02:25[IDC]DragonI'm just in for a quick visit
00:03:55amiconnInteresting discussions today in the channel...
00:04:11[IDC]Dragonthe database?
00:04:18iRiverManthe iriver isn't very good at shuffling songs in playlists
00:05:16amiconn[IDC]Dragon: Yes. I wonder why all those various additional tables per relation are proposed
00:06:00amiconnThis will soon get us in a table mess, imho, especially if more different info is added.
00:06:04[IDC]DragonI've never been good at databases (my weak point)
00:06:45amiconnSequential search is slow, of course, but why not use a binary tree for search?
00:06:55[IDC]Dragonso I stay away from that discussion
00:08:49amiconnI'm not very good in that area either (and I don't see the benefit from a db in the proposed form - static on the box)
00:10:00[IDC]Dragonall I remember is that there is a redundancy/speed tradeoff in the # of tables used
00:19:43 Quit iRiverMan ("CGI:IRC (Ping timeout)")
00:20:09amiconn[IDC]Dragon: Argh! Solitaire accesses an array with out-of-bounds index!
00:21:11[IDC]Dragonyours, or before?
00:22:05amiconnTry the following: Start solitaire. From the menu, select "Help", Note down the string displayed in the first line.
00:22:22[IDC]Dragonsorry, not now
00:22:31amiconnStart the game, and immediately exit to menu. Select "Help" again. What do you see?
00:24:32midk_yyyss a key to see
00:24:40midk_y with the dotty things :)
00:26:36amiconnThe mistake itself seems obvious, but I don't know whether fixing it will break the proper behaviour of the game... have to try
00:31:42midk_why would it break the behavior of the game?
00:31:54midk_well, i'm not too sure of the fix anyways without looking at the source
00:32:22midk_the 'press a key, get the info' kind of help is nice, but if you do try to fix the bug you should also make the text disappear instead of just sitting there
00:32:38midk_ie.. on keypress, clear the screen, draw the help text and then draw the corresponding button text
00:34:20amiconnThe problem is that as soon as the game starts, the first 3 bytes of the help text get overwritten. There is an array immediately before it, char stacks[4]. The init writes from 0 to 6...
00:34:56midk_switch it to char stats[6] or 7 then?
00:35:32amiconnNo, it looks like only the init is wrong. It should write form 0 to 3 iiuc
00:43:07 Quit silencer_ (Remote closed the connection)
00:43:09 Join silencer [0] (
00:51:25[IDC]DragonPhew, I'm done with the radio.
00:52:07amiconnWhat solution do you have for the presets?
00:58:37[IDC]Dragonlong press of Right
00:58:56[IDC]Dragonand extra menu entries beforehand
00:59:10[IDC]Dragonfor what can't be on buttons
00:59:20[IDC]Dragongotta leave now
00:59:32 Quit [IDC]Dragon ()
00:59:35***Saving seen data "./dancer.seen"
01:36:26 Join napgravy [0] (
01:39:31 Quit napgravy (Client Quit)
01:52:54 Quit mecraw_ ("Trillian (")
02:03:03 Join edooo [0] (~edooo_188@
02:05:47 Quit edooo (Read error: 54 (Connection reset by peer))
02:05:58 Quit AciD (Remote closed the connection)
02:13:33 Join Bluechip [0] (
02:16:54midk_hi bc
02:33:40 Part amiconn
02:36:03 Join zargoyle [0] (
02:39:27 Quit Sebulba02 (Read error: 54 (Connection reset by peer))
02:41:16 Quit midk_ (Read error: 104 (Connection reset by peer))
02:42:59 Join midk [0] (
02:54:21 Quit edx (Read error: 110 (Connection timed out))
02:59:37***Saving seen data "./dancer.seen"
03:38:37 Quit midk (Remote closed the connection)
03:42:20 Join midk [0] (
03:44:01 Part Bluechip
03:53:05 Quit zargoyle ("sudden death")
04:19:43 Join Sebulba02 [0] (
04:33:52 Join edx [0] (
04:49:44 Quit midk ("Leaving")
04:50:47 Join midk [0] (
04:59:40***Saving seen data "./dancer.seen"
05:02:24 Join adiamas [0] (
05:14:04 Quit scott666 ("i'll be back...eventually...")
05:19:14 Join scott666 [0] (
05:46:36 Quit scott666 (Read error: 104 (Connection reset by peer))
05:52:03 Join scott666 [0] (
06:59:41***Saving seen data "./dancer.seen"
07:04:54 Quit scott666 ("i'll be back...eventually...")
07:12:56 Join LinusN [0] (
07:22:56 Join matsl [0] (
07:24:39 Quit adiamas ("Chatzilla 0.9.65 [Mozilla rv:1.7.3/20040913]")
07:49:56 Quit matsl (Remote closed the connection)
07:52:29 Quit einhirn ("Miranda IM! Smaller, Faster, Easier.")
08:18:47 Join MofuTech [0] (
08:19:47MofuTechhave you guys gotten that broken h120 you needed?
08:20:04MofuTechi think i know someone who broke his...
08:20:40MofuTechi'll ask him if he wants to give it to me, or if i should buy it from him...
08:21:39 Join Lurkski [0] (~Miranda@
08:22:56LinusNMofuTech: we have a broken one already, so we don't really need another one
08:23:06LinusNthanks anyway
08:23:42midkLinusN, drop yours? ;)
08:26:08LinusNno, we got a broken 120 on Ebay a while ago
08:26:39midkoh, where zagor101 swiped it at the last second?
08:26:52MofuTechoh ok
08:27:14midkwhat's that called?
08:27:16MofuTechhow is the development process?
08:27:22LinusNand i have a 140 PCB on it's way here as well
08:27:31LinusNand a broken remote
08:27:45LinusNwell, the threading works
08:28:04LinusNi have written most of the interrupt handling code
08:28:14LinusNworking on the tick timer interrupt
08:29:46MofuTechhow did you guys decide on starting work on the h-series?
08:31:00LinusNlots of pressure from misticriver and iriverlounge
08:31:21LinusNwe have been looking for possible target platforms for a while
08:32:00MofuTechwere your options only limited to UMS devices?
08:32:06LinusNand the iriver is a good candidate, since it is built out of off-the-shelf chips, with publicly available documentation
08:32:23MofuTechUSB mass storage class
08:32:31LinusNnot at all
08:32:46LinusNbut we prefer it
08:33:15MofuTechits good that the info on the iriver chips are available
08:34:03MofuTechthere has been a lot of work concerning libnjb and the nomad jukebox/zen/dell players
08:34:19MofuTechhave you ever considered those devices?
08:34:33LinusNnot that i know of
08:34:58LinusNi don't know what hardware they are based upon
08:35:10LinusNipod is out of the question
08:35:16LinusNso is rio karma
08:35:29MofuTechwhy is that?
08:35:40LinusNthey are based on the PortalPlayer chipset
08:35:58LinusNyou have to give away your firstborn to get the data sheets
08:38:14MofuTechi think that the iaudio m3 is based on the same hardware as the h100 series
08:38:41MofuTechim not too sure though
08:40:23 Join einhirn [0] (
08:42:09MofuTechif everything goes to plan, God willing, what will the first few releases of the firmware look like?
08:42:29LinusNthey will look like rockbox on the archos
08:42:52LinusNthey will probably play wav and mp3
08:43:04LinusNno recording
08:43:52MofuTechsounds good
08:44:13MofuTechfor a start, it has to work first
08:46:54 Join millow [0] (
08:50:26 Part millow
08:50:50 Join millow [0] (
08:53:45 Part millow
08:54:00 Join millow [0] (
08:56:48 Join Dujodu [0] (
08:57:22 Join [IDC]Dragon [0] (
08:58:00[IDC]DragonLinusN: I made a mess in radio.c
08:58:20[IDC]Dragon#ifdef hell
08:58:42 Quit millow (Client Quit)
08:59:45***Saving seen data "./dancer.seen"
09:01:24 Quit [IDC]Dragon ()
09:01:37 Join Zagor [242] (
09:02:15 Quit MofuTech ("CGI:IRC (EOF)")
09:09:13 Join AciD [0] (
09:10:37 Join kurzhaarrocker [0] (
09:16:38Zagori'm beginning to have second thoughts about the shine codec. it purposefully degrades quality to enhance performance. will we ever be happy with such an approach?
09:17:33kurzhaarrockerAre there alternatives that don't delay the development process?
09:18:44Zagorwell I'd say we simply start with recording to wav
09:19:17kurzhaarrockercool, we start with recording and not with playback :)
09:19:42Zagorah, no. shine is only for recording. for playback we use libmad, which has no problems.
09:20:01Zagorin fact libmad has higher quality than many floating-point implementations
09:20:12*Dujodu wishes he knew what you were talking about.
09:20:20kurzhaarrockerAh, I see.
09:21:03kurzhaarrockerDujodu: its about the software engine that encodes the sound to mp3 format. That's necessary on targets like iriver that don't have a dedicated chip for that.
09:21:27Dujoduthat's cool
09:22:25Dujoduand pretty amazing, that you guys are making it.
09:22:48kurzhaarrockerI don't. Zagor does.
09:23:15Dujoduyou probably do some other cool stuff though
09:23:16LinusNZagor: shine is a bare-bones mp3 encoder
09:23:42LinusNand no, we will not be happy with the quality, we will have to enhance it ourselves
09:23:51 Quit kurzhaarrocker ("Trillian (")
09:24:18Zagor...which will be a HUGE work. we need to invent a whole psychoacoustic model.
09:24:51LinusNit would of course be nice if we found another, better encoder
09:24:51dwihnoPsycho acoustics \o/
09:25:17 Join kurzhaarrocker [0] (
09:25:25LinusNrealtime encoders don't grow on trees, unfortunately
09:25:49Zagorwell the question i'm asking is: do many people really prefer to record direct to mp3 rather than to wav and then use a high-quality offline encoder?
09:26:04dwihnoWAV recording, "until something better pops up"?
09:26:05LinusNit's a matter of disk space
09:26:25Zagoris it, really?
09:26:26kurzhaarrockerAnd a matter of battery drain. Wav takes considerably more hd activity.
09:26:29LinusNa 2-hour lecture in WAV takes a few Kbytes :-)
09:26:55Zagorkurzhaarrocker: mp3 takes considerably more cpu power... :)
09:27:09dwihnoLinusN: Recording speech doesn't require 44.1khz stereo :)
09:27:14 Quit silencer (Nick collision from services.)
09:27:15 Join silencer [0] (
09:27:32kurzhaarrockerWell I suspect that cpu power is cheaper than spinning hd motors and heads.
09:28:04LinusNbut i don't think those 1.8" drives are that power hungry
09:28:07 Quit silencer (Nick collision from services.)
09:28:57kurzhaarrockerIf we can get a device that ergonomically and reliably can record > 5h to wav on batteries I'll buy it and don't need any mp3 encoding any more.
09:29:24Zagorkurzhaarrocker: what are you recording for >5h?
09:30:10*Bagder spots something weird on the web site
09:30:20kurzhaarrockerI use it to track live concerts. Its a plus to record the entire concert which may feature 6 bands and last from afternoon till midnight.
09:30:42BagderZagor: is the lower part of the menu supposed to be left aligned and the upper part right aligned?
09:30:42Zagorkurzhaarrocker: you record 5-hour concerts in the audience?
09:30:53ZagorBagder: no, that's a wiki bug. me fix.
09:31:00LinusNBagder: the wiki css seems bad
09:31:06kurzhaarrockerNo, I fix the mic somewhere, put the stuff somewhere else and rock the stage myself :)
09:31:17BagderLinusN: that's html, not css actually
09:31:58BagderZagor: the point is probably valid for students that record lectures etc
09:32:15 Join silencer [0] (
09:32:23 Nick silencer is now known as silencer_ (
09:33:14kurzhaarrockerZagor: you could only beat LinusN's 11-Minute fix because bagder didn't write a bug report.
09:33:23ZagorBagder: actually it appears to be an issue with fcpp. see Makefile for head.tmpl
09:34:59Bagderhey! an Ondio q on the forum! ;-)
09:36:12*Bagder walks off to get a cup of that black stuff
09:36:51kurzhaarrockerhardcore smokers drink the tar?
09:42:51kurzhaarrockerot: Do any of you use fancy gui cvs clients? Or do you cvs all in the shell?
09:43:34Zagorshell all the way
09:43:55Bagderemacs is my gui
09:44:07Zagorif you're on windows, i can recommend tortoisecvs though. it's the best cvs gui i've seen.
09:44:24*kurzhaarrocker considers emacs more as a shell than a gui
09:45:08kurzhaarrockertortoisecvs is cool.
09:46:23kurzhaarrockerI just wished I found out how to modify the diff parameters to create patches with it.
09:46:32kurzhaarrockerwith tortoisecvs
09:48:11Zagortry the "Make patch" menu item :)
09:49:33kurzhaarrockeryes but with that I don't know how to specify the diff -B option. I get many many honks that are only changes because of whitespace.
09:50:05kurzhaarrockersorry, it's the -b option of course.
09:50:31Zagorright. I've never actually tried making patches with a gui tool.
09:50:53BagderI always used the command line tool for that, even when using tortoise
09:53:41 Part Lurkski
09:58:59kurzhaarrockerstrange: cvs diff doesn't seem to be allowed as anonymous. But if that was true how can turtoise manage that?
09:59:19Zagordiff should be allowed
09:59:31Zagorwhat error do you get?
10:01:13kurzhaarrocker: no such repository
10:01:13kurzhaarrockercvs diff: authorization failed: server rejected access to /cvsro
10:01:13kurzhaarrocker for user anonymous
10:01:13DBUGEnqueued KICK kurzhaarrocker
10:01:13kurzhaarrockercvs diff: used empty password; try "cvs login" with a real password
10:01:53Zagoryou need to login for anonymous access too, just use username "anonymous" and no password
10:02:20Zagor :)
10:03:23Zagorjust tried anonymous diff here, works fine
10:03:53kurzhaarrockerOk I generally seem to be a cvs moron.
10:06:46kurzhaarrockerI thought once you have checke something out you didn't have to specify the -d option in cvs any more - as long as you are within your cvshome.
10:08:35Zagoryou don't
10:11:00kurzhaarrockerWhen I don't specify the -d with cvs login it correctly says (Logging in to but then there's the authorization failure again.
10:11:16kurzhaarrockerwith -d it works
10:11:48Zagoryou need to run two commands: first login, then checkout. both need -d. after that, you don't need -d.
10:12:30kurzhaarrockerI still seem to need it afterwards.
10:12:43Zagorthen something is wrong in your sandbox
10:13:09Zagortry checking out to another directory
10:15:01 Join amiconn [0] (
10:19:30amiconnI have a problem with the solitaire plugin... it is hard to adapt to Ondio. Not because of the number of keys, but because it uses a clever macro for the help text display.
10:20:05amiconnI didn't find a way to include conditional compilation *within* a macro. Is that at all possible?
10:20:16Bagdernot portably
10:20:24Zagorouch, u-g-l-y!
10:20:35Bagdermake two macros
10:20:41amiconnHmm. So that means I have to unroll all uses of that macro
10:20:57Zagoryes, please. it's a single function call
10:21:12 Join Lynx_ [0] (lynx@
10:21:17kurzhaarrockerI don't believe it! Tortoise cvs created a CVS/Root file that has CR+LF endings. command line cvs doesn't like that, it wants LF only.
10:21:46amiconnZagor: I would be no more a single call on Ondio, depending whether the button has 2 functions or not.
10:21:48Zagorkurzhaarrocker: that's what you get for fooling with guis ;)
10:21:50Bagderwwwwiiiinnndddooowss ;-)
10:22:10Zagoramiconn: aha. well all the more important to not make the code harder to read then
10:22:14amiconnkurzhaarrocker: I use command line cvs only (never looked at tortoise) within cygwin
10:22:42amiconnZagor: Okay. Then I'll go for unrolling the macro completely.
10:23:16kurzhaarrockerHere at work we _must_ use the cvs from Eclipse. Don't ask my opinion on cvs client that don't cvs!
10:25:34Zagorrigid tool rules are always good for productivity. i bet you're only allowed to use a company-specified text editor too?
10:25:45Zagorand pants
10:27:40kurzhaarrockerThe pants are up to my choice. But whenever we decided to use _that_ tool only we very soon got stuck in the restrictions that tool has and made a hell of effort to circumvent them. I prefer to rigidly specify the results and not the tools.
10:30:00Zagorclassic clueless management. they have no idea how to manage the development process, so they manage whatever they can understand: the names of the tools
10:30:42Zagori see it everywhere
10:30:55kurzhaarrockererm, its a very small company. Fortunately those who make the decissions suffer them too. :)
10:47:33 Quit Dujodu ()
10:52:25amiconnZagor: Is it okay to continue with plugin adaption (both for Ondio and for USB handling via default handler) while the feature freeze is in effect? I would like to change the plugin api when done with tha (taking out usb_screen(), therefore breaking backwards compatibility -> sort functions)
10:53:56Zagorif you are reasonably confident no problems will remain after the weekend, I think it's ok to continue
10:57:24kurzhaarrockerA design question: I believe that triggered recording _could_ be split into very little code that must reside within rockbox, and other code (most of it) that could be separated into a plugin. Would it be desirable to allow triggered recording from a plugin only?
10:58:46amiconnkurzhaarrocker: *Imho* recording is a core feature, and core features should be handled in the core.
10:59:14Zagori agree
10:59:18kurzhaarrockerIt would be slightly hazardous though as then I'd need a callback so that rockbox can pass events to the plugin
10:59:49***Saving seen data "./dancer.seen"
11:02:46amiconnZagor: I'd rather do that plugin stuff before release, because (iirc) shortly after the last release we broke api compatibility. That raised a number of "support calls" on the ml, because people wanted to flash with mixed rockbox/plugin versions, and got "incompatible version"
11:03:57 Join B4gder [0] (
11:04:19CtcpIgnored 1 channel CTCP requests in 0 seconds at the last flood
11:04:19*B4gder tries chatzilla
11:04:47Zagoramiconn: yes, i agree
11:08:04 Join pillo [0] (
11:09:36kurzhaarrocker(wished I had a reason that strong for including triggered recording)
11:09:43ZagorBagder: binary db format table added
11:10:20 Quit kurzhaarrocker (Read error: 104 (Connection reset by peer))
11:10:30Zagorwe should probably have a db version field too
11:11:08B4gderversion field is goodness
11:15:31B4gderI'll try to adjust my perl script for this format during Agnes' afternoon nap
11:17:12 Join ashridah [0] (
11:20:43 Join kurzhaarrocker [0] (
11:22:03 Join Bagder_ [0] (
11:22:13amiconnZagor, Bagder: Instead of adding all that mapping tables, wouldn't it be faster to just add indices that allow a binary-tree search?
11:22:32Zagorthat's what we do
11:22:43amiconnImho having all those mapping tables would bring us into a table mess
11:22:52 Quit B4gder ("ChatZilla 0.9.61 [Mozilla rv:1.7.3/20040910]")
11:22:54Zagorwhich mapping tables?
11:23:19amiconnI read yesterday's discussion...
11:23:43Bagder_check our zagor's updated wiki instead
11:23:47Bagder_check out
11:23:50*amiconn checks
11:26:55 Nick Zagor is now known as Zagor|lunch (
11:28:16amiconnHmm. I see a problem with "array of pointers to songs" How many entries should that array have?
11:31:30amiconnI don't understand why we need different tables at all. All song info of one mp3 file is connected anyway, so imho it might be easier to use just one table, indexed on song name, artist, and album. It would be easy to add more criteria this way (year...)
11:34:45kurzhaarrocker<- knows nothing about dbs. Would the indices be separate data structures?
11:36:02 Quit pillo (Read error: 104 (Connection reset by peer))
11:36:57amiconnYes. The index would contain the field the db table is indexed on, and a pointer into the table.
11:38:21amiconnOne index should fit completely into memory, but tthat should not be a problem. Assuming a field length of 50 chars (more than id3v1 provides), it would allow ~30,000 db entries (tracks) on the Archos (~1.5 MB)
11:38:31kurzhaarrockerWould all indices (eg index for artist, year, album...) go into the same table like data structure? Or would they be stand alone and independend?
11:39:49amiconnSeparate files would make updates easier, while all in one file might be better for assuring db consistency
11:42:07amiconnHmm, for combining the results of several indices, they either have to fit together, or we would have to use an intermediate file...
11:53:09amiconn..or don't load the complete index to ram
12:01:41 Quit Bagder_ ("Leaving")
12:10:04 Join Lynx [0] (lynx@
12:15:55 Join Lynx0 [0] (lynx@
12:23:35 Quit Lynx (Read error: 60 (Operation timed out))
12:24:06 Nick Zagor|lunch is now known as Zagor (
12:24:18Zagoramiconn: i think we are discussing different use cases.
12:24:58amiconnI don't think so
12:25:31Zagorok, then I don't understand how you mean. how do you find all songs that are in a specific album
12:26:10amiconnYou mean, from browsing the album list?
12:26:24Zagoryes, the list of albums made by a specific artist
12:26:42 Quit Lynx_ (Read error: 110 (Connection timed out))
12:26:42 Nick Lynx0 is now known as Lynx_ (lynx@
12:27:20amiconn: Album list is displayed, so the album title is known. Load the album index, search for that album (binary tree search), and you'll find all songs of that album
12:28:20Zagorthere will be more than one albums called the same thing made by different artists
12:28:46Zagoralso, how is a search faster than a lookup?
12:30:25amiconnIt's certainly not faster, but should be reasonably fast. My point is that a lookup is only possible if you use a predefined table for that relation.
12:31:03Zagorof course. why is that bad?
12:31:17amiconnImagine how many tables that would be if you extend the concept to include artist, album, song name, year, genre, play time..., and the want to allow any combination of 2 (or 3...) criteria
12:31:48Zagorimagine how many searches you get if you *don't* have any tables
12:32:08Zagorwe can't solve everything with lookup tables, but we can make the common cases much simpler and faster
12:32:51amiconnI still think searching would be relatively fast if we utilize binary search.
12:32:51Zagorit is an explicit design goal to "waste" database size if we can gain cpu time and memory use
12:33:15Zagoryou still haven't explained why we should be "reasonably fast" when we can be immediate
12:33:27amiconnMany lookup tables also increase db size, which slows down seeking
12:34:12Zagorseeking is always orders of magnitudes faster than searching
12:34:25amiconnLookup tables are not immediate either, because of the hd accesses. CPU time would be only a small fraction of that.
12:34:50Zagoryou are avoiding the question. searching uses many more hd accesses than lookup.
12:35:20amiconnNot with the index in-mem approach.
12:36:01Zagor?? how do you search an index. you need to look at the data the index indices
12:36:28Zagorand in any case, album name (for example) is not a unique data key
12:36:49amiconnYes, but only on those that match. This has to be done with lookup as well
12:37:04amiconnI never said the key has to be unique
12:37:15Zagorarghh! lookup does not search, it reads the right data entry immediately
12:37:40amiconnYou mean, each table contains all data from a song???
12:38:08Zagoryou've seen the table format suggestion
12:39:33Zagorcan we get back to the issue? why do you want to use search instead of lookup?
12:39:34amiconnYes, and there it has pointers to the rest of the song data. That means you have to load it separately -> additional hd accesses
12:39:58Zagoryes, a single access. searching requires dozens.
12:41:11amiconnNo it doesn't. You load the index, search that, and find a number of mathing pointers. Then you load that data, which is (obviously) exactly the same number of entries than lookup would yield
12:41:19 Quit Lynx_ (Read error: 104 (Connection reset by peer))
12:41:28Zagoryou can't search the index, you need to look at each data point: load it from disk
12:41:43 Join Lynx_ [0] (lynx@
12:41:53amiconnThat's the purpose of the index - searching
12:42:25Zagoryou can't binary search an index. you have to look at the data to know which way to search next.
12:43:08amiconnThe index contains both the index key value and the pointer, so no additional data lookup required
12:43:30Zagorright, that is exactly what my proposal contains
12:45:47amiconnNot exactly. You store album, artist, and song name separately. This requires index arrays in each of the additional tables, which raises the question of how large those arrays should be
12:46:25Zagorthe array size is specified in the header. it is big enough to suit the data set.
12:47:20amiconnWhat if this is e.g. set to 20 tracks per album, and then an 21-track album is added? This requires re-generating the whol edb
12:47:44Zagorthe database is always regenerated
12:48:06kurzhaarrockera nightmare for the jukebox but a piece of cake for a pc
12:48:07amiconnYes, but it should be possible on the target
12:48:17Zagorit is possible, just a lot of work
12:48:48Zagorthe format is designed for easy reading, not easy writing.
12:50:26 Join Lynx [0] (lynx@
12:59:53***Saving seen data "./dancer.seen"
13:04:54LinusNi wonder why people are so focused on generating the database ono the jukebox itself?
13:05:24Zagorbeats me. store the perl script and perl.exe on the jukebox instead.
13:05:44 Quit Lynx_ (Read error: 110 (Connection timed out))
13:05:44 Nick Lynx is now known as Lynx_ (lynx@
13:05:54LinusNperl.rock :-)
13:06:05kurzhaarrockerIt's only interesting for freaks like me who actually record with the recorder. And - well - for searching only I don't care about databases at all. I want statistics and ratings.
13:07:06Zagori want it too, but I don't think we should mix it with the id3 database. the statistics are long-life data that you want to make sure survives a long time. the id3 database can be recreated at any point in time.
13:08:50kurzhaarrockerthat's true. And if we did as dirty things as store that statistical info in some id3 tags too even that data could be recreated.
13:14:33kurzhaarrockerBut now I think you're right: it might be good to think about the statistical infos and updating / reindexing them separately. Even if we had to update an id3 tag and half a dozen db entries - for that task we have plenty of time.
13:17:08amiconnZagor: Your db design may lead to very large index tables, if (for instance) you have many tracks by one artist, even if the number of tracks by other artists is much smaller.
13:17:27Zagoryes. we waste disk if that gains cpu or ram
13:18:20*kurzhaarrocker wastes time to gain some food now
13:18:27 Part kurzhaarrocker
13:19:00amiconnSearching such a large index might take significantly longer thatn searching an index into a one-entry-per-song table. I happen to have that case on my disk - I have > 100 songs by one group
13:19:50Zagorno it won't. seeking a file will always be MUCH faster than searching it.
13:19:55amiconnLinusN: Generating the db on the box itself might be useful if you connect the jukebox to a computer that is not yours and add songs.
13:20:17Zagoramiconn: store the index program on the jukebox. then it doesn't matter what computer you connect to.
13:20:57amiconnZagor: It does matter, or I'd have to store the index program for any CPU and OS type I might come across
13:22:01amiconnZagor: You'd have to search the index with either approach. The only search to avoid with indexing is searching the ram table data
13:22:04Zagorcome on, be real. how many operating systems do you connect to normally?
13:22:29Zagorwindows, linux and another unix?
13:22:38dwihnohow about mac with os9 :
13:22:41amiconnWindows, Linux, and AmigaOS
13:22:57Zagorfine, then you need perl.exe, perl-amiga and
13:23:01amiconns/ram table data/raw table data/
13:23:10LinusNand you are unable to connect it to the linux box for indexing?
13:23:13Zagoramiconn: no you don't need to search with a lookup table
13:24:03LinusNZagor and amiconn, i think you're so far apart that you need to explain your concepts from the bottom up
13:24:14Zagormy concept is in the wiki :)
13:24:27Zagorbut i agree, it seems we don't understand each other
13:24:34amiconnZagor: Then it might be that I don't grasp it.
13:24:51LinusNZagor: the wiki doesn't explain how rockbox will use the format
13:25:16ZagorLinusN: true
13:29:10amiconnI think both solutions are not too far apart. Iiuc, the wiki described format is something like that:
13:29:54amiconnFirst part is (apart from the table pointers) the raw data, one entry per song with all fields.
13:30:47amiconnAfter that there are several indices, but with only one entry for all raw data entries, containing an array of pointers to the data
13:31:57 Join Tang [0] (
13:31:59amiconnMy approach would also index the raw data, but with one index entry per raw data entry. This requires only one pointer to the raw data, and therefore avoids the problem with large pointer arrays
13:32:35Zagorwhy is a larges arrays a problem?
13:32:38amiconnAs the index entries for the same key value would be adjacent, this should not create additional overhead
13:33:26amiconnSearching the index would be fastest if the whole index is loaded into ram. That will be obviously more difficult with large pointer arrays per entry
13:33:58Zagorthe tables are not intended to ever fit in ram
13:34:35Zagorsince they are sorted and fixed-size, we don't need an index to find a position
13:35:09amiconnImho the tables towards the end *are* indices
13:35:19amiconnAnd: you always need to search somewhere. Otherwise, how am I supposed to find an album if I enter a string?
13:35:56Zagoryes, for freetext searching we have to use real search. but that is linear searching, which is another issue.
13:36:46amiconnWe don't need linear search, unless we want to support real substring search.
13:36:48Zagorthere are very few optimisations available in freetext searching
13:36:55Zagorwe do want substring search
13:38:01amiconnAnd for linear search (substring), fitting the index table into ram should really boost performance
13:38:25Zagoryes, but we won't ever be able to do that. there will always be more song name data than we can fit
13:38:31Zagorhi tang
13:38:52Zagorespecially since we want to be able to browse and search while music is playing...
13:39:27LinusNfor the first step, we are only working on database *browsing*
13:39:32TangUm, my nick is supposed to be Kuros - I posted a few ...replies on the rockbox forum - I'm about to take apart my iriver H340
13:39:53LinusNgood luck with that :-)
13:40:01ZagorLinusN: yes, but searching is trivial to add
13:40:16ZagorTang: sounds good. have you got a flatbed scanner?
13:40:50TangWe'll see how we go - (yes I have one of those) that other guy had a bit of trouble
13:40:59LinusNZagor: my point was that amicann was talking about searching and you were talking about browsing
13:41:35ZagorLinusN: well not really. we were both talking about browsing. he just wanted to use searching as part of the datafinding algorithm (afaui)
13:43:04LinusNsome proof-of-concept is probably in order
13:43:14amiconnI don't need browsing at all for artist/album/genre. I already have that. But searching might be useful.
13:43:18LinusN"show me the code" :-)
13:43:25Zagoryes, i'm writing some code now
13:44:41Zagoramiconn: aha, so you were in fact talking about searching all along? that would explain our confusion! :-)
13:46:14amiconnYes, but searching might also be involved for browsing with more than 1 selection criteria
13:47:54amiconn(Or adding more and more lookup tables - imagine that for every combination of 5 or more criteria!)
13:48:10amiconnThat's why I suggested to have 1 index per field. The index table would be relatively small, and therefore searchable in a reasonable time
13:48:10Zagorsee "unsolved issues" :)
13:48:15LinusNmany lookup tables isn't a problem imho
13:48:34Zagorno but we can't solve it with just lookup tables
13:48:57Zagoror if we can, tell us how :) see the wiki for a case.
13:49:38amiconnAnd the create-indices-on-the-box has another reason (and this is one that could convince me to actually use the db) - adding dynamic info from playback, as kurzhaarrocker suggested
13:50:22 Join alx5000 [0] (
13:50:59 Join Zagor_ [242] (
13:51:06LinusNamiconn: i think dynamic info should be in a separate database
13:51:27LinusNalx5000: hi
13:51:53 Quit Zagor (Broken pipe)
13:51:58alx5000ive got a simple question about iriver's h series processor... i was just wondering
13:52:51LinusNwondering what?
13:52:54alx5000if it would be powerful enough to play video files
13:53:08LinusNbut you'
13:53:31ashridahi'd be inclined to suspect you wouldn't get a decent framerate out of the lcd screen
13:53:48LinusNashridah: why not?
13:53:52amiconnLinusN: Yes, although it still has to be connected to the static part in some way
13:54:00LinusNamiconn: yes
13:54:09Zagor_we play video on the 12MHz archos today. the iriver will be a piece of cake.
13:54:45LinusNthe lcd connection is parallel on the iriver, gives us quite a lot of bandwidth
13:54:46Zagor_(if anyone wants to do it, that is. it's not exactly a #1 priority...)
13:55:18ashridahLinusN: ah, is it? kinda had the impression it wasn't.
13:55:57LinusNfrom the schematics?
13:56:11alx5000Zagor_: how fast is iriver's?
13:56:13ashridahno, the update rate of some things. ;)
13:56:27ashridahbut that's probably just a poorly written bit of update code in the normal firmware
13:56:44LinusNalx5000: we can adjust the cpu frequency up to about 140MHz IIRC
13:56:56LinusNbut we will probably stay around 70
13:57:10Zagor_unless we want to encode ogg ;)
13:57:19ashridahthat'd be nice
13:57:25Zagor_with emulated floating point...
13:57:27ashridahis there an integer-based ogg encoder?
13:57:45Zagor_LinusN: can you kill Zagor. i'm not allowed to get op for this nick
13:57:46alx5000so we can call video playing a feature, not a dream, then?
13:57:55Zagor_alx5000: a possible feature
13:57:58LinusNdoes anybody know of a decent real-time mp3 encoder except Shine?
13:58:05*ashridah hands alx5000 a text editor and a compiler
13:58:14alx5000ok, thank you very much, youve made my expectations grow :)
13:58:15Mode"#rockbox +o LinusN " by ChanServ (ChanServ@services.)
13:58:45LinusNZagor_: Zagor is not here according to my client
13:58:58Zagor_ah, it left
13:59:06 Nick Zagor_ is now known as Zagor (
13:59:58alx5000oh, theres another stupid thing... my videocamera can output video and sound through a jack-2-rca cable... could this be coded in the firmware or is it hardware related?
14:00:48Zagorwell... in theory we could perhaps do something with it since we've got straight input. but i just made jokes about encoding og...
14:01:12ashridahthat's a point. is there a standard for outputting video via optical out?
14:01:36alx5000how does gmini400 do it?
14:01:39Zagornone that i know of. but i'm no video guru.
14:01:48Zagoralx5000: dedicated ports and hardware.
14:02:08alx5000heheh ok, thats it, then
14:02:37alx5000wish we could have both firmware and hardware upgrades :D
14:03:15Zagorfree hardware is a bit harder to realise than free software :) we need some serious physics innovation first.
14:03:41LinusNi suggest that you hold your dreams a while, otherwise you'll be disappointed with the first iriver verison of rockbox
14:03:58LinusNit will be very basic
14:04:24alx5000i know, but now im stuck in iriver's firmware
14:04:29alx5000and that... sucks...
14:04:49alx5000anything greater than zero is something to point out...
14:05:24alx5000im reading what youve done with archos so far, and im quite amazed...
14:06:50alx5000btw, what does Speaking Menus Support mean?
14:07:07LinusNthe menu options are spoken
14:07:11LinusNa voice
14:07:21alx5000so you can go through them "blindly"?
14:07:32LinusNit's a feature mainly for the blind
14:07:44LinusNbut it's nice when you're driving a car as well
14:08:00alx5000i see.. :O
14:08:59Tangi hate clips
14:09:35 Join elinenbe [0] (~elinenbe_@
14:10:44alx5000are you focusing on H100 series?
14:12:13ZagorTang: clips?
14:12:54 Quit alx5000 ("Download Gaim:")
14:13:48 Join alx5000 [0] (
14:14:48alx5000back again...
14:15:03Tangyeah, those silly little plastic things you have to push a bit to disengage the chip board
14:22:05alx5000sorry for asking so much, but... how much storage space / memory do you have in h100 for firmware?
14:22:21Zagor2MB flash
14:22:41Zagorand then a whopping 32 MB ram...
14:23:04alx5000and how much of those 32 are used during normal playing?
14:23:12Zagorall of it
14:23:16alx5000ok :D
14:23:21Zagorwe always use all ram
14:23:44Zagormore ram just means larger buffers for mp3 etc
14:23:54LinusNand less disk activity
14:24:02Zagorless frequent anyway ;)
14:24:08LinusNmeaning longer battery life
14:25:24alx5000thats a point...
14:27:31elinenbeLinusN: how are your h100 commits coming?
14:28:03 Join langhaarrocker [0] (
14:28:04LinusNhaven't had time to test drive the code on the target
14:28:24LinusN(baan sick, actually)
14:30:36dwihnohuge mpeg buffer! me loves it
14:30:38 Nick langhaarrocker is now known as kurzhaarrocer (
14:32:15 Nick kurzhaarrocer is now known as kurzhaarrocker (
14:32:28Zagorgot a haircut?
14:33:53kurzhaarrockerYes, I entangled myself, but thanks to nickserv I'm free again.
14:36:09Tangobviously the people who fix up these things have about seven hands...
14:36:48TangI've just come to a revelation - the front cover comes off as well as the back
14:38:17*kurzhaarrocker passes Tang an electric axe
14:39:22Tangthanks - as much as I'd like to right now, I still want to listen to music later
14:43:37kurzhaarrockerSomething completely else: I know there's an out of date _plugin_ for editing id3 info. If it's a plugin - how can we edit the id3 info while recording? bummer.
14:44:50Zagoryou mean right now, or conceptually?
14:45:10 Part alx5000
14:45:28kurzhaarrockerAs the plugin is out of date: conceptually. Should we allow plugins while recording?
14:46:06kurzhaarrockerOr should id3 editing - just like recording - be considered part of the firmware?
14:47:02Zagorwell we can't edit the actual tag while recording, since we don't want to mess with the file. but we could edit a dummy file, from which the tag is copied after recording is complete.
14:47:30ZagorI'm not sure how much the gui thread is part of the recording process, if any.
14:48:18kurzhaarrockeras soon as it comes down to _triggered_ recording there is a problem with that approach of mine.
14:48:52amiconnZagor: We could hold the (edited) tag in memory. It is only a few 100 bytes
14:49:53kurzhaarrocker... especially as the tags for freshly recorded files don't contain any bitmaps and stuff...
14:49:53Zagoryes, but we have no mechanism to pass memory between the core firmware and a plugin.
14:50:18Zagori'd like to use the same editor for new recordings and regular files
14:50:36Zagorand the easiest way is probably to use a dummy file for recording
14:50:46*Tang scratches the itch to throw the iriver out the window
14:50:51LinusNwhy is it necessary to edit the tag while recording?
14:51:01*Tang sighs
14:51:08LinusNcan't that wait until afterwards?
14:51:10kurzhaarrockerBecause you have time while you record, LinusN
14:51:40LinusNIt should be fairly easy to implement
14:51:44amiconnZagor: Then make it part of the core
14:52:00Lynx_Tang: more clips? ;)
14:52:07LinusNthe VBR info is updated when the recording ends, the ID3 tag could be changed at that time
14:52:08TangThe best I can do for the moment is tell you what harddisk it's got... but that doesn't help, does it
14:52:25Zagori think an id3 tag is an ideal candidate for a plugin
14:52:27LinusNTang: not really
14:52:35LinusNan editor, yes
14:53:06 Join elinenbe_ [0] (~elinenbe_@
14:53:07 Quit elinenbe (Read error: 104 (Connection reset by peer))
14:53:10 Nick elinenbe_ is now known as elinenbe (~elinenbe_@
14:53:48kurzhaarrockerAnd that editing becomes really interesting when you have timed recording and a file split happens while you're editing :)
14:54:20Zagorno problems if we use a dummy file
14:56:01LinusNstarting a plugin while recording is a bad idea imho
14:56:14LinusNthe time split is done by the main thread
14:56:50Zagorwould it be ugly to move?
14:56:54LinusNi think a simple interface for entering title and artist in the recording screen would be sufficient
14:57:09LinusNthen a "real" editor in a plugin
14:57:58LinusNi remember having difficulties moving the split to the mpeg thread, but i can't remember what it was
14:59:19LinusNi think the split belongs in the mpeg thread
14:59:35kurzhaarrockerWith volume triggered recording it would be difficult to - unless we want separate read outs for the peak meter and trigger detection.
14:59:38LinusNthe main thread should just monitor the recording
14:59:53LinusNkurzhaarrocker: true
14:59:57***Saving seen data "./dancer.seen"
15:01:38*kurzhaarrocker still thinks that the peak value read out should have its own thread.
15:03:21kurzhaarrockerFor example the peakValueThread could fire trigger events and the peak meter might become more precise.
15:04:40kurzhaarrockerbecause we could read out more often because the read out would be decoupled from updating the gui. The peak meter wouldn't poll, just draw.
15:05:25LinusNi don't get it, the gui takes just as long to update regardless if the peak meter is in a separate thread or not
15:06:08kurzhaarrockerDon't we have tick threads? (it's been a while...)
15:06:36LinusNsimple round-robin cooperative threads
15:07:37*kurzhaarrocker shuts up for a while
15:09:54amiconnLinusN: There are tick tasks...
15:10:55*kurzhaarrocker sees something strange called IMIAO which he thought was something thread related, triggerd by a hw timer via interrupt.
15:12:21amiconnkurzhaarrocker: IMIA0 is the isr called by timer 0 interrupt
15:13:14kurzhaarrockerAnd is it an absolute nono to use that every nth time to read out the peak value?
15:15:52amiconnYou should not do such a thing directly in the isr. Instead, use tick_add_task() to add a function that is called every 10 ms
15:16:24LinusNamiconn: i wrote the kernel, i know that you can add a "tick task"
15:16:48LinusNbut a task that talks i2c with the MAS is out of the question
15:17:16kurzhaarrockerDue to timing?
15:17:37LinusNa MAS conversation can take several milliseconds
15:17:43amiconnLinusN: Ah ok. Of course i2c from interrupt is not allowed, silly me
15:18:00LinusNand the i2c driver uses a locking mechanism that can only be run by background threads
15:18:49amiconnI should know that (from my backlight dimming experiments); using i2c from interrupt may even lock up the box as soon as lcd access is going on in parallel
15:18:58LinusNstill, i can see one valid reason to have a separate thread for the peak data
15:19:31LinusNand that is the peak trigger event business
15:20:17kurzhaarrockerCurrently I implemented that using a callback function in the peak meter code.
15:21:28kurzhaarrocker-> works only when the peak meter is being displayed.
15:23:31amiconnThat thread would only be needed when triggered recording is actually used. Threads can be started and ended dynamically iirc
15:27:40kurzhaarrockerThe thread would be needed too as soon as a peak meter is displayed or we'd end up in separate read outs for peak meter and trigger again.
15:34:07amiconnThe thread may also be present all the time (or as soon as the peakmeter is used for the first time), but then it should only read the values when necessary
15:34:34LinusNgotta go
15:34:36LinusNcu guys
15:34:52 Part LinusN
15:36:56 Quit ashridah ("sleep")
15:40:28 Join zapotech [0] (
15:41:06Tangok, I don't think I can scan this, but I have some photos of it
15:42:27Zagornice. uploaded anywhere?
15:43:32TangI don't know where to upload 'em ...I'm not sure of the best way..
15:43:46Zagoryou can upload them to our wiki if you like
15:46:07Tangok... sounds ok - if I run into the hard wall of confusion and ignorance, I'll give you a bell
15:49:42 Join Audiophil [0] (~dsads@
15:49:58Audiophiler dere svenske?
15:50:00Audiophiltft :D
15:51:24ZagorAudiophil: some of us are, but the majority isn't. so we speak english here.
15:51:33zapotechalla svenskar suger fett..!! :)
15:52:14Audiophilregarding iriver, will it be possible to reinstall the iriver software if you somehow want to do that?
15:54:08TangIt should work the same as the usual firmware upgrade - I accidently upgraded the firmware for my iriver to two releases before the one that came in the box
15:54:36Audiophilso how's the status on an iriver release?
15:55:09Zagorfar away. we've just barely ran any code on it yet.
15:56:39Zagormaybe something early can be release around christmas, if things are going well
15:57:25 Part kurzhaarrocker
15:58:20Audiophiloh :/
15:58:28Audiophilwell, keep up the good work
16:06:17 Join Lynx [0] (lynx@
16:22:44 Quit Lynx_ (Read error: 110 (Connection timed out))
16:22:45 Nick Lynx is now known as Lynx_ (lynx@
16:23:54 Quit Audiophil (Read error: 238 (Connection timed out))
16:47:20 Join mecraw_ [0] (~lmarlow@
16:56:34Tangok, I've hit that wall.... this is the first time I've ever put something on a wiki before - I've only ever read up on stuff before
16:57:11Zagori see you registered sucessfully
16:57:59Zagori suggest you upload to the IriverInfo page. we can always move it later if we want.
16:58:12Zagorgo to that page, then click "attach" and follow the instructions
16:59:58***Saving seen data "./dancer.seen"
17:16:09 Quit einhirn (Read error: 54 (Connection reset by peer))
17:22:00TangIs there a size limit?
17:25:55Zagori don't think so
17:25:59 Quit gromit`` (Read error: 110 (Connection timed out))
17:26:07 Join gromit` [0] (
17:26:13Zagorare they huge?
17:27:03Tangnot too huge - but they have different focus on different spots, so there is a few of them
17:27:28Tang19Mb ?
17:27:47Zagorok, no problem
17:30:33Zagori've gotta go. see you later.
17:30:34 Part Zagor
17:33:14 Join einhirn [0] (
17:36:42TangGoodnight to those people who saw me log on - and good night to the computers of whos owners neglect to turn off
17:37:06Tang....I'm tired.
17:38:08 Part Tang
17:40:48 Quit Lynx_ (" HydraIRC rocks! -> <-")
18:05:39 Quit einhirn (Read error: 54 (Connection reset by peer))
18:08:31 Join methangas [0] (
18:11:35 Join webguest75 [0] (
18:11:52 Quit elinenbe (" I love my HydraIRC -> <-")
18:12:25webguest75small question: why is the usb cable for the archos not standard?
18:12:36webguest75is there any good tech reason?
18:14:24 Join millow [0] (
18:25:06 Quit webguest75 ("CGI:IRC (EOF)")
18:41:19 Part amiconn
19:00:02***Saving seen data "./dancer.seen"
19:24:36 Join ScrpWork [0] (
19:24:44ScrpWorkhi fellas
19:25:41 Part millow
19:40:46 Join _aLF [0] (
20:03:41 Join dropandhop [0] (
20:56:53 Join Farbrausch [0] (
21:00:04***Saving seen data "./dancer.seen"
21:00:39 Quit Farbrausch (Client Quit)
21:03:28ScrpWorknobody ever talks here?
21:16:20 Join PoDDaN^ [0] (
21:16:26PoDDaN^hi all
21:16:40PoDDaN^can anyone help me out with one thing?
21:26:42 Quit _Lucretia (Connection timed out)
21:27:03 Join _Lucretia [0] (
21:27:56 Quit PoDDaN^ ("CGI:IRC")
21:34:28 Join kurzhaarrocker [0] (
21:35:22kurzhaarrockerMy battery has burst.
21:38:02Ka_anyone had an archos recorder 2.0 just not turn on or show any signs of life after leaving it sit around for a month .. (and after charging it to make sure it was dead batteries :) )
21:38:54kurzhaarrockerDead batteries are the most common cause for any hw fault of the thingies.
21:39:36Ka_with the power adapter plugged in it should power on even without batteries.. it doesn't do that either..
21:41:05kurzhaarrockerThe adapter alone doesn't provide enough power to operate the jukebox. Without batteries it won't spin up even with the adapter connected.
21:41:30Ka_but the screen lights up with the adapter plugged in
21:41:50Ka_that doesn't require the batteries.. or at least so i've read
21:41:54kurzhaarrockerYes, but probably there's not enough current to make the hd work.
21:42:53kurzhaarrockerThe V2 unit is that thingie with the built in Lithium batteries, isn't it?
21:43:13Ka_but i can't even get the screen to light up.. from what i've read it should at least do that..
21:43:21 Join scott666 [0] (
21:43:23Ka_it has 4 replaceable batteries
21:44:29kurzhaarrockerHave you tried another set of batteries?
21:44:54Ka_i just found out this thing wasn't working like 2 hours ago.. i haven't opened it up yet to get to the batteries..
21:45:00Ka_i'm about to do that..
21:48:06ScrpWorkhow's it going over here
21:48:31kurzhaarrockerIt's quite calm now
21:50:22ScrpWorkwhat are the latest new on H120 unscramle
22:01:50Ka_wouldn't you just know it?! i can't find a screwdriver small enough to fit these screws..
22:02:49Ka_now i could *probably* use a hammer to get it open but that may lead to *other* issues with the device
22:05:12 Quit methangas (" I love my HydraIRC -> <-")
22:05:19scott666archoses are supprisingly hard to open with a hammer...
22:06:02Ka_if this isn't working in the next few days i just may find out for myself just how hard..
22:08:48 Join njsges [0] (
22:16:10 Quit kurzhaarrocker (Read error: 110 (Connection timed out))
22:19:38dropandhophey all!
22:19:57dropandhopany suggestions as to how i can help the crew with the iriver...i can't code
22:22:36ScrpWorkgive them an H120 for free
22:22:43ScrpWorkthat'll help them out a lot
22:23:04Bagderconsider a donation
22:23:20Bagderto allow us to buy more hw to work with
22:30:25njsgesanyone available to answer a few questions about archos and iriver pmp's?
22:30:45ScrpWorkjust shoot them, maybe somebody knows
22:31:59Bagderpersonal music player?
22:33:49njsgesthe personal media players
22:34:14njsgesi'm looking to get one to use in conjunction with my digital camera and storing images
22:34:34njsgesas well as use it to listen to music as well as to record meetings
22:34:43njsgesany suggestions on what to get?
22:35:01ScrpWorkhow can yo use an mp3 player in conjuction with a digital camera?
22:35:04Bagderneither archos nor iriver will help you with the camera problem
22:35:20BagderScrpWork: if it could server as a usb host
22:35:53njsgeswill either one work as a direct storage device from my dig camera to the device?
22:35:58njsgesvia usb
22:36:11njsgesor will one of the iriver h120 or h320 work?
22:36:13Bagderneither one
22:36:39njsgesthe archos i believe does have a card reader on tthe side
22:36:42Bagderthey are slaves, and so is the camera
22:37:06Bagderoh, right some newer multimedia models have such
22:37:15BagderI can't speak about them, as rockbox doesn't run on them
22:37:33njsgesit runs on the earlier versions of the archos products
22:38:11njsgeswould any of the earlier models be a better fit for what i'm trying to do?
22:38:43Bagderjust about every unit on the market can do the other things, hardly any can store images from a camera
22:38:49BagderI mean directly over usb
22:40:17njsgesrockbox supports the early jukebox players
22:40:25njsgesnot the gmini or av's
22:40:37Bagder" Rockbox is an Open Source replacement firmware for the Archos Jukebox 5000, 6000, Studio, Recorder, FM Recorder and Recorder V2 MP3 players."
22:40:59*Bagder detects a lack of "Ondio" in there
22:44:18Bagderand here are the hard facts:
22:44:24Bagderon all supported models
22:53:28njsgesthank you
22:54:12 Join iRiverMan [0] (
22:56:30 Part njsges
23:00:08***Saving seen data "./dancer.seen"
23:08:01 Join Gamefreak [0] (
23:08:54 Quit gromit` (Read error: 104 (Connection reset by peer))
23:09:02GamefreakJust a tad curious, being the slave to the oppression that is iRiver, when I can expect to see the Rockbox port.
23:09:18GamefreakAnd for that matter if I can help.
23:09:31_LucretiaGamefreak, think yourself lucky, at least there's a port in progress for iRiver :-(
23:09:52ScrpWorkI would just like a working simulator and some bit of documentation so I can make my own firmware
23:09:57ScrpWorkI have to wait a lot for that as well heh
23:10:36Bagderthe simulator works for iriver
23:10:51 Join gromit` [0] (
23:11:06Bagderor, at least is should
23:11:55BagderGamefreak: there's basically only one developer working on iriver code, so it is gonna take a while before there will be anything reallt fun to see
23:14:19 Join matsl [0] (
23:16:24ScrpWorkafter all hardware functions are documented some people can code an Hxxx simulator :)
23:17:39Bagderwe already have one
23:17:39Bagderread my words
23:17:39Bagderwe have a set of APIs already
23:18:55Bagderdocs/API is a basic embryo at some docs
23:19:35ScrpWorkcorrect me if I'm wrong but I thought you had a Motorola 5249 emulator
23:19:52ScrpWorknot a Hxxx simulator (simulates LCD, keyboard input, audio output, etc)
23:20:06Bagderwe have a simulator
23:20:11ScrpWorkof the whole thing?
23:20:13Bagderthat simulates the lowlevel stuff
23:20:21Bagderand makes it possible to write code on host
23:20:27Bagderwe've had it for years
23:20:36Bagderand it has been adjusted to simulate iriver as well
23:20:38iRiverManwhat about the iRiver's remote?
23:20:49Bagderthat is still left todo
23:21:02iRiverMansince the LCD on the remote mirrors the main LCD
23:21:09Bagderit doesn't
23:21:16Bagderit only does that with irivers fw
23:21:22Bagderwe don't have to do that
23:21:44iRiverManso does that mean the LCD on the remote becomes redundant?
23:21:47ScrpWorkwell but it would be cool if it simulates the whole thing, so you can see a JPEG of a iRiver and use a directory of the HDD as the simulated HDD of the stuff
23:22:05ScrpWorkyou put the original firmware and you could even get audio through your soundcard emulating the DACs
23:22:09BagderScrpWork: that is basically what we have
23:22:27BagderScrpWork: no, that makes it an emulator and that we don't have ;-)
23:22:37BagderiRiverMan: why would that be?
23:22:45iRiverManBagder do u have an iriver?
23:23:06iRiverManthe iriver isn't very good at shuffling playlists
23:23:11iRiverManalways plays the same songs
23:23:16ScrpWorkbut that would be great :) if all the hardware functions are documented you can find some people interested in coding a full emulator
23:23:17iRiverManNo problem shuffling the HD though
23:23:20Bagderyou make no sense iRiverMan
23:23:26iRiverManwhy not?
23:23:32ScrpWorkshuffling in an iRiver is just non existant.
23:23:35ScrpWorkit doesn't have randomness
23:23:39ScrpWorksince it doesn't have a clock
23:23:39iRiverManit does
23:23:41Bagderso they say
23:23:43Bagderrockbox will
23:23:53ScrpWorkI have an H120 that's why I'm here in this very channel :)
23:23:55iRiverManiRiver does have a shuffle mode
23:24:01iRiverMandoesn't work very well on playlists though
23:24:02ScrpWorkyeah but shuffle without randomness
23:24:09ScrpWorkdoesn't work very well on anything
23:24:10iRiverManyou have lost me
23:24:12ScrpWorknot even on directories
23:24:29ScrpWorkshuffle only put the songs in the same order and makes you think it randomize them
23:24:44ScrpWorkbut no, just changed the order and it will always be the same order until you delete or upload a new song
23:25:00iRiverManwell i found a way is to manually shuffle a playlist in Winamp
23:25:02ScrpWorkso it's shuffling without randomness hehe
23:25:07ScrpWorkthat's a workaround
23:25:25iRiverManBut i still think its a better machine than the archos
23:25:28ScrpWorkpeople shuffle the playlists several times each and upload all the results to the H120
23:25:35ScrpWorkbut that sucks
23:25:41Bagderit certainly is lame
23:25:41ScrpWorkof course it's the best mp3 player ever
23:25:52iRiverMani like the construction of the iriver
23:25:57iRiverManmuch better than others
23:27:43ScrpWorkwell an emulator would be great
23:27:49ScrpWorkI could even help myself to code one
23:27:49iRiverMani have an iriver ihp-120
23:28:01ScrpWorkthen we can write our own firmwares based on the basic stuff
23:28:19Bagderso write one!
23:28:49Bagderit'll be a major job
23:28:50ScrpWorkI would need a precise documentation of the functionality of all the hardware. An emulator has to emulate everything, not only the CPU, but all the other controllers
23:29:05Bagderwork your way ahead
23:29:10ScrpWorkI would suggest a subteam of volunteers to do that and not bother the core developers
23:29:10Bagderread the docs we have
23:29:50ScrpWorkI have, but I'm still unsure heh
23:29:56Bagderso are we
23:29:57ScrpWorkanyway I gotta go home maybe I'll connect from there
23:30:03ScrpWorkcya :)
23:30:04 Quit ScrpWork ("Scorpius MultiServer Script v0.1 for mIRC 6")
23:30:12 Quit Gamefreak (Read error: 110 (Connection timed out))
23:30:30 Quit dropandhop ("CGI:IRC")
23:37:30 Join gromit`` [0] (
23:37:31 Quit gromit` (Read error: 104 (Connection reset by peer))
23:40:32Bagdertime to sleep
23:46:34 Join Lucretia_ [0] (
23:55:50 Quit _Lucretia (No route to host)

Previous day | Next day