#milkymist IRC log for Friday, 2012-04-13

hypermodernWolfspraul have there ever been feedback loops between more than one milkymist1?01:43
wolfspraulI don't think so01:44
hypermodernwhere the synthesis is feed into the other via camera or through the internet?01:44
wolfspraulwell there are technical boundaries too01:44
wolfspraulcurrently m1 cannot sample vga video-in01:44
wolfsprauland it cannot stream video over ethernet either01:44
hypermodernwhat if it came in through the camera?01:44
wolfspraulsure, over the composite signal it could01:45
hypermodernso that would be analog right?01:45
hypermodernso repitition effects will show up?01:45
wolfspraulanalog, yes01:45
hypermodernAwesome!01:45
hypermodernI'm looking for Moiré patterns01:45
wolfspraulnot sure how good those 'repetition effects' will actually look like01:45
wolfspraulsure - try!01:46
hypermodernWell no-one has ever tried them01:46
hypermodern:-D01:46
hypermodernsomething like this may occur http://upload.wikimedia.org/wikipedia/commons/thumb/e/ea/Moir%C3%A9_pattern.svg/160px-Moir%C3%A9_pattern.svg.png01:46
hypermodernor video feedback with scan lines01:46
hypermodernwhich would continually degrade to some state01:46
hypermodernthis could be really interesting01:46
hypermodernI'm thinking about a show this summer with the qi speakers and laoban speakers01:47
hypermodernand I think that a MM1 loop will be interesting of the theme of the show.... based on "Re-" meaning re use etc...01:48
hypermodernor re-cycle etc.01:48
wolfspraulgood01:49
hypermodernthis moiré effect could be layered on top of the video synthesis either by refresh rates being subtly out of synk01:49
hypermodernor by changing the angle of the camera http://upload.wikimedia.org/wikipedia/commons/thumb/b/bb/Moire02.gif/160px-Moire02.gif01:49
hypermodernPotentially making the people who move through the room become part of the degradation of their own image01:50
hypermodernhttp://en.wikipedia.org/wiki/Moir%C3%A9_pattern01:50
hypermodernplus we could use the dmx controllers to flash the room01:50
hypermodernto "reset" if video output gets stuck into black01:51
hypermodernPotentially stroboscopic light would influence the effect as well.01:51
wpwrakhmm, i wonder what effect the fairly low resolution of the composite video input would have on this01:52
wpwrakbut it could go either way - good or bad :)01:53
wolfspraulyes, agree01:53
hypermodernI'm thinking good01:53
wolfspraulbut the ideas can and should be tried now01:53
hypermodernjust cause I like analog video degradation01:53
hypermodern!01:53
hypermodernOK, I'm drafting up a proposal, and I have the floor plans, and will make a mockup in the next few days, this is a very helpful conversation, Wolfspraul01:54
hypermodernthank you.01:54
hypermodernWhat is the refresh rate on MM101:54
hypermodern60fps?01:54
wolfspraulno no01:55
wolfspraulI don't think so01:55
wolfspraulmaybe 24fps?01:55
hypermodernOK.01:55
hypermodernas long as it's over 12!01:55
wolfspraulit is01:55
hypermodernthat's where images flow01:55
wolfspraulthough in 1024x768 it goes down to 4 or so :-)01:55
wolfspraulI think01:55
wolfspraulbut since it operates at 640x480, you get your >1201:56
hypermodernwhat's the default then to get 24?01:56
hypermodernOK01:56
hypermoderngotcha01:56
wolfspraulit's just about performance here and there01:56
hypermodern240x480 gives 24 fps?01:56
wolfspraulSebastien works intensively on this stuff, we try to up the performance01:56
wolfspraul640x48001:56
wolfspraulI *think* it was 24fps, but not 100% sure now01:56
hypermodernOK no problem01:56
wolfspraulthe bottleneck is memory bandwidth01:56
wpwraki also think it's 24 ... checking ...01:57
sb0640x480 @24fps works, yes01:57
wolfspraulat some point I think somewhat soon (?) we plan to switch to a new version of the SoC with faster memory01:57
wolfspraulbut let's say that will be another month or two out, I think01:57
hypermodernCool thank sb001:57
hypermodernand is there any limit on how long a jpeg image can be held i.e. is there any risk of "burn in" like a plasma tv?01:58
sb0probably more, I'm back from the US only on May 13th, and the schedule is already quite packed01:58
sb0I won't have time to write much code01:58
wolfspraulsure, but it's moving, and in the meantime we try to improve the environment and platform elsewhere. one by one...01:58
sb0then we need the old cores ported, at least the important ones01:58
wolfspraulyep01:59
sb0and dataflow synthesis in migen to rewrite the hw acceleration properly01:59
wolfspraulas long as migen is not aborted, it doesn't really matter whether it takes another month or two somewhere, since we have so many other good short targets that can make a difference to users today02:00
wpwrakhypermodern: depends entirely on your display technology. i can't imagine any way in which a static/repetitive image could upset the M1 itself02:00
hypermodernOK.02:01
hypermodernthat's what I fugured02:01
hypermodernI knew it can effect certain display types, but I figured not the chip itself02:01
hypermodernthank you for the clarification02:01
hypermodernIs there any vector support for .svg?02:01
hypermodernor only png and .jpg?02:01
wolfspraulon the m1? no svg02:03
wpwrakonly pixels, no direct support for vector. there's some vector drawing for the audio signal, but i doubt you could use that for much02:03
hypermodernOK02:03
wpwrakwolfspraul: we may need migen to verify the M1r4 boards, though02:04
hypermodernwould it be enough to just have a series of lines rendered via vector and a second set rendered over the top off by a few degrees?02:04
hypermodernsimilar to the images of lines I sent you?02:04
wpwrakhypermodern: i'm not sure you have enough control over lines to do such things. also, lines are drawn by software, so that's quite slow.02:07
hypermodernSlow is fine02:07
hypermodernslow may actually be better wpwrak.02:08
wpwrakhmm :)02:08
hypermoderntrying to render something like this http://en.wikipedia.org/wiki/Moir%C3%A9_pattern02:08
hypermodernwith math see the calculations of parallel patterns.02:08
hypermodernslow will give time for the eyes to perceptually burn in02:08
hypermoderncontributing to the movement02:08
hypermoderneven though the image is static!02:08
hypermodernSo what I'm wondering is if MM1 can render static lines at maybe 4 fps (or slower is fine)02:09
wpwrakyou may have more luck with precomputed images. you could still combine them with the video in image.02:09
hypermoderngreat idea,from two channels right?02:10
hypermodernso if you had two transparent png that would work?02:10
wpwrakyou may want to change the code for that, instead of trying to make the existing system do that02:10
hypermodernThe problem is I don't know how to code02:10
hypermodernI know how to make images though...02:10
hypermodern:-D02:10
wpwraktransparency is actually alpha-blending. so you get a merged image. but yes, you have two image channels there to play with02:11
wpwrakah, without coding skills, this may be difficult :) alas, the M1 code probably isn't even a particularly good place to get started. it's quite clean, though. but sometimes a bit complex.02:12
hypermodernand I have an idea of a looping static image installation02:13
hypermodernwhich is a video synthesizer not making video digitally02:13
hypermodernbut through loopback degradation and moiré patterns02:13
hypermodernso the actual hardware drives the visual effects and the *perception* and subsequent retinal fatigue of the viewer makes it move02:14
hypermodernThank you for the input wpwrak02:14
wpwrakno problem. hope it's useful :)02:15
hypermodernso to make sure I understand what you're saying I'd like to go through it02:15
wpwrakyou probably just have to experiment a bit to get a feeling for what works and what doesn't02:15
hypermodernin channel 1 I put 180 degree vertical series of lines02:15
wpwrakfor pattern generation, i'd suggest trying to make some PNGs02:16
hypermodernand in channel 2 I put a 175 degree diagnal02:16
hypermodernthey both have transparent backgrounds02:16
hypermodernand then I can make a single image using the alpha blend correct?02:16
wpwrakyou can have a large set of images and pick each channel from that set. so you can have dynamic effects - or just a collection for trial and error02:16
hypermodernI see, do you by chance know what the max memory is for images that ar 1024x768?02:17
hypermodernmaybe something like 40?02:17
wpwraki'm not sure if transparency in images is used by M1. but since the blending is additive, black means that the respective image doesn't add anything02:18
hypermodernAh, good tip. thank you.02:18
wpwrakthe rendering only runs at 640x48002:18
hypermodernOk02:18
hypermodernhow many images at that res?02:18
hypermodernRoughly speakin02:19
wpwrakand i think the effective resolution for images is only around 300x216. but i don't know where that limit comes from02:19
hypermodernno problem...I just need to know how many roughly can be store in the mm1 memory02:20
hypermodernto be mixed02:20
wpwraknot sure ... maybe around 10002:21
hypermodernPerfect02:21
hypermodernThank you.02:21
wpwraki only went to ~30 ;-)02:22
hypermodernOK...this gives me a lot more perspective.  Thank you wpwrak and wolfspraul02:22
hypermodernI'll be back with a better understanding once I draw/write out my goals for the installation02:22
wolfspraulthanks a lot!02:29
hypermodernYou're welcome ;)02:29
wolfspraulwith m1 I think what you need to expect is that you want to try a lot of things (assuming you have that motivation)02:30
wolfsprauland in many of those cases, you run into 'missing' features02:30
wolfsprauleventually you hit the bottom, and are 100% aware of what m1 can do02:30
wolfspraulfrom then on it goes UPWARDS! :-)02:30
hypermodernWell at this point it's all on paper02:30
wolfspraulbecause the thing is actually very cool, but it takes time to get out of the hundreds of perceptions set by other computers02:30
hypermodernso I am trying to figure out the parameters of what the tool *can't* do and then I get my freedom02:31
wolfsprauloh it's great, you are doing exactly the right stuff with m102:31
hypermodernthat's always true with any tool02:31
wolfspraulyes02:31
wolfspraulgood02:31
GitHub27[board-m1] adamwang pushed 1 new commit to master: https://github.com/milkymist/board-m1/commit/78ef08946f92a24032c5ff89f2d7e01adc1aca4e06:51
GitHub27[board-m1/master] added Field for 'P/N' to part number and 'Smt' to record if DNP, correct connections. - Adam Wang06:51
GitHub194[board-m1] xiangfu pushed 1 new commit to master: https://github.com/milkymist/board-m1/commit/8e020ee2313bcf77a7d8df99364429a534f5828208:04
GitHub194[board-m1/master] remove common.lib. use the KiCAD default device.lib - Xiangfu08:04
GitHub119[board-m1] xiangfu pushed 1 new commit to master: https://github.com/milkymist/board-m1/commit/d310ea06f35d28997824d4d2557184d6e44dc9d708:05
GitHub119[board-m1/master] add m1-cache.lib to .gitignore - Xiangfu08:05
xiangfuwpwrak, Hi08:08
xiangfuwhy you add './' to the 'components.pro' Library?08:08
GitHub3[board-m1] xiangfu pushed 1 new commit to master: https://github.com/milkymist/board-m1/commit/05fae055de763a3bb56d3b1eba9cd7e093c2c06708:18
GitHub3[board-m1/master] Revert "remove common.lib. use the KiCAD default device.lib" - Xiangfu08:18
GitHub189[board-m1] xiangfu pushed 1 new commit to master: https://github.com/milkymist/board-m1/commit/9b6bf67f86265e2add950452bd051849639acde609:10
GitHub189[board-m1/master] MISC: add LED matrix - Xiangfu09:10
GitHub183[board-m1] adamwang pushed 2 new commits to master: https://github.com/milkymist/board-m1/compare/9b6bf67...038fea110:38
GitHub183[board-m1/master] added external USB ports A/B - Adam Wang10:38
GitHub183[board-m1/master] Merge branch 'master' of github.com:milkymist/board-m1 - Adam Wang10:38
GitHub26[board-m1] adamwang pushed 1 new commit to master: https://github.com/milkymist/board-m1/commit/35af0750795e6cf4ca31b305d84d5c231611f8a912:33
GitHub26[board-m1/master] added external USB ports C/D - Adam Wang12:33
GitHub43[board-m1] adamwang pushed 1 new commit to master: https://github.com/milkymist/board-m1/commit/430b1c9b168452c91b8b40cd5a9ecc6346aad53012:53
GitHub43[board-m1/master] added internal USB ports E/F - Adam Wang12:53
--- Sat Apr 14 201200:00

Generated by irclog2html.py 2.9.2 by Marius Gedminas - find it at mg.pov.lt!