| [01:17] | <Hostile> | I set up xmms2 on my OSD |
| [01:17] | <Hostile> | it runs, I can connect to it |
| [01:17] | <Hostile> | but it doesnt play? |
| [01:18] | <daurnimator> | yay? |
| [01:20] | <Hostile> | DEBUG: src/xmms/output.c:757: No plugin to set status on.. |
| [01:20] | <Hostile> | when I press play on my client ^_^ |
| [01:21] | <crweb> | hostile sounds like you need the xmms2 -> nmsd files |
| [01:22] | <Hostile> | crweb: care to explain? :) |
| [01:22] | <crweb> | well, you just can't build xmms2 and expect it to work. You have to have output plugins |
| [01:22] | <crweb> | osd doesn't use linux sound drivers, so out of the box xmms won't work |
| [01:22] | <Hostile> | crweb: oh. I didn't know. I just read the tutorial on the xmms2 wiki |
| [01:22] | <Hostile> | and I followed it by the book |
| [01:23] | <crweb> | you'll need the xmms output drivers for the osd which anders_ does have i think |
| [01:23] | <Hostile> | Ill get them when I see him next, he'll probably be around tomorrow |
| [01:24] | <crweb> | i've got to go. I'm borrowing a friends desktop without permission. |
| [01:24] | <crweb> | he went to bed and didn't give me his wireless key and I'm very far from home :( |
| [01:24] | <Hostile> | haha night |
| [01:25] | <crweb> | night :) |
| [05:12] | <anders_> | nerochiaro: You could point Hostile to wiki.xmms2.xmms.se next time :) |
| [08:14] | <GuestN638> | when i'm trying to 'make all' from linux-r3-main-app i recive massage : make: Warning: File `../src/ui/ui.h` has modification time 1.3e+05 s in the future. nothing more. what i need to do? |
| [08:16] | <GuestN638> | it's about 20 min only that massage |
| [08:18] | <GuestN638> | when i trying make install its same massage |
| [08:19] | <GuestN638> | anybody can help me? |
| [08:50] | <nerochiaro> | GuestN638: you can try to just use "touch" on it |
| [08:51] | <nerochiaro> | anders_: he went there already on his own :) |
| [08:52] | <nerochiaro> | DeepB: thanks (many hours later ;)9 |
| [09:19] | <GuestN638> | tnx nerochiaro, just changed date setting. |
| [09:39] | <GuestN638> | i need to untar neuros-osd.tar.bz2 to `/Scratchbox-Home? |
| [09:40] | <GuestN638> | in VM |
| [09:43] | <GuestN638> | or i can do it out of scratchbox? |
| [09:57] | <Shadow12> | hi all |
| [10:01] | <GuestN638> | hi |
| [10:08] | <swoag> | hi, all |
| [10:13] | <swoag> | Just got back from TIDC, hasn't got a chance to look into all the osdmain refactoring stuff, which I think is the main thing we are going to talk about today anyway? |
| [10:14] | <swoag> | as a side note, team has made lots of changes to current OSD GUI, and are in the middle of integrating latest vendor codec/framework release. |
| [10:14] | <sourcerror> | hi |
| [10:16] | <JoeBorn> | hi all |
| [10:16] | <crweb> | Hey |
| [10:18] | <swoag> | before we dive into the osdmain refactoring discussion, got a quick question, |
| [10:18] | <swoag> | does anyone have experiences with Gstreamer? |
| [10:18] | <Ycros> | I've messed with it |
| [10:18] | <Ycros> | not too much on the programming side |
| [10:19] | <crweb> | I have a little. |
| [10:21] | <swoag> | how mature is it? for example, what type of file parser plugins does it support? |
| [10:21] | <crweb> | i don't really support things by the gnome foundation. Also, gstreamer is known to have an ABI that just changes to often |
| [10:21] | <swoag> | ABI? |
| [10:22] | <Ycros> | I don't think gstreamer is done my the gnome foundation, it's developed by fluendo |
| [10:22] | <crweb> | Ycros: its the connection to freedesktop that i really dont' like much. And the influence of gnome devs on gstreamer |
| [10:22] | <Ycros> | primarily anyway |
| [10:22] | <Ycros> | I know quite a few gstreamer developers in person |
| [10:23] | <crweb> | swoag: application binary interface |
| [10:23] | <Ycros> | it's much better now than it used to be |
| [10:23] | <Ycros> | what's wrong with freedesktop? |
| [10:23] | <Ycros> | anyway. |
| [10:23] | <crweb> | Ycros: not now. |
| [10:24] | <Ycros> | crweb: I agree, thus "anyway." |
| [10:24] | <Ycros> | swoag: are you looking to use it to parse container formats? |
| [10:24] | <swoag> | Just wondering if it is a good idea to use Gstreamer to replace NMS... |
| [10:24] | <Ycros> | probably not |
| [10:25] | <Ycros> | infact no, not with the way your codecs work |
| [10:25] | <crweb> | swoag: yeah, not with the codec kernel modules |
| [10:25] | <crweb> | swoag: having the codec kernel modules, you already have 90% of what gstreamer is. |
| [10:26] | <swoag> | from what I understand, Gstreamer is really a light framework to provide a high-level abstraction for |
| [10:26] | <swoag> | multimedia funcitons. |
| [10:27] | <swoag> | thus it is basically doing what NMS does, well more because it also handles the A/V sync for example. |
| [10:27] | <Ycros> | swoag: basically, gstreamer has the concept of elements and building pipelines out of elements |
| [10:27] | <Ycros> | elements can be anything like sources, codecs, effects, sinks (destinations) |
| [10:28] | <Ycros> | and you can chain them together |
| [10:28] | <Ycros> | it does do sync and a whole bunch of other stuff which I haven't looked into in great detail |
| [10:28] | <Ycros> | I don't think that's going to help you |
| [10:28] | <swoag> | Ycros, crweb: has any of you played with its plugins? |
| [10:28] | <Ycros> | don't you feed the dsp a file, container and all? |
| [10:28] | <crweb> | swoag: that what i meant. the plugins, are codecs |
| [10:29] | <Ycros> | I've played a bit with plugins, and building pipelines |
| [10:29] | <Ycros> | but not much |
| [10:29] | <Ycros> | managed to get a simple shoutcast relay going using the gst-test cli tool |
| [10:29] | <swoag> | crweb, I guess plugins cover more than codecs. |
| [10:30] | <crweb> | swoag: there are other plugins but stuff for alsa, firewire, etc |
| [10:30] | <swoag> | again, my guess would be at least 3 types of plugins, |
| [10:30] | <swoag> | codec, HW, and file parsers --- for decoding pipe line |
| [10:30] | <crweb> | swoag: if you were going to use gstreamer, you'd probably create a nms plugin that handles all file types |
| [10:30] | <Ycros> | swoag: and effects I think as well |
| [10:31] | <Ycros> | aye |
| [10:31] | <Ycros> | you'd have one element which wraps the dsp |
| [10:31] | <Ycros> | and then everything else can work around that |
| [10:31] | <Ycros> | that would make sense, but I'm still not sure what you want to get out of gstreamer that you don't already get |
| [10:31] | <crweb> | but the only benifit really would be that, you have the gstreamer api |
| [10:31] | <Ycros> | hmm k |
| [10:32] | <crweb> | which isn't much of a benifit since the binary interface is what causes so many problems for developers |
| [10:32] | <Ycros> | you do get access to demuxers |
| [10:32] | <Ycros> | crweb: I think it's fairly stable now |
| [10:33] | <Ycros> | crweb: but I could ask the gstreamer devs about it |
| [10:33] | <Ycros> | also, you gain interesting network streaming plugins |
| [10:33] | <Ycros> | ... subtitle parsing... do we do subtitles? |
| [10:33] | <crweb> | Ycros: that gets a little more complicated |
| [10:33] | <crweb> | Ycros: cause your media handler/codecs would have to support the streaming |
| [10:34] | <Ycros> | tag parsing |
| [10:34] | <Ycros> | I'm just scrolling through the gstreamer elements and mentioning anything that seems might be useful |
| [10:34] | <swoag> | Using Gstreamer at least provides us more standard programming APIs (their element/link/pipe model seems very flexible), |
| [10:34] | <swoag> | and provides us more file format support out of box. |
| [10:35] | <crweb> | swoag: whats the benifit with support more file formats if the dsp can't play them? |
| [10:35] | <swoag> | say there is a .XYZ file that contains MPEG4 video and MP3 audio, if Gstreamer has that support, we'd just use it out of box. |
| [10:36] | <Ycros> | yeah |
| [10:36] | <Ycros> | swoag: I don't think you're going to be able to easily integrate it |
| [10:36] | <swoag> | Ycros, why? |
| [10:36] | <Ycros> | because of the way the codecs work |
| [10:37] | <Ycros> | then again... hmm |
| [10:37] | <swoag> | what happens if we 'can' wrap the Codecs in V4Linux or OSS interface? |
| [10:38] | <sourcerror> | so on the OSD the A/V sync problem is not due to the codecs but due to NMS? |
| [10:39] | <swoag> | sourcerror, A/V sync problem is not due to the codecs, nor because of NMS |
| [10:39] | <swoag> | sourcerror, problem is from the middle layer between NMS and the codecs |
| [10:39] | <Ycros> | I don't really know how you feed data to the codecs, I think someone once mentioned you just point them at a file, but I could be wrong |
| [10:39] | <sourcerror> | ingenient layer or neuros layer? |
| [10:39] | <Ycros> | swoag: who's layer is that? |
| [10:40] | <swoag> | and I am thinking to ditch that middle layer (vendor proprietary) and switch to Gstreamer. |
| [10:40] | <sourcerror> | ah. |
| [10:40] | <crweb> | swoag: well, theres no gstreamer plugins that will work with our dsp |
| [10:41] | <swoag> | crweb, sorry, I wasn't clear on the question, |
| [10:41] | <swoag> | this question is actually a question for OSD2.0. ;-) |
| [10:41] | <crweb> | swoag: oh, well you won't have to work much. davinci already has gstreamer support is what i hear |
| [10:42] | <Ycros> | crweb: no, but I think the idea is we wrap ours, and then use all the other interesting bits |
| [10:42] | <swoag> | crweb, sort of. that is why I want to see what you guys think. |
| [10:42] | <Ycros> | swoag: oh, osd 2.0 |
| [10:43] | <Ycros> | that's different then |
| [10:43] | <Ycros> | I haven't heard anything about the 2.0 (I've been busy and not here for quite a while) |
| [10:44] | <swoag> | anyway, just wanted to get some quick thoughts on Gstreamer, |
| [10:44] | <swoag> | let's switch back to osdmain refactoring? |
| [10:44] | <Ycros> | well, I like gstreamer |
| [10:44] | <Ycros> | :P |
| [10:45] | <crweb> | swoag: it would be a good step. It is a good project. |
| [10:45] | <Ycros> | okay, osdmain refactoring |
| [10:46] | <swoag> | so, what are the major points in regard to that? can someone summarize? |
| [10:46] | <swoag> | (or I should look at the wiki page? looking...) |
| [10:46] | <crweb> | wiki.neurostechnology.com |
| [10:47] | <crweb> | they pretty much covered all my points before i got to write them down :) |
| [10:49] | <swoag> | as I am reading, |
| [10:49] | <swoag> | MVC, yes, that is the implementation model. |
| [10:50] | <swoag> | however, from my limited Java experience, MVC is good in theory and hard to achieve in practice, |
| [10:51] | <crweb> | swoag: MVC is in qt, gtk, java, etc nowdays |
| [10:51] | <swoag> | separating V from MC is good enough, I guess. |
| [10:52] | <Ycros> | swoag: implementations differ slightly |
| [10:52] | <Ycros> | I know java does it a bit differently |
| [10:53] | <swoag> | Ycros, ya, and that is what I referred to. |
| [10:53] | <Ycros> | (assuming you're talking about the way swing does it) |
| [10:53] | <crweb> | doc.trolltech.com |
| [10:54] | <crweb> | i've been using mvc a lot in qt lately, i like it a lot. |
| [10:54] | <Ycros> | the view and controller in swing are collapsed into the same class |
| [10:55] | <Ycros> | hehe |
| [10:55] | <Ycros> | but that's irrelevant |
| [10:55] | <Ycros> | I guess |
| [10:56] | <Ycros> | crweb: oh, I see qt does it too then |
| [10:56] | <Ycros> | makes sense in the case of gui components |
| [10:56] | <sourcerror> | and even if they are in the same class you can have separation of data model even if it is an api to r/w data structures. it allows multiple access to the model. |
| [10:56] | <swoag> | I personally think it is crucial to separate the view part out, as long as MC part is done in OO way, porting/expanding is pretty easy. |
| [10:56] | <Ycros> | aye |
| [10:57] | <crweb> | i agree. |
| [10:57] | <swoag> | strictly applying MVC to each piece of the project will do nothing but slowing down the development significantly. ;-) |
| [10:58] | <sourcerror> | hmm... |
| [10:58] | <crweb> | well, qt compbines the vc which makes sense to me, but i use it regularly |
| [10:59] | <swoag> | alright, we settled on this one then. |
| [10:59] | <crweb> | models shouldn't have controls. the controls can change depending on the view. |
| [11:00] | <swoag> | moving forward to Nano-X WM... |
| [11:01] | <swoag> | I am not working on it any more, but yes, it will be in place. |
| [11:01] | <swoag> | - Split into multiple apps |
| [11:02] | <swoag> | to start with, we might take Media player out first. |
| [11:03] | <swoag> | - Abstraction for config/setting scrns |
| [11:04] | <swoag> | This may be something down the road, the Graphic designer is still actively changing the GUI, |
| [11:05] | <swoag> | those that are sharing similar looking today may change tomorrow. |
| [11:05] | <swoag> | thus a generic config/settings scrn may not worth the effort? |
| [11:05] | <crweb> | swoag: was the abstraction for configure screens, or config functions? |
| [11:06] | <swoag> | idea was from sourcerror, thought he meant the scrns? |
| [11:06] | <crweb> | swoag: qt has a nice settings interface where you have a settings object and just use setValue("key","value") |
| [11:06] | <sourcerror> | I meant that you can abstract creating a screen with a list of settings... |
| [11:07] | <sourcerror> | just feed it a data structure and you have any number of config screens you want. |
| [11:07] | <swoag> | sourcerror, that is what I understood, but as I explained, not many of them share the same looking. |
| [11:07] | <sourcerror> | have different kind of data types INT, STRING, IPADDR, DOUBLE, ... |
| [11:07] | <sourcerror> | MEDIA_PATH, MEDIA_DEVICE |
| [11:08] | <sourcerror> | TIME, TIME_DATE |
| [11:08] | <crweb> | those really aren't going to be useful outside of the main app though |
| [11:08] | <Ycros> | it's another model/view abstraction |
| [11:08] | <sourcerror> | yea any sub-app could use it for quickly creating a configuration and not even need to write much Controller View code. |
| [11:09] | <sourcerror> | grok MVC :) |
| [11:11] | <cr-tablet> | what was the last thing i said? |
| [11:12] | <swoag> | cr-tablet == crweb? |
| [11:12] | <cr-tablet> | oh, yeah |
| [11:12] | <crweb> | not sure what happened |
| [11:13] | <swoag> | to abstract on the MC layer for all those settings? |
| [11:13] | <swoag> | I believe that is what you meant, crweb? |
| [11:14] | <crweb> | basically |
| [11:14] | <crweb> | we can't predict every setting a developer may want to use |
| [11:14] | <crweb> | and each app will be different.... |
| [11:15] | <crweb> | we'd never beable to provide enough key's in the data structure to make it a useful system |
| [11:15] | <crweb> | which is why most go for a developer supplys a key string, and T value |
| [11:16] | <sourcerror> | no keys. you don't predict all settings. you create a data structure that lists different setting types, label, and a pointer to where to write the data back to. { type, label, &value } Pass a list of these to a config screen that accepts it and builds the screen. It can even manage splititng it into multiple pages. |
| [11:16] | <crweb> | you're still not going to predict the format of every setting that needs to be viewed |
| [11:17] | <sourcerror> | some things are custom if you want to get fancy. But the OSD should have a similar look and feel for most things anyway. |
| [11:17] | <crweb> | i don't think it should |
| [11:17] | <crweb> | the osd should across its own apps |
| [11:18] | <sourcerror> | different argument. we were talking about OSDmain and sub apps that want to play along wiht the look and feel provided. |
| [11:18] | <crweb> | but i don't see this being useful to the community, as they probably won't look like the osd apps to begin with |
| [11:18] | <swoag> | most of the duplicated code really is because of the widget, |
| [11:18] | <crweb> | community apps i mean, probably won't look anything like the osd apps, so why should thier settings screens? |
| [11:18] | <swoag> | FRAME is currently not able to manage focus for its children, |
| [11:19] | <swoag> | that is why most of the duplicated code comes from. |
| [11:19] | <swoag> | it is in the plan to fix that. |
| [11:19] | <sourcerror> | swoag: but this can also manage layout which is good right? |
| [11:20] | <swoag> | layout management will probably not be part of the support. |
| [11:21] | <crweb> | drawing the config screen shouldn't be complicated enough to warrant an autogenerating system |
| [11:21] | <sourcerror> | no I mean abstracting a config screen maker will do the layout and this is good, right? even less boiler plate code. |
| [11:21] | <swoag> | anyway, config/settings refactoring may not seem that important as soon as settings becomes a standalone app. |
| [11:22] | <swoag> | let's move on to the cooler part? |
| [11:22] | <sourcerror> | you get consistency and simple abstraction for repetitive (read 'error prone') copy paste code. |
| [11:22] | <crweb> | sourcerror but its not repedative. You only need 1 ip address config screen |
| [11:23] | <sourcerror> | I can't convince you of the value of abstractions. |
| [11:23] | <crweb> | sourcerror: auto generation of screens isn't abstraction though. |
| [11:24] | <crweb> | swoag: yeah, the seperation of libs into parts is my major push |
| [11:24] | <swoag> | alright, |
| [11:24] | <swoag> | - Splitting cooler |
| [11:25] | <swoag> | how about splitting it into 3 parts? |
| [11:25] | <crweb> | swoag: gui code shouold be in gui libs, media code in media libs, network code in network |
| [11:25] | <swoag> | nmc, utility, nx |
| [11:26] | <swoag> | actually, IMO, or in the MC-V view, we only need to split it into two parts, |
| [11:26] | <crweb> | swoag: i was thinking: cooler-media(nms, IR blasting, scheduling), cooler-gui (widgets, layouts etc), |
| [11:26] | <swoag> | utility and nx |
| [11:27] | <crweb> | swoag: well the more parts the better, lets us develop without having aspects we dont' need |
| [11:27] | <swoag> | splitting cooler further may get us confusion in the future, or get us into an endless-splitting situationg? ;-) |
| [11:27] | <crweb> | i don't think it will. most toolkits are split like this |
| [11:28] | <swoag> | today cooler-media contains nms, IR, scheduling, |
| [11:28] | <swoag> | tomorrow, IR grows, and we need a cooler-IR lib? |
| [11:28] | <crweb> | swoag: i mean, if my firmware doesn't need cooler-gui then i don't have to put it on flash. |
| [11:28] | <crweb> | swoag: no, you name by system. not by feature |
| [11:29] | <swoag> | crweb, ya, isn't good enough to have two systems? utility and gui? |
| [11:29] | <swoag> | GUI is really the biggest problem of current cooler, I think. |
| [11:30] | <crweb> | for example, qt-core (non-gui code like QString, QSettings, etc), qt-sql (sql abstrations) qt-gui (widgets), qt-network( tcp, udp etc) |
| [11:30] | <crweb> | swoag: well, kinda. 3 would be better |
| [11:30] | <crweb> | swoag: multimedia is a system, and gui is a system. so where do we put things like custom data structures that aren't media, or gui? |
| [11:31] | <crweb> | but they are still useful |
| [11:31] | <crweb> | say, cooler's functions for using samba |
| [11:31] | <crweb> | you could throw it in to cooler-media.. however, that would make me duplicate a ton of binary code as, other toolkits have samba support |
| [11:32] | <crweb> | i should beable to use the media system, and expect to only have the media system |
| [11:32] | <crweb> | especially with it being embedded |
| [11:33] | <swoag> | what is your suggestion again? media, gui, and? |
| [11:34] | <crweb> | i dunno. cooler-core |
| [11:34] | <swoag> | and core contains? |
| [11:34] | <swoag> | everything else? |
| [11:34] | <crweb> | stuff like.. settings structures |
| [11:34] | <crweb> | code that is used in gui's but isn't actually widgets |
| [11:34] | <crweb> | but could be useful to other toolkits |
| [11:35] | <Shadow12> | Maybe a cooler-extra if necessary later? |
| [11:35] | <crweb> | like the settings i talked about |
| [11:35] | <swoag> | well, I really think most settings belong to osdmain. |
| [11:35] | <crweb> | swoag: you're still thinking osdmain |
| [11:35] | <crweb> | swoag: you are building a toolkit for other devs to use |
| [11:36] | <crweb> | swoag: pretend there is no osdmain. How is osdmain going to write and read to a settings file? |
| [11:36] | <swoag> | crweb, understood, but depending on what level you want to put this support at. |
| [11:36] | <crweb> | i'm not talking about showing the settings |
| [11:37] | <crweb> | the level i want it at is, a developer could call readsetting(x); |
| [11:37] | <crweb> | and have the info |
| [11:37] | <swoag> | in my view, cooler only provides you the basics to help build _your_ SW, while osdmain is _the_ shipped SW from Neuros. |
| [11:37] | <swoag> | thus anything that is specific to osdmain does not need to be exposed into cooler. |
| [11:37] | <crweb> | swoag: right. why can't we share a settings structure between the two? |
| [11:38] | <crweb> | swoag: osdmain should just be widgets |
| [11:38] | <crweb> | swoag: which is the entire point of this discussion. The toolkit should have the common tools. |
| [11:38] | <swoag> | I don't agree with you there. |
| [11:38] | <crweb> | thats why its called a toolkit |
| [11:39] | <crweb> | swoag: well, my statement is a little extreme, obviously there is logic code and stuff in osdmain |
| [11:39] | <swoag> | Take OSD as a PC for a moment, osdmain will be the default Media player, |
| [11:39] | <swoag> | most of the settings for this media player shall not be exposed, IMO. |
| [11:39] | <swoag> | in stead, |
| [11:40] | <swoag> | cooler provides you support to access your HDD, network, multimedia HW, and a GUI toolkit etc. |
| [11:40] | <crweb> | swoag: again i think you're thinking to specific |
| [11:41] | <crweb> | swoag: a settings doesn't actually have "any settings" |
| [11:41] | <crweb> | its just a interface for developers to use to easily read and write a file that stores settings |
| [11:42] | <swoag> | crweb, no, I am not only referring to specific settings (like playmode), |
| [11:42] | <swoag> | but also the way you store away the key/value pair, |
| [11:42] | <swoag> | to me it is an osdmain layer shared code. |
| [11:42] | <crweb> | i don't think theres anything wrong with providing an interface to easily read and write settings in cooler that developers can use to easily write/read stored info |
| [11:43] | <crweb> | swoag: osdmain settings sure. but whats under those settings, where are they stored? In a file? with key,value? why should every application written have to write a parser and writer? |
| [11:43] | <swoag> | obviously it is a vague line to draw. we surely can pulling that out to cooler, I just want to limit cooler to more HW specific code, or platform code, |
| [11:44] | <swoag> | for example, what if you don't like the key/value approach? |
| [11:44] | <crweb> | swoag: it doesn't matter, the developer never sees the key/value |
| [11:44] | <crweb> | swoag: and if he/she doesn't like it, then it doesn't "have" to be used |
| [11:44] | <crweb> | its a toolkit. |
| [11:46] | <crweb> | if you're going to limit it that much to only HW and only platform stuff that is useful for building osdmain, i don't think its fair to call it a toolkit. nor can we expect developers to really grasp it as a viable system to develop with |
| [11:47] | <crweb> | you are right osdmain has its own settings, for playing etc |
| [11:47] | <crweb> | but why can't osdmain save/read from the cooler provided settings file interface? |
| [11:47] | <swoag> | no, no reason cant. |
| [11:48] | <swoag> | as I said, it is a vague line to draw at, |
| [11:48] | <crweb> | as long as it doesn't spill into providing "exact" settings. i don't think its to vague.. |
| [11:48] | <swoag> | key/value settings is not a good example (I think it'd be better moved up to cooler), |
| [11:50] | <crweb> | well thats all i'm talking about. Just functions for writing and reading from file.config that is a file that uses the same format as the read/write functions |
| [11:50] | <swoag> | what I am saying is I don't think it is a good idea to move all osdmain shared code (currently under src/system, and src/settings) up into cooler. |
| [11:50] | <crweb> | right, i'm talking about tools |
| [11:50] | <crweb> | i could care less about what varilable and values osdmain uses for something |
| [11:51] | <swoag> | so, back to the splitting. |
| [11:51] | <crweb> | library code: store this value in this key in y file |
| [11:52] | <crweb> | yeah, so something like that would be in cooler-core |
| [11:52] | <crweb> | its non-gui and non-media |
| [11:52] | <crweb> | just simple library provided to ease development |
| [11:53] | <crweb> | and as Shadow12 suggested maybe one day an extras |
| [11:54] | <crweb> | which is just stuff that that is used in osdmain or other apps that could be useful for other apps |
| [11:55] | <swoag> | alright, let's start with the following, |
| [11:55] | <swoag> | cooler-core: |
| [11:55] | <swoag> | hw specific/platform code |
| [11:56] | <swoag> | generic system code (like the settings example) |
| [11:56] | <swoag> | cooler-gui: |
| [11:56] | <swoag> | cooler-media: |
| [11:56] | <swoag> | nms client and shared code |
| [11:57] | <swoag> | cooler-extra: |
| [11:57] | <swoag> | other? |
| [11:57] | <crweb> | sounds good to me |
| [11:57] | <crweb> | one question though |
| [11:57] | <Shadow12> | Sounds good here too |
| [11:57] | <crweb> | what exactly is hw specific code? |
| [11:57] | <swoag> | is video signal present? |
| [11:57] | <crweb> | swoag: i'm curious because, if we are going to use cooler on other hardware eventually in the future |
| [11:57] | <swoag> | turn on/off LED |
| [11:58] | <crweb> | it would probably be nice to have the hw specific stuff in something hw specific |
| [11:58] | <swoag> | good point. |
| [11:58] | <crweb> | that way the libs are across all hardware |
| [11:58] | <swoag> | cooler-hw? |
| [11:59] | <crweb> | or abstraction plugins? |
| [11:59] | <sourcerror> | so where does the IR go in this scheme... cooler-hw? |
| [11:59] | <crweb> | yes, actually both |
| [11:59] | <crweb> | swoag: cooler-hw, and have cooler-hw an abstraction |
| [11:59] | <swoag> | IR support goes to cooler-hw. |
| [11:59] | * nerochiaro just got back, is catching up | |
| [12:00] | <crweb> | swoag: that way cooler-hw we can just use the same api, but have cooler-hw use plugins for different hardware |
| [12:00] | <swoag> | and yes it should be an HAL. |
| [12:00] | <crweb> | yeah, that would be excellent |
| [12:00] | <Shadow12> | cooler-media,cooler-hw,cooler-gui,cooler-core and cooler-extra |
| [12:00] | <Shadow12> | thats it right? |
| [12:01] | <crweb> | should we name it hw? |
| [12:01] | <crweb> | why not cooler-hal |
| [12:01] | <Shadow12> | ok |
| [12:01] | <swoag> | agreed. |
| [12:01] | <Shadow12> | cooler-media,cooler-hal,cooler-gui,cooler-core and cooler-extra |
| [12:01] | <crweb> | sounds good to me |
| [12:01] | <crweb> | most excellent |
| [12:01] | <swoag> | ok with me. |
| [12:02] | <sourcerror> | by the way, if you want to hide all the libs from an app that doesn't care you can have a shell lib 'cooler' that links to the others. |
| [12:02] | <crweb> | going to help with newbie devs too |
| [12:02] | <swoag> | sorry, I've got about 15 minutes left... |
| [12:02] | <crweb> | they'll be able to say, i want to work on ir, and know exactly where to look |
| [12:03] | <swoag> | the rest of the things on the list seem to be straight forward and un-disputive? |
| [12:03] | <swoag> | -Removal of NMS |
| [12:03] | <swoag> | is this still the case with a cooler-media in place? |
| [12:04] | ||