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

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

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

#rockbox log for 2013-05-19

00:01:17 Quit benedikt93 (Quit: Bye ;))
00:02:38ukleinekbertrik: they base not on rockbox' trunk but on a branch in paumaury's tree. So I thought gerrit isn't the right choice.
00:07:28n1shmm, there's another possible crash with AA in opus
00:14:01 Join mrtux [0] (~colin@unaffiliated/mrtux)
00:14:26 Part dys ("Killed buffer")
00:22:41derfWith what?
00:30:00n1sjust that some allocs are not checked for failures so if you have AA big enough so the following allocs fai but not big enough so that the codec bails out
00:31:44derfStill not parsing what AA stands for.
00:31:49n1salbum art
00:32:03derfOh, I see.
00:32:19derfI didn't even know you guys supported that.
00:32:27n1sprobelm with the ogg code is that it allocs enough memory to assemble a packet and some people put images that are several hundred k in there
00:33:09n1swe don't in opus afaik but we still have to deal with that huge packet in the codec
00:33:21bertrikI think we have a few other small bugs in the opus wrapper layer, like we use the same code for replaygain for opus and vorbis, but opus introduced a different tag for that IIRC
00:33:35derfbertrik: Yes, we did.
00:33:38 Quit kevku (Ping timeout: 260 seconds)
00:33:50derfbertrik: Though hopefully Opus files shouldn't even have ReplayGain tags.
00:34:06derfIf you're applying the header gain, that should be enough.
00:34:47derfn1s: You're using libogg, right?
00:34:57n1sderf: yes
00:35:00bertrikI think we apply that, but we'll probably also apply vorbis replaygain tags while we shouldn;t
00:35:18derfn1s: Recent versions check all of their allocations.
00:36:17n1sderf: yeah the unchecked allocs are in our main codec thing, but that's a separate issue. the libogg issue is that it allocs memory for a whole packet with is effectively unlimited in size
00:36:18***Saving seen data "./dancer.seen"
00:36:57n1sso the allocs fail and the codec bails out
00:36:58derfOkay, I see.
00:37:05kugeln1s: some other codec uses setjmp to return from codec_main() in case of alloc error
00:37:39bertrikI guess we should resync rockbox to upstream opus at some point (now?)
00:37:40n1skugel: yeah we don't actually need that here, just a regular if(!p) goto done: would do :)
00:38:12n1sbertrik: i am planning to do that when they release the 1.1 version
00:38:16derfn1s: Anyway, this sounds like it's not a problem that should be fixed upstream.
00:38:35bertrikn1s: great
00:38:36derfn1s: Did you see the ARMv5E opts that got posted to the opus list?
00:39:33n1sderf: maybe not but my grasp of this ogg code isn't too good so i could use some help :), nope haven't looked at the opus list
00:39:51derfn1s: Well, if you point me where I'm happy to take a look.
00:41:48n1sderf:;a=blob;f=lib/rbcodec/codecs/opus.c lines around 388 is the upper level code, it loops callign ogg_stream_pagein untill it has a full packet
00:42:18n1sogg_stream_pagein reallocs its buffer if the new page doesn't fit
00:42:37 Quit Wardo (Read error: Connection reset by peer)
00:42:39n1sthen when the whole comment packet is assembled it's not used for anything
00:47:12n1sbut if the useless packet is too large we bail out anyway, it *should* not be hard to skip it but i can't really work out a clean way to do it
00:50:00 Quit bertrik (Remote host closed the connection)
00:50:50derfRight, so after the pagein call you can call int ogg_stream_check(ogg_stream_state *os){
00:51:00derfErr, stupid clipboard.
00:51:30derfIf that returns -1, then an allocation failed and the stream has been cleared.
00:52:28derfIf you wanted to keep going, you'd have to re-initialize it.
00:52:54derfDo you guys actually have a free() that works?
00:53:13n1syes, and as of a few hours ago we use it :)
00:54:34derfOf course, if you did re-initialize it, you're going to screw up the packetno counts.
00:55:43derf(packetno isn't actually stored in the stream... it's just a count of how many packets have been returned)
00:57:02n1siiuc that could end up with cases where this particular alloc succeeds but later ones fail
00:57:18derfYes, that's also true.
00:59:34derfNot sure what you should do about that, though.
01:02:51derfExcept pre-allocate as much as possible.
01:03:25derfThough it looks like ALLOC_STACK doesn't get called until the first call to opus_decode().
01:03:38derfWould be easy enough to add one to opus_decoder_create().
01:03:58n1syeah that's the last one in most cases, it would be trivial to just use a static alloc for it though
01:04:21derfWhat are the allocations that aren't being checked?
01:07:05n1swell, ALLOC_STACK isn't checked and two early ones in our top level file opus.c 345 and 348
01:08:52derfRight, though that's before you pass in pages, so this couldn't affect that.
01:09:02derfThe ALLOC_STACK one is a proble, though.
01:09:37derfI probably need to audit our usage of that upstream anyway.
01:09:51derfSince I added a bunch more psuedostack usage.
01:10:26derf(to the encoder, which mostly shouldn't affect you guys, but also to PLC)
01:16:38 Join bertrik [0] (~quassel@rockbox/developer/bertrik)
01:18:05n1sdo you have any hints on how to reinit the stream in the correct place, i don't really see it
01:20:33derfif (ogg_stream_pagein(...) < 0 && ogg_stream_check(&os) < 0) { stream_init = 0; continue; }
01:20:47derfBut as I said, that will screw up your reliance on packetno.
01:25:25n1si'll need to experiment some then but wouldn't just setting it to packetno=2 as in neither header, nor comment be most likely to work?
01:25:43derfYup, that should work fine.
01:25:55n1salso what happens to whatever pages are left of the current packet?
01:26:17n1swill it init to packet boundary
01:27:09n1sah, cool. thanks!
01:27:18derfSee the "are we a 'continued packet' page? section of ogg_stream_pagein().
01:44:27[Saint]My word that guy is a douche...
01:44:42[Saint]"you did not help me"
01:46:10[Saint]Translation: "you did not give me the answer I wanted and suggested I do something for myself. how dare you"
01:47:05[Saint]Apparently I should keep off the forum, all I seem to do lately is piss people off. Whether justified or not, it isn't pleasant.
01:47:46 Quit bertrik (Remote host closed the connection)
01:57:21 Join CaptainKewl [0] (
02:02:36 Quit n1s (Quit: Ex-Chat)
02:06:07 Quit lebellium (Quit: ChatZilla 0.9.90 [Firefox 22.0/20130514181517])
02:28:08kiwicamCan anyone recommend a Rockboxed MP3 player that's small light and has bluetooth. Not a phone as I would like tactile buttons. Is there usch a beast?
02:29:28[Saint]Well, we don't have a BT
02:29:52[Saint]Whether it has bluetooth or not is irrelevant to Rockbox.
02:34:12 Quit akaWolf (Ping timeout: 245 seconds)
02:36:19***Saving seen data "./dancer.seen"
02:40:49 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
02:57:37 Join maffe [0] (
02:58:57maffe => Known issues => 404
02:59:11maffeI know one :o)
02:59:56maffeI just tried Opus with various bitrate settings on an X5L
03:00:52[Saint]bah! caps.
03:01:29[Saint]There is room for a lot of optimization still.
03:01:50maffedecoding actually works fine up to about ~200 kb/s on this device
03:01:58[Saint]And if memory serves the X5L doesn't exactly have the greatest SoC.
03:02:33maffebuuuuut it reacts reeeaaally slow to commands like pause
03:02:43[Saint]Yes. I would expect opus to get choppy around those bitrates.
03:02:53[Saint]FOr opus, that is quite a high bitrate indeed.
03:02:55maffetakes about 20 s (guessed) even with low bitrates
03:02:57funmanslowly to pause or unpause?
03:03:11maffeand opening the menu and such things
03:03:18maffeskipping tracks
03:03:36maffeonly thing I found which works instantly is volume control
03:03:58[Saint]when using opus around those bitrates, you're really missing any advantage it could give you over any other codec I think...
03:04:17[Saint]especially in the state it is at presently.
03:04:29maffeI just wanted to test which bitrate I could theoretically use
03:05:02maffe48 kb/s already sounds pretty good
03:05:58maffeI tried AAC a few years ago and could only use it up to 48 kb/s or so and even then only when it's not HE
03:07:01[Saint]Opus on Rockbox, and in general, is still very much a work in progress.
03:07:31[Saint]I think both parties have code to push back and forth still yet. ANd a lot of optimization on the Rockbox side could yet be done.
03:07:54[Saint]It is a very young codec.
03:08:29maffeI just wanted to give it a try and give some feedback :-)
03:09:19[Saint]Oh, yes. Sure. And it is appreciated. :)
03:10:25maffeI guess I’ll stick to Vorbis for the near future
03:13:01kiwicam[Saint]: But it's relevant to the MP3 player features I'm looking for.
03:13:25[Saint]kiwicam: not if you want to use it with Rockbox it isn't.
03:13:41[Saint]Unless you're planning on coding up a bt stack for us?
03:15:31kiwicamSo i guess what you're saying is that even if an MP3 player has bluetooth capabilities (for sending sound to another bluetooth device, such as bluetooth headphones) Rockbox can't make use of it.
03:15:49[Saint]Yes. That's exactly what I'm saying.
03:16:32[Saint]If you just want a "dumb" BT sender, you can buy such a module and use it with anything with a 3.5mm out.
03:17:03kiwicamGot you. SO what about an Android device. Can you play the Rockbox app via bluetooth?
03:17:32[Saint]In theory we probably could. But we don't.
03:17:54maffeRockbox for Android O_O
03:18:35kiwicamOK. So the only way around that is to either find an MP3 player that has some good non RB software, or connect the MP3 player to an external BT transmitter.
03:19:37[Saint]There's a third option too - but Mr Someone needs to do the work. There's probably a few good candidates for bt and network stacks out there in the wild.
03:20:47kiwicamI work in a really noise environment and wear industrial earmuffs I use a sony MW1 to get my phone calls via the mic on the MW1 and the speaker in the earmuffs. I'd love to be able to listen to a RB'd player via bluetooth.
03:22:02[Saint]I used to have to wear such muffs as well. I ended up hardwiring a pair of IEMs and a 3.5mm input to them. ...but, yeah, offtopic.
03:22:28kiwicamIt's OK. I've got enough info now.
03:40:49 Quit pamaury (Ping timeout: 252 seconds)
03:48:36 Quit Cultist (Read error: Connection reset by peer)
03:51:14 Join Cultist [0] (
04:06:44 Quit pystar89 (Read error: Operation timed out)
04:20:29 Join amiconn_ [0] (amiconn@rockbox/developer/amiconn)
04:20:29 Quit pixelma (Disconnected by services)
04:20:29 Quit amiconn (Disconnected by services)
04:20:29 Join pixelma_ [0] (pixelma@rockbox/staff/pixelma)
04:20:32 Nick pixelma_ is now known as pixelma (pixelma@rockbox/staff/pixelma)
04:20:32 Nick amiconn_ is now known as amiconn (amiconn@rockbox/developer/amiconn)
04:24:01 Quit Cultist (Read error: Connection reset by peer)
04:25:45 Join Cultist [0] (
04:36:05 Quit prof_wolfff (Ping timeout: 256 seconds)
04:36:20***Saving seen data "./dancer.seen"
05:14:14 Quit TheSeven (Disconnected by services)
05:14:23 Join [7] [0] (~quassel@rockbox/developer/TheSeven)
05:21:32 Join amayer [0] (
06:01:54 Join dfkt [0] (dfkt@unaffiliated/dfkt)
06:02:33 Quit dfkt_ (Ping timeout: 245 seconds)
06:16:31 Join pystar89 [0] (
06:36:21***Saving seen data "./dancer.seen"
06:56:07 Join joshin [0] (
06:56:07 Quit joshin (Changing host)
06:56:07 Join joshin [0] (~josh@unaffiliated/joshin)
07:04:10 Join kevku [0] (~kevku@2001:470:27:773:0:feed:c0f:fee)
07:12:05 Part joshin ("You can't be serious")
07:25:42 Quit shamus (Read error: Connection reset by peer)
07:26:04 Join shamus [0] (
07:41:10 Join Scall [0] (~chat@unaffiliated/scall)
07:48:05 Quit jhMikeS (Ping timeout: 264 seconds)
07:48:50 Quit SuperBrainAK (Quit: pbly gone to sleep (-.-)Zzz...)
07:51:02 Quit amiconn (Remote host closed the connection)
07:51:02 Quit pixelma (Remote host closed the connection)
07:51:55 Join pixelma [0] (pixelma@rockbox/staff/pixelma)
07:51:55 Join amiconn [0] (amiconn@rockbox/developer/amiconn)
08:18:41 Quit CaptainKewl (Quit: ( :: NoNameScript 4.22 :: ))
08:22:12 Join pretty_function [0] (~sigBART@
08:36:22***Saving seen data "./dancer.seen"
09:15:27 Join n1s [0] (
09:15:27 Quit n1s (Changing host)
09:15:27 Join n1s [0] (~n1s@rockbox/developer/n1s)
09:24:07 Quit maffe (Quit: IRC ist obsolet!)
09:59:22 Join akaWolf [0] (~akaWolf@unaffiliated/akawolf)
10:14:35 Join melmothX [0] (~melmoth@unaffiliated/melmothx)
10:15:02 Quit kiwicam (Remote host closed the connection)
10:17:04 Quit amayer (Quit: Leaving)
10:32:42 Join kiwicam [0] (~quassel@
10:35:10 Join bertrik [0] (~quassel@rockbox/developer/bertrik)
10:36:24***Saving seen data "./dancer.seen"
10:40:57 Quit kevku (Quit: KVIrc 4.3.1 Aria
11:01:49 Quit [Saint] (Read error: Connection reset by peer)
11:18:23 Join Horscht [0] (~Horscht@xbmc/user/horscht)
11:44:53 Join stoffel [0] (
11:53:01n1shmm, skipping left when playing an opus file doesn't restart from the beginning it skips directly to the previous track
12:01:32 Quit stoffel (Read error: Operation timed out)
12:09:07 Join midnightmagic [0] (~midnightm@unaffiliated/midnightmagic)
12:15:24 Join Wardo [0] (
12:16:00n1sjust seeking back to the beginning does the same
12:16:36n1sin fact it skips to the next track...
12:18:21n1suh, it sometimes skips forward and sometimes backwards
12:20:02n1sanyway, found a simple 3 line solution to the album art problem
12:25:18 Quit pretty_function (Remote host closed the connection)
12:29:00copperwhat's that?
12:29:30n1sthe solution or the problem? :)
12:29:49copperthe problem
12:30:43n1sthat the ogg code allocs memory for a whole packet and the comment packet is huge when there's album art embedded so the alloc fails and it bails out
12:31:53copperstoring large album art in low bitrate opus files is silly though :P
12:32:14n1syes but we still get bug reports when they don't play :)
12:33:21copperso did you modify the ogg code?
12:34:37n1si just added a ogg_sync_reset to our decode loop if it's on packetno 1 (comment packet and it works fine
12:34:52 Join kevku [0] (~kevku@2001:470:27:773:0:feed:c0f:fee)
12:35:25copperah, yes, uh, totally…
12:36:28***Saving seen data "./dancer.seen"
12:39:22 Join lebellium [0] (
12:40:40Horschti like cheesecake, too
12:54:45 Join stoffel [0] (
13:02:07 Quit liar (Ping timeout: 256 seconds)
13:02:45 Join liar [0] (
13:22:11 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
13:26:15 Join mortalis [0] (~mortalis@
13:38:01 Quit Horscht (Quit: quit)
13:40:30 Quit melmothX (Quit: #)
13:52:54 Quit stoffel (Ping timeout: 276 seconds)
13:53:55 Join prof_wolfff [0] (
14:02:38 Join kaputnik__ [0] (
14:30:24 Nick uwe__ is now known as uwe_ (
14:33:06fs-bluebotBuild Server message: New build round started. Revision a17d6de, 217 builds, 22 clients.
14:36:32***Saving seen data "./dancer.seen"
14:39:53fs-bluebotBuild Server message: Build round completed after 408 seconds.
14:44:21 Join melmothX [0] (~melmoth@unaffiliated/melmothx)
15:20:22 Join wodz [0] (
15:23:02 Quit dokan (Read error: Connection reset by peer)
15:23:06 Join dokan_ [0] (
15:28:35 Quit prof_wolfff (Ping timeout: 256 seconds)
15:35:44 Join krabador [0] (~krabador@unaffiliated/krabador)
15:38:49 Quit akaWolf (Read error: Connection reset by peer)
15:39:13 Join akaWolf [0] (~akaWolf@unaffiliated/akawolf)
16:02:32 Join wodz_ [0] (
16:02:45 Quit wodz_ (Client Quit)
16:04:14wodzZagor: (log) please take a look if makes sense. This hopefully will send build results to the clients.
16:05:44gevaertswodz: you could put it on gerrit and have that mail Zagor
16:06:06wodzgevaerts: good idea
16:06:09wodzwill do
16:06:34gevaertsPeople tend to forget that gerrit isn't just for the main rockbox repository :)
16:07:30wodzgevaerts: hmm fatal: remote error: access denied or repository not exported: /www
16:07:40wodzI have no idea what this means
16:09:07gevaertsDid you do the necessary gerrit magic for that repository?
16:09:17wodzha, probably not
16:09:48gevaertsMake sure you do the necessary s/rockbox/www/ in those :)
16:14:02wodz g#474
16:14:54*gevaerts adds Zagor as a reviewer
16:20:04 Join maffe [0] (
16:28:34 Quit DexterLB (Read error: Connection reset by peer)
16:33:51 Join DexterLB [0] (~dex@
16:36:35***Saving seen data "./dancer.seen"
16:37:38 Join pretty_function [0] (~sigBART@
16:38:14 Quit krabador (Ping timeout: 260 seconds)
17:00:14 Quit pamaury (Ping timeout: 240 seconds)
17:02:19 Join stoffel [0] (
17:07:27 Quit DexterLB (Read error: Connection reset by peer)
17:12:25 Join DexterLB [0] (~dex@
17:21:21 Quit maffe (Ping timeout: 256 seconds)
17:24:44 Join ender` [0] (
17:29:06 Join maffe [0] (
17:49:47 Join jhMikeS [0] (~jethead71@
17:49:47 Quit jhMikeS (Changing host)
17:49:47 Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS)
17:54:23 Quit kevku (Quit: KVIrc 4.3.1 Aria
17:57:20 Quit stoffel (Ping timeout: 248 seconds)
18:22:12 Quit habys (Ping timeout: 245 seconds)
18:24:09 Join habys [0] (
18:36:31 Quit Wardo (Quit: Blarglarg)
18:36:36***Saving seen data "./dancer.seen"
18:39:40 Join stoffel [0] (
18:54:22 Join [Saint] [0] (~saint@rockbox/user/saint)
18:54:30 Quit kaputnik__ (Ping timeout: 276 seconds)
19:02:26 Quit maffe (Ping timeout: 260 seconds)
19:06:18 Quit [Saint] (Remote host closed the connection)
19:07:21 Join [Saint] [0] (~saint@rockbox/user/saint)
19:13:55 Join zoktar [0] (~zoktar@unaffiliated/zoktar)
19:15:49 Quit stoffel (Ping timeout: 252 seconds)
19:27:25 Join kevku [0] (~kevku@2001:470:27:773:0:feed:c0f:fee)
19:29:42 Quit zoktar (Quit: -)
19:32:06 Join zoktar [0] (~zoktar@unaffiliated/zoktar)
19:32:30 Join stoffel [0] (
19:57:57 Quit pretty_function (Remote host closed the connection)
20:05:46 Join CaptainKewl [0] (
20:15:28 Quit stoffel (Remote host closed the connection)
20:31:10 Quit mortalis (Quit: KVIrc 4.3.1 Aria
20:34:14 Join fragilematter [0] (~Thunderbi@unaffiliated/fragilematter)
20:36:37***Saving seen data "./dancer.seen"
20:37:47 Quit kevku (Quit: KVIrc 4.3.1 Aria
20:56:09 Quit wodz (Ping timeout: 246 seconds)
21:14:02 Quit fragilematter (Ping timeout: 260 seconds)
21:14:35 Join fragilematter [0] (~Thunderbi@unaffiliated/fragilematter)
21:20:06 Quit mc2739 (Ping timeout: 276 seconds)
21:21:25 Join mc2739 [0] (~mc2739@rockbox/developer/mc2739)
21:22:39 Quit akaWolf (Ping timeout: 248 seconds)
21:30:57 Join ur725 [0] (
21:33:33 Join stripwax [0] (~Miranda@rockbox/developer/stripwax)
21:34:54 Quit fragilematter (Quit: fragilematter)
21:40:12 Join kaputnik__ [0] (
21:49:57 Quit liar (Ping timeout: 256 seconds)
21:54:41 Join liar [0] (
22:11:10 Join SuperBrainAK [0] (
22:23:04 Quit melmothX (Quit: o)
22:35:37 Join Songs0fFailure [0] (Songs0fFai@
22:36:20 Quit Songs0fFailure (Client Quit)
22:36:39***Saving seen data "./dancer.seen"
22:41:21 Quit stripwax (Quit: Miranda IM! Smaller, Faster, Easier.
22:41:36 Join stripwax [0] (~Miranda@rockbox/developer/stripwax)
22:45:56 Quit stripwax (Ping timeout: 248 seconds)
22:53:06 Quit n1s (Quit: Ex-Chat)
23:05:33 Join krabador [0] (~krabador@unaffiliated/krabador)
23:10:42 Quit kaputnik__ (Ping timeout: 264 seconds)
23:52:05 Join bluebrother [0] (~dom@rockbox/developer/bluebrother)
23:54:03 Quit fs-bluebot (Ping timeout: 256 seconds)
23:55:13 Quit bluebrother^ (Ping timeout: 252 seconds)
23:55:24 Join fs-bluebot [0] (

Previous day | Next day