Current Server Time: 03:30 (Central Europe)

#apertus IRC Channel Logs

2018/03/07

Timezone: UTC


23:10
Arun__
left the channel
23:36
slikdigit
joined the channel
00:05
rton93
left the channel
00:20
TofuLynx
left the channel
00:32
DrLuke
left the channel
00:33
DrLuke
joined the channel
00:36
Arun___
joined the channel
02:16
slikdigit
left the channel
03:45
supragya
joined the channel
04:23
supragya
left the channel
04:35
supragya
joined the channel
05:11
sebix
joined the channel
05:11
sebix
left the channel
05:11
sebix
joined the channel
05:19
supragya
BAndiT1983|away, able to write headers, made AVIEncode class here: https://github.com/supragya/libfuse-FrameServer/tree/master/AVIWriter
05:19
supragya
suggest you pull this commit and give feedback
05:34
supragya
BAndiT1983|away, I have a few questions regarding some of the headers and format of frame
05:35
supragya
bbl
05:39
supragya
left the channel
05:53
nmdis1999
joined the channel
05:53
nmdis1999
Students application deadline extended to 27?
05:54
nmdis1999
left the channel
06:21
sebix
left the channel
06:51
supragya
joined the channel
06:51
supragya
nmdis1999, It had always been till 27
06:51
supragya
12 - 27 application submission period
07:16
supragya
left the channel
07:28
BAndiT1983|away
changed nick to: BAndiT1983
07:30
BAndiT1983
supragya, will take a look today at evening at earliest, when i'm on the train back home
07:33
BAndiT1983
supragya, by the way, why do you use malloc and free? what about new and delete?
07:39
BAndiT1983
changed nick to: BAndiT1983|away
07:45
TofuLynx
joined the channel
07:57
futarisIRCcloud
left the channel
08:09
se6astian|away
changed nick to: se6astian
08:19
TofuLynx
left the channel
08:23
TofuLynx
joined the channel
08:42
se6astian
changed nick to: se6astian|away
08:48
sebix
joined the channel
08:48
sebix
left the channel
08:48
sebix
joined the channel
08:49
futarisIRCcloud
joined the channel
08:51
TofuLynx
Good morning!
08:52
TofuLynx
Does anybody have some papers regarding SHOODAK debayering algorithm?
09:07
illwieckz
left the channel
09:20
Bertl_zZ
changed nick to: Bertl
09:21
Bertl
morning folks!
09:50
se6astian|away
changed nick to: se6astian
09:51
se6astian
TofuLynx: I will dig out what we have
09:52
TofuLynx
Thanks!
10:27
Arun___
left the channel
10:44
Arun___
joined the channel
10:56
TofuLynx
se6astian: found anything?
11:06
se6astian
give me a day
11:22
TofuLynx
Roger! :)
11:27
futarisIRCcloud
left the channel
12:06
supragya
joined the channel
12:09
supragya
BAndiT1983|away, malloc's more of a fallback to C. Had problems when I had to selectively give functions in stat structure for FUSE to work. G++ complains if assigned functions out of order. But i guess new and delete can be used in AVIencode.
12:12
supragya
Btw it should be avimux more than aviencode.
12:12
rton
joined the channel
12:21
supragya
left the channel
12:24
se6astian
TofuLynx: I found documentation in German about Shoodak
12:24
TofuLynx
German? xD does google translator translate well?
12:25
se6astian
I will transfer (translate) everything to a wiki page
12:29
LordVan
joined the channel
12:37
supragya
joined the channel
12:40
supragya
se6astian, how is it that I cannot find anything about SHOODAK debayer even on scholar.google.com and on www.google.com? Where has this come from?
13:06
se6astian
german DOP: Stefan Schuh (http://www.imdb.com/name/nm0775939/) invented it and is collaborating with us
13:14
rton
left the channel
13:19
rton
joined the channel
13:21
Arun___
hello bertL I've posted message while you were away on irc, here's the task https://github.com/arun13e/APERTUS-High_speed_link
13:22
Arun___
What should I do next, Test the same on zynq platform, or move on with other tasks?
13:23
Arun___
Single organisation, much free ;-)
13:25
supragya
Hi Arun___ , which clg?
13:25
Bertl
Arun___: checking now ...
13:26
Arun___
GgsIpu University campus
13:26
supragya
Guru Gobind Singh Indraprastha University? nmdis1999 from there too...
13:26
supragya
nice
13:27
Bertl
Arun___: okay, first thing I see is bad indentation and spacing
13:27
Bertl
(which makes the code hard to read)
13:29
supragya
Bertl, BAndiT1983|away, I would be redoing much of T872 again tmrw. Would like feedback after that
13:30
Bertl
Arun___: e.g. in Receiver.vhd why are the generics and the ports on different indentation level? why is std_logic in line 14 on a different position than in line 15?
13:30
Arun___
left the channel
13:31
Bertl
in general, put spaces around operators like :=, +, etc
13:31
Bertl
avoid unmotivated empty lines like 80/81/84/85
13:32
Arun___
joined the channel
13:32
Bertl
Arun___: check the irc logs for stuff you just missed
13:32
Arun___
Ok ,On it
13:33
Bertl
the end if; end if; end if; in lines 144-148 is also a nono
13:33
Bertl
VHDL provides elsif and else for this purpose
13:34
TofuLynx
left the channel
13:34
Bertl
processes without a label/name are also a bad idea
13:36
Bertl
the many if/end if blocks in lines 169-216 can be written a lot simpler with a case statement
13:37
Bertl
the registers could also become an array
13:38
Arun___
left the channel
13:38
Arun____
joined the channel
13:38
Arun____
Sorry battery died
13:39
Arun____
Indentation maybe caused because i edited the whole in xilinx ise
13:39
Bertl
generics are basically constants, so you want to make them upper case
13:40
Bertl
well, it's fine if you use Xilinx ISE or any other IDE, but when you're done, you want to clean up the code :)
13:41
Bertl
also, add a copyright and a license to your work, otherwise it is useless for FOSS
13:42
Bertl
where did you get the lfsr.vhd from?
13:43
Arun___
joined the channel
13:44
Arun___
left the channel
13:46
Arun____
Well thats a little embarrassing :-) , will take care of it!!
13:47
supragya
Arun____, happened to all of us (that embarassment) XD!
13:48
nmdis1999
joined the channel
13:48
nmdis1999
@supragya: I am not from GGSIPU, I am from IGDTU it's not under IP uni anymore xD
13:49
nmdis1999
left the channel
13:52
supragya
left the channel
14:07
Arun____
left the channel
14:21
se6astian
supragya: https://wiki.apertus.org/index.php/Shoodak
14:32
supragya
joined the channel
14:40
supragya
se6astian, clean and self contained wiki! Thanks.
14:42
se6astian
great
14:42
se6astian
stephan has an untested idea for a Version 2 of Shoodak as well already
14:42
supragya
se6astian, how did you evaluate this with already available methods?
14:43
se6astian
but I guess focusing on Version 1 first and once that is covered trying more experimental stuff is a good approach
14:43
supragya
what's new with version 2?
14:43
se6astian
completely different approach
14:43
supragya
what changes?
14:44
se6astian
you cant get enough can you? :)
14:44
se6astian
supragya: se6astian, how did you evaluate this with already available methods? <- we didnt so far
14:45
se6astian
stephan worked with a german software developer who wrote a small tool to process still images with shoodak
14:45
se6astian
I should get the code shortly
14:45
supragya
:) - I have Object Oriented Software development exam tomorrow! What do you think I would focus on... that? XD
14:46
se6astian
are you desperately looking for stuff other than the exam? :)
14:46
supragya
se6astian, I guess yes!
14:47
supragya
Already had Software Engineering course, idk how this is different
14:47
supragya
same syllabus
14:50
se6astian
right, I will document V2 on the wiki
14:50
se6astian
but you have to do something with it then :)
14:50
supragya
:) Thanks! sure, se6astian
14:50
supragya
but for now debayering is Tofu's dept
14:53
supragya
maybe will implement SHOODAK in OC, have a cpp for it already, if Tofu is not on it. :)
15:00
LordVan
left the channel
15:04
se6astian
https://wiki.apertus.org/index.php/Shoodak#SHOODAK_Version_2
15:06
supragya
se6astian, SHOODAK v2 looks more like Nearest sensel based debayering to me
15:06
supragya
we have a code for it?
15:06
supragya
or can I write one?
15:07
Bertl
off for now ... bbl
15:08
Bertl
changed nick to: Bertl_oO
15:10
danieel
se6astian: that shoodak look like malvar-he-cutler just with rounded math?
15:11
se6astian
there is no code for V2
15:11
se6astian
you can write one and test it
15:11
supragya
se6astian, sure! will do
15:11
se6astian
its very well possible this was already done by someone else, I am just documenting stephan schuhs ideas
15:12
se6astian
if we find out his V2 method already exists and has a different name than thats also a conclusion :)
15:12
supragya
se6astian, I have T872 too... so why not
15:12
danieel
i am referring to V1
15:12
supragya
se6astian, V2 looks too naive to me... so it would be already existing... but have to check
15:18
danieel
I think the description misses to strenghten the randomness factor
15:18
danieel
if introducing some noise is the key, it should be described more in depth, but nice try :)
15:18
se6astian
gotta go
15:18
se6astian
changed nick to: se6astian|away
15:18
supragya
danieel, for randomness in V1?
15:19
danieel
supragya: here it says so: "For color reconstruction a bi-linear method plus a weighted (25% - 50% seems a reasonable range) random (or pseudo random) influence of neighboring pixels is used. "
15:19
danieel
random influence - i pick up this as random per each pixel?
15:19
danieel
this part is what i miss that is not described well in the "specs"
15:20
danieel
plus there are examples of random picks of triplets below, but no text to tell why or how to use it
15:21
danieel
the number of ops can be less than in MHC, that is clear
15:21
supragya
danieel, I guess it is clear as to what triplets do
15:22
supragya
Take example for 1 pixel in the mid
15:22
supragya
That triplet decides what sensel has more influence
15:22
supragya
why it is done:
15:23
supragya
zipper artifacts are regular
15:23
supragya
these triplets are random and hence not regular
15:23
danieel
but you use them with at most 1 of 8 chance, so your zipper gets just 1 teeth of 8 (ideally)
15:27
supragya
not really, consider a zipper pixel with a triplet. The boundary pixel may have the SHOODAK influence from either side 1 or side 2. Probability is 1/2 that it will be darker than just bilinear.
15:27
supragya
This will make the line jagged of course
15:27
supragya
But that regular zipper will go off
15:28
danieel
do you have any easy c code for it?
15:29
supragya
I can code one for you. Don't have it yet
15:30
supragya
se6astian says he has one made by some german Software Developer. But I guess the task is not that hard
15:31
supragya
Let me see what I can do danieel. Will ping in once I have some kind of simulation
15:31
Arun___
joined the channel
15:35
supragya
danieel, ping
15:35
supragya
can you point me to your existing code? danieel
15:38
danieel
one sec
15:40
sebix
left the channel
15:42
danieel
this is an empty frame: https://pastebin.com/q41HE2EH
15:48
supragya
well I would like a simulation system to work with. Would really like a look at demosaic.h and matrix.h.
15:49
supragya
can you git maybe?
15:49
danieel
your task is to go from the raw file, I can not help you with that
16:04
supragya
I have exam tmrw danieel. Maybe I can ping you one I have done simulation on your code or did on mine. :)
16:04
supragya
give me some time. Perhaps a day
16:04
danieel
sure
16:04
danieel
have luck!
16:05
supragya
:)
16:12
se6astian|away
changed nick to: se6astian
16:31
rton93
joined the channel
16:33
rton
left the channel
16:49
sebix
joined the channel
16:49
sebix
left the channel
16:49
sebix
joined the channel
17:00
nmdis1999
joined the channel
17:00
supragya
hi nmdis1999
17:00
supragya
which exam tmrw
17:05
BAndiT1983|away
changed nick to: BAndiT1983
17:08
supragya
left the channel
17:08
supragya
joined the channel
17:10
supragya
Hello, BAndiT1983
17:10
BAndiT1983
hi
17:10
anuejn
danieel: supragya : implemented the random and anti zipper parts of shodak :)
17:10
anuejn
https://pastebin.com/raw/iRnSFkDY
17:10
anuejn
can be used with https://anuejn.github.io/batic/
17:11
TofuLynx
joined the channel
17:12
supragya
BAndiT1983, I think AVIEncode will be done soon. However
17:13
supragya
I am not really sure of how the frames are saved in the movi list
17:13
supragya
and is 'idx1' necessary?
17:14
BAndiT1983
have no idea, as i had no time to check it, had my vacation which was really necessary
17:14
supragya
anuejn, thank you! will have a look (net too slow to open your site)
17:14
supragya
BAndiT1983, take your time if you need. I will figure this out
17:15
se6astian
https://github.com/apertus-open-source-cinema/debayering
17:15
supragya
However, have a look at the code once, are you okay with the namespace and structures?
17:15
BAndiT1983
have to check some things, as i don't have full overview of what was done in last days
17:15
se6astian
code is untest so far, please help by checking if it compiles or what other packages are required
17:16
BAndiT1983
i have no matlab, so cannot check it
17:16
supragya
matlab?
17:16
BAndiT1983
.m files?
17:17
supragya
where are the .m files?
17:17
BAndiT1983
https://github.com/apertus-open-source-cinema/debayering/tree/master/Debay-O-Mat
17:17
supragya
I thought you were asking about my repo
17:18
TofuLynx
left the channel
17:18
BAndiT1983
ah, you mean your repo, se6astian posted this repo, so i thought you were referrign to iz
17:18
BAndiT1983
*it
17:18
supragya
I was asking about [libfuse-FrameServer], are the structs and namespaces to your liking?
17:19
BAndiT1983
which namespaces do you mena?
17:19
BAndiT1983
*mean?
17:20
supragya
code in general. namespace AVIEncode to have it all in one place
17:21
BAndiT1983
have to check it thoroughly, but the C approach is not my favorite, also embedding structs in the class and so on
17:21
supragya
structs in class a no no?
17:21
BAndiT1983
there is also the loop which reads every 3 bytes from file, performance-wise it's sub-optimal, if you have an HDD it would take a lot of time
17:22
BAndiT1983
my preference is clear structure, single responsibility per class etc.
17:22
supragya
[ every 3 bytes from file] - that's my cpp challenge
17:22
supragya
not this one
17:22
BAndiT1983
create working prototype first, afterwards we can discuss it further, will try to adjust the code, how i think it sohuld be
17:23
BAndiT1983
i know that you have ported it from there, but this approach kills performance
17:23
supragya
no
17:23
supragya
I have not
17:23
BAndiT1983
such file, should be read to memory as whole, for fast processing
17:23
supragya
I dont even read file wright now
17:23
supragya
right
17:23
supragya
I am just writing headers
17:24
supragya
asking you the frame dump format for AVI
17:24
supragya
are you sure you did a git pull on [libfuse-FrameServer] and looked at AVIWriter/ ?
17:24
BAndiT1983
telling you what i see at first glance, need some time to get an overview, was absent from project for 3 days
17:25
supragya
If you are busy don't worry
17:25
BAndiT1983
looking at github currently, will start my VM for it in a moment
17:25
BAndiT1983
i'm not busy, just riding train back home and trying to get an overview
17:26
supragya
[there is also the loop which reads every 3 bytes from file, performance-wise it's sub-optimal] - I am redoing T872
17:27
BAndiT1983
looking forward to it
17:36
supragya
Bandit, this one gave error with g++:
17:36
supragya
static struct fuse_operations fuse_example_operations = {
17:36
supragya
.getattr = getattr_callback,
17:36
supragya
.open = open_callback,
17:36
supragya
.read = read_callback,
17:36
supragya
.readdir = readdir_callback,
17:36
supragya
};
17:36
supragya
sorry, unimplemented: non-trivial designated initializers not supported};
17:36
supragya
so had to go back to C
17:37
supragya
tried this: https://stackoverflow.com/questions/31215971/non-trivial-designated-initializers-not-supported, no help
17:38
BAndiT1983
have found some docs for AVI, as i have also to get insight on that -> http://www.jmcgowan.com/odmlff2.pdf
17:39
supragya
BAndiT1983, I guess we have to assign a function to every stat function as it is given:
17:39
supragya
The rule of thumb is:
17:39
supragya
Assign to .name=value fields
17:39
supragya
Assign in the order they where declared
17:39
supragya
Include all fields in the assigment
17:39
BAndiT1983
how can i get an avi file at the moment
17:39
BAndiT1983
*?
17:39
supragya
you can go to folder
17:39
supragya
AVIWriter
17:39
supragya
and use make
17:39
supragya
I have setup a readme
17:41
BAndiT1983
at the moment video player in ubuntu says "cannot demultiplex stream"
17:41
supragya
It is not
17:41
supragya
cuz no frames and stream info were written
17:41
supragya
only headers are written
17:42
supragya
The other repo did write the full AVI
17:42
supragya
but it was not playable, so wrote from scratch
17:42
BAndiT1983
i would avoid windows specific naming, like DWORD
17:43
supragya
that is in specifications
17:43
supragya
also there is a typedef I have put uptop
17:43
BAndiT1983
i have seen it, definitions are from microsoft, if i remember correctly
17:43
supragya
yes they are, AVI is theirs
17:44
supragya
Writing 'db' format (uncompressed) wont be hard, but we just have to get all headers correct
17:45
supragya
and bytes
17:45
supragya
can you explain dwInitialFrames?
17:46
supragya
AVIMAINHEADER
17:47
rton93
left the channel
17:52
BAndiT1983
supragya, let me check the specs, also wifi is a little bit unstable this time, but better than no wifi on the way to munich a couple of weeks ago
17:53
BAndiT1983
https://msdn.microsoft.com/en-us/library/ms899423.aspx
17:53
BAndiT1983
this should describe the fields
17:54
BAndiT1983
for us it should be 0 for initial frames
17:54
supragya
no audio that why
17:54
BAndiT1983
we need very basic AVI stuff without much junk, plain and simple header, then a list of frames
17:54
supragya
wont be much of hassle, will complete it by weekend, if I get headers right BAndiT1983
17:55
BAndiT1983
will do some adjustments to your code and try it also myself to get more knowledge
17:56
supragya
just what I wanted :)
17:57
BAndiT1983
hope that i will get a bit of time in the next days, as i have a lot to do with moving my stuff to new apartment and especially registrations in the new city, so i can park my car, needs special permission in the new area
17:58
supragya
BAndiT1983, do as much as you can, I will on my end too. Much of frameserving is done if we get AVI just right
17:58
Rex0r
left the channel
17:58
Rex0r
joined the channel
17:59
BAndiT1983
we can incorporate the downscaler from TofuLynx at some point, when we get to playing back DNG sequences
17:59
supragya
DNG sequence is what we need for sure
17:59
supragya
the downscaler is ready?
17:59
BAndiT1983
1 frame would be very good at the moment ;)
18:00
supragya
ofc... but we need it eventually
18:00
BAndiT1983
downscaler was looking fine, some small visual mistakes, but nothing big, have also to investigate if Claudio still hasn't found the cause
18:00
BAndiT1983
also would extract some general methods to a general helper class, like 12->16bit or 14->16bit conversion etc.
18:01
supragya
not quite big of changes there, compared to present system. Should be easy to find the culprit
18:01
supragya
in downscaler
18:01
BAndiT1983
same thought
18:02
BAndiT1983
we should also add some tests, i suggest catch2 framework, as it's a single file
18:02
supragya
tests on what
18:04
BAndiT1983
unit tests, to verify changes in code, so we know when something breaks
18:05
supragya
Where? OC? FrameServer? algorithms like downscaler?
18:05
supragya
what is the scale?
18:10
BAndiT1983
first you code, OC has a bit of that, if i remember correctly
18:10
supragya
sure
18:10
BAndiT1983
first a couple of tests to verify that binary file is right, maybe something like golden master approach
18:11
BAndiT1983
if we have working file, we would take it as golden master, after changes new file will be written to disk, then golden master loaded and both binaries compared
18:12
TofuLynx
joined the channel
18:12
TofuLynx
Hey
18:12
supragya
hey TofuLynx
18:12
TofuLynx
Just read the logs
18:12
BAndiT1983
before you ask, yes, unit tests have to be reworked after bigger changes in code, it'S some sort of evolution
18:12
BAndiT1983
hi TofuLynx
18:13
TofuLynx
Regarding that visual bug in the downscaler, I havent got time to check
18:13
TofuLynx
Will check this night or tomorrow morning :)
18:13
BAndiT1983
supragya, maybe we should grab some media inspector software which tells one what thew file contains
18:14
BAndiT1983
gspot or mediainfo under ubuntu
18:15
supragya
BAndiT1983, I was thinking of this
18:15
supragya
like a RIFF tag editor
18:15
supragya
currently just using hex editor
18:15
supragya
and it is hard
18:15
BAndiT1983
i know, done it a lot for TIFF etc.
18:15
BAndiT1983
but with some inspector we would know precisely what is missing
18:16
supragya
header i write till now
18:16
supragya
match with actual AVI
18:16
supragya
but we definitely can use that
18:16
BAndiT1983
seems like that, as the video player just complained about streams
18:16
BAndiT1983
will try to re-use you red dump for 1 frame
18:16
nmdis1999
Hey! Sorry for replying later, I was working on the tool :( Tommrrow's electrical science. After tomorow I'll be able to focus on my work here.
18:17
supragya
BAndiT1983, there is no necessity to use the red dump
18:17
supragya
we can have a synthetic image
18:17
supragya
more like fractal or arithmetic to begin with
18:17
supragya
then we can check for the actual frames
18:17
BAndiT1983
ok
18:19
supragya
BAndiT1983, thanks for mediainfo, will try to see what it can do
18:19
supragya
available on pacman
18:19
BAndiT1983
ah, forgot that you are on another distro
18:19
supragya
left ubuntu when it closed it's repositories for 17.04
18:20
supragya
and it left me hanging
18:21
BAndiT1983
using usually linuxmint, but had some problems with virtualbox about opengl, somehow it was stuck to 2.1 although they also use vmware driver for GL3.3
18:21
BAndiT1983
so temporarily installed 18.04 in vmware first
18:23
BAndiT1983
supragya, check your PM for output of mediainfo
18:23
supragya
doesnot seem like what we need
18:24
supragya
we need to know if headers are written correctly
18:24
supragya
I tested on my system, same OP
18:25
BAndiT1983
let me try gspot
18:26
BAndiT1983
https://mediaarea.net
18:27
BAndiT1983
check mediainfo-gui
18:28
BAndiT1983
maybe the headers are not filled right
18:28
BAndiT1983
it shows also debug info with addresses
18:29
supragya
i dont understand
18:29
supragya
let me give a dump in PM
18:30
supragya
BAndiT1983, you can check hex editor
18:30
BAndiT1983
let me install hex editor for ubuntu to check against it
18:30
supragya
hdr1 list is okay
18:30
supragya
RIFF is okay
18:30
supragya
not written anything further
18:30
supragya
however sizes are yet to be computed, left them 0
18:35
nmdis1999
left the channel
18:49
Rex0r
left the channel
18:49
danieel
where is the AVI stuff? (why avi today?)
18:50
supragya
danieel, we are working on a frameserver
18:50
danieel
whats that
18:51
supragya
here: https://en.wikipedia.org/wiki/Frameserver
18:51
supragya
for OC
18:52
supragya
you can look at it here: https://github.com/supragya/libfuse-FrameServer
18:53
Rex0r
joined the channel
18:54
danieel
seems overcomplicated :) i used fuse before to present my raws as dngs, but it was way too slow (every open did full conversion?)
18:54
supragya
it's a prototype we are building
18:54
supragya
using libFUSE
18:55
supragya
using readcallbacks
18:55
supragya
we will process and serve only when needed
18:55
danieel
so you have to properly handle the seeks, right?
18:55
supragya
the processing of DNGs are done using Occore
18:55
supragya
yes, handle the seeks
18:55
danieel
ok, that might be the difference
18:55
BAndiT1983
we can accelerate by reading image data only at fixed offsets
18:56
danieel
i had the trouble that convert@open did a big waste when a preview app looked to the folder (to just read exif data)
18:56
BAndiT1983
but there are also many other ways to do acceleration
18:57
supragya
there will be two performance bottlenecks if I can say it now: OCcore processing and AVIEncode
18:57
supragya
both need multithreading and maybe HW acceleration later on
19:00
supragya
had success with HEX? BAndiT1983
19:00
BAndiT1983
what do you mean with success?
19:00
supragya
like did you see the headers?
19:00
BAndiT1983
seen the header, will analyze a bit later in depth, but first i will adjust the code
19:01
supragya
forked?
19:01
BAndiT1983
nope, just locally first, can still fork later
19:02
BAndiT1983
biggest bottleneck is the disk drive
19:03
danieel
then get a faster drive
19:03
supragya
what are you adjusting in the code?
19:03
danieel
the real bottleneck will be memory bw limit
19:03
danieel
that is rather impossible to increase easily
19:04
rton
joined the channel
19:05
BAndiT1983
hm, sitting on an .m2 so my dev system is up to date, but what should people use who don't have much money to get a fast drive? should they use bad optimized code?
19:06
danieel
depends on purpose
19:07
danieel
if you want 4k to play live, get the gear.. no?
19:07
danieel
but if you speak of like using or not using o_direct and zerocopy.. yes, do that first
19:08
BAndiT1983
one can also work with downscaled 4k for preview and still get full resolution results at the end
19:08
supragya
the point is, to get most out of given hardware
19:08
BAndiT1983
supragya, exactly
19:08
supragya
not to hog it up with unnecessary code bgs
19:08
BAndiT1983
this would help a lot of indie people who cannot afford big rigs
19:08
BAndiT1983
know a lot of people who cannot afford or do not want to buy new machines
19:09
BAndiT1983
still wondering why PCs got slower over years, although the power increased
19:09
supragya
I guess it is because the softwares are more buggy
19:09
supragya
and unoptimised
19:09
BAndiT1983
it'S just a part of the problem
19:10
danieel
then you have to reorganize the file to get the downsampled data in one piece which is then lowering the perf for those who could afford the rigs
19:10
BAndiT1983
http://www.file-recovery.com/avi-signature-format.htm
19:10
danieel
or to produce both versions, in expense of space
19:10
BAndiT1983
profiling still has to be done, but first some working code has to exist, before even considering fiddling with bits
19:10
supragya
well this is satisfied
19:10
danieel
slowness is caused by nesting technologies, virtualization and too high level languages
19:11
supragya
the one given in image
19:11
supragya
have to look at size obv
19:12
BAndiT1983
supragya, i would even do hard preset of fields
19:12
BAndiT1983
it can be done by memcpy for special cases
19:13
supragya
i did exactly that
19:13
BAndiT1983
ah, just scrolled down and seen that, but have to test if it's not better to do it directly in header code
19:14
BAndiT1983
also static analyzer complaining at some lines
19:15
BAndiT1983
as it is an avi writer, we shouldn't submit data from outside, just set fixed data right there in code and supply modifiable data like frames
19:16
supragya
see create_avi.cpp
19:16
supragya
I have tried to keep the clutter out of the way
19:16
BAndiT1983
seen it
19:16
supragya
however we still need the width, height and framecount info
19:16
supragya
etc
19:16
BAndiT1983
will evaluate it, but there are too many parameters
19:17
BAndiT1983
we can supply them by separate methods
19:17
supragya
well, much of the headers are such that they need to be given explicitly
19:17
supragya
like a struct
19:17
supragya
?
19:17
supragya
or something other than setAviMainHeader
19:17
supragya
more like setFrameCount
19:18
supragya
setFrameHeight()
19:18
supragya
?
19:18
BAndiT1983
we can avoid setting "avih", as the user could be new to avi and don't know the internal structure, jsut as example
19:18
BAndiT1983
e.g. setResolution(width, height)
19:18
supragya
okay, interface change
19:23
BAndiT1983
supragya, is this header of yours really one which is used in general?
19:23
BAndiT1983
found shorter ones etc., so not sure which is sufficient
19:24
supragya
have a look at: https://msdn.microsoft.com/en-us/library/windows/desktop/dd318189(v=vs.85).aspx
19:24
supragya
currently, I am writing till 'hdr1'
19:24
supragya
and avih main header
19:24
supragya
need to add streams (strl and strh)
19:24
supragya
and then movi
19:24
BAndiT1983
is it stream or movi?
19:25
BAndiT1983
Stream Data ('movi' List)
19:25
supragya
currently, no stream meta is added
19:25
supragya
so there is no strl and strh
19:25
supragya
also no movi is added
19:25
supragya
just AVIMAINHEADER is done, not even AVISTREAMHEADER
19:26
BAndiT1983
will look into the structure
19:26
BAndiT1983
but RIFF is structured by ID and size, afterwards comes the payload
19:26
BAndiT1983
http://www.johnloomis.org/cpe102/asgn/asgn1/riff.html
19:27
supragya
RIFF filesize filetype(the ID) payload
19:27
supragya
so it is currenly
19:27
supragya
RIFF 0000 AVI payload
19:27
BAndiT1983
is size missing between AVI and payload?
19:28
supragya
I told you, i have not computed the size
19:28
supragya
it is more like LIST(LIST, LIST(), LIST)
19:28
BAndiT1983
ok, but that one is also important, even if fixed at first, otherwise applications don't have the right info
19:29
supragya
yes, but we can only do it once we have all the info
19:29
BAndiT1983
TIFF works also like that, ID and size, then payload of the tag
19:29
supragya
it's simple arithmetic
19:29
supragya
TIFF is near RIFF, T -> R XD
19:29
BAndiT1983
we want some fake header info first, so applications find sufficient data
19:29
supragya
what i think is that we need a computing mechanism
19:30
BAndiT1983
they are not that different
19:30
supragya
that can exactly tell what info is needed when a particular part of file is referenced
19:30
BAndiT1983
that's not a big problem, as most fields have fixed length
19:30
supragya
the headers are to be precomputed and stored in memory
19:30
supragya
BAndiT1983, exactly
19:30
supragya
frames generated on the fly
19:31
supragya
I am not sure what you meant by shorter headers
19:31
BAndiT1983
http://www.fileformat.info/format/riff/egff.htm
19:31
BAndiT1983
like here
19:32
BAndiT1983
you have a chunk, which consists mainly of ID and size, afterwards comes the payload, but it differs from yours
19:32
BAndiT1983
do we need the stream data or some other one?
19:32
supragya
Ah I think you did not get one thing right
19:33
supragya
In RIFF we have two things only
19:33
supragya
LIST and CHUNKS
19:33
supragya
LIST is 'LIST' listSize listType listData
19:33
supragya
CHUNK is ckID ckSize ckData
19:33
supragya
so the outer one is LIST
19:33
supragya
hence it is RIFF 0000 AVI payload
19:33
supragya
now the payload contains lists and chunks
19:34
supragya
chunks are only featured when frames are written
19:34
supragya
rest all are LISTs
19:34
supragya
see microsoft link
19:35
supragya
In other words, there can be nothing but LIST, CHUNKS
19:35
supragya
payload may have framedata and header info
19:40
BAndiT1983
changed nick to: BAndiT1983|away
19:41
BAndiT1983|away
changed nick to: BAndiT1983
19:48
BAndiT1983
supragya, have to reduce your code a bit, good that you try to make it readable, but it's doing double memcpy
19:48
BAndiT1983
not a big deal, but raw speed is our goal
19:48
supragya
do changes, I will incorporate
19:49
supragya
Thus, I asked you to have a look before I move ahead
19:50
BAndiT1983
just want to do it step by step, as many people do not like changes to their code
19:50
supragya
well I am a student
19:50
supragya
I have to learn
19:51
BAndiT1983
i will ask you in a couple of years again :D
19:52
supragya
what do you mean :)
19:52
BAndiT1983
had some arguments with old developers, even when their code was not doing the right thing, they refused changes
19:53
supragya
well it's life
19:53
supragya
Today I had machine learning as exam
19:53
BAndiT1983
wait till you get into a company ;) then you will tell me about your experience with older developers
19:53
supragya
And we had to calculate 15 point distance matrix in 4th dimensional space
19:53
BAndiT1983
ugh, sounds like star trek to me
19:55
supragya
well euclidean distance were to be computed as sqrt( (x1-z1)^2 + (x2-z2)^2 + (x3-z3)^2 +(x4-z4)^2 )
19:55
supragya
for 15 such points
19:55
supragya
for all x1 and z1 in that 15 points
19:55
BAndiT1983
ah, have done that for PCB inspection to get the PCB straight
19:55
supragya
like 100 of these in barely in an hour
19:55
BAndiT1983
was not my code, but from some tutorial for OpenCV
19:55
supragya
and then to cluser them
19:56
supragya
BAndiT1983, PCB?
19:56
BAndiT1983
printed circuit board
19:56
supragya
well we had to do it using calculators
19:56
supragya
in exam
19:56
BAndiT1983
https://lab.apertus.org/T934
19:57
supragya
I wrote random numbers and made clusters XD
19:57
BAndiT1983
that sucks, nowadays programmable ones should be allowed, but i think indian students are drilled to know that stuff exactly
19:58
supragya
I don't prefer this system tbh
19:58
BAndiT1983
in france pupils are also drilled for long time
19:59
supragya
how so?
20:00
BAndiT1983
that's the school and study programme, my girlfriend told me about that, she lived in france for some time
20:01
BAndiT1983
but it's also mainly about solving problems on fixed path and not about approach it in clever way
20:04
alexML
joined the channel
20:05
supragya
left the channel
20:11
Bertl_oO
wb alexML!
20:17
supragya
joined the channel
20:22
sebix
left the channel
20:27
illwieckz
joined the channel
20:42
Arun___
left the channel
20:49
BAndiT1983
changed nick to: BAndiT1983|away
20:56
supragya
left the channel
21:08
supragya
joined the channel
21:11
se6astian
I am off to bed
21:11
se6astian
good night
21:11
se6astian
changed nick to: se6astian|away
21:11
supragya
gn
21:16
rton
left the channel
21:33
supragya
se6astian|away, BAndiT1983|away, Bertl_oO , I have redone T872, kindly give feedback on it :)
21:35
Bertl_oO
line 11, ){ -> ) {
21:36
Bertl_oO
line 21, if(...){ -> if (...) {
21:36
supragya
PiNG12RAW.cpp?
21:36
Bertl_oO
yup
21:36
Bertl_oO
line 34, for(... 3 ){ -> for (... 3) {
21:37
Bertl_oO
line 35, width ; -> width;
21:37
Bertl_oO
ah, also )/width -> ) / width
21:38
Bertl_oO
line 42/43 }\nelse{ -> } else {
21:38
BAndiT1983|away
changed nick to: BAndiT1983
21:38
Bertl_oO
shall I go on or do you get the pattern?
21:38
supragya
no, got it
21:38
BAndiT1983
supragya, you should get an autoformatter
21:39
BAndiT1983
you've used clion, right?
21:39
supragya
yes
21:39
supragya
let me check
21:39
BAndiT1983
there should be one already, but possibly you have to adjust some things
21:39
BAndiT1983
i can install demo version to tell you which options are important, as i know similar software, intellij, rather well
21:41
Bertl_oO
for C there is also 'indent' which does a pretty decent job
21:41
BAndiT1983
ctr+alt+l should format stuff
21:42
supragya
well done
21:42
BAndiT1983
clang-format is also good, but it needs some setup work
21:42
supragya
I have done autoformatting
21:42
supragya
270 lines changed (gosh)
21:42
BAndiT1983
:D
21:42
Bertl_oO
did you even have that many? :)
21:42
BAndiT1983
i do it on regular base for java for whole directories
21:42
supragya
I am not sure my code had that many lines
21:43
BAndiT1983
how is analyze feature of clion?
21:43
supragya
not really used
21:43
supragya
BAndiT1983, have a look at the structure of this attempt
21:43
BAndiT1983
you should, it was really useful for java
21:43
BAndiT1983
we are talking about c++ challenge right?
21:44
supragya
yes
21:44
supragya
tell me if this one is alright... used buffer this time, one file access
21:44
supragya
and separated the code better
21:45
BAndiT1983
have to take a thorough look, but it's late here, so just a quick glance
21:45
BAndiT1983
width * height * sizeof(uint8_t) * 3 / 2
21:45
supragya
Now I don't have to think of Bertl asking me to indent better, I have Ctrl+Alt+L XD
21:45
Bertl_oO
it's better to read but it has the problem of long lines
21:46
BAndiT1983
you should adjust formatter, so the braces start at new line
21:46
BAndiT1983
sizeof(uint8_t) would be 1, so no reason to have it there, i suppose
21:46
supragya
That's thing of preference right?
21:46
Bertl_oO
same line is fine for me, but I do not care much about it
21:46
supragya
brace start
21:46
Bertl_oO
yup
21:47
supragya
getting rid of sizeof(uint8_t) would allow me to have new char[width*height] which is better
21:47
Bertl_oO
I'd also prefer if you kept the code below 80 (actually 76) characters per line
21:48
BAndiT1983
supragya, you can also merge G1 and G2, no reason to separate them
21:48
BAndiT1983
this would make everything simpler
21:48
supragya
I would like to have channel output for every sensel
21:49
Bertl_oO
note that whenever you have really long lines, it is a good indication that the code structure can be dramatically improved by either ...
21:49
BAndiT1983
green is green ;)
21:49
Bertl_oO
moving stuff into functions/procedures/classes
21:49
supragya
BAndiT1983, that true
21:49
Bertl_oO
doing calculations in variables/constants/etc
21:49
BAndiT1983
what Bertl_oO said
21:50
BAndiT1983
loops are executing faster when length is pre-calculated before
21:50
BAndiT1983
you can also try to run cppcheck over it
21:50
supragya
cppcheck?
21:50
BAndiT1983
but analyzer in clion should also work
21:50
Bertl_oO
for example, in line 68-71, you use 3*(i * width + j)
21:50
BAndiT1983
it's a static analyzer which tells you about errors, problems and bottlenecks
21:51
Bertl_oO
pull out that into a variable and you are way better off
21:51
Bertl_oO
s/out that/that out/
21:51
supragya
will maybe do tomorrow. sorry not now! Its 5AM, have exam at 8
21:51
supragya
s/out that/that out/ ?
21:52
BAndiT1983
pull that out into a variable ;)
21:52
Bertl_oO
for those who have never used sed or vi, s/a/b/ replaces a with b
21:52
supragya
oh that
21:52
supragya
got it... not used vi for long
21:52
supragya
that yank hurt me
21:52
BAndiT1983
avoiding it like hell :P
21:53
supragya
BAndiT1983, you are more like me than Bertl_oO XD
21:53
Bertl_oO
BAndiT1983: but there is a GUI for it ;-)
21:53
BAndiT1983
Bertl_oO is linux user to the bone
21:53
BAndiT1983
using nano for terminal stuff
21:54
supragya
Bertl_oO, do you use X11? Xorg?
21:54
supragya
or without GUI?
21:54
supragya
XD
21:54
Bertl_oO
sometimes
21:54
supragya
:)
21:54
BAndiT1983
supragya, he is writing FPGA code without UI, so he is not far from becoming Neo
21:55
BAndiT1983
wouldn't wonder if his console font color is green
21:55
supragya
how does he do simulation?
21:55
BAndiT1983
ASCII art
21:55
BAndiT1983
;)
21:55
supragya
test bench?
21:55
supragya
XD
21:55
Bertl_oO
why should I do simulation?
21:55
supragya
I have hardware!
21:55
Bertl_oO
precisely
21:56
BAndiT1983
half-offtopic -> https://hackaday.com/2018/03/05/fpga-makes-ascii-video/
21:56
Bertl_oO
BAndiT1983: check out Vigor
21:56
BAndiT1983
vigor? google gives different results
21:56
Bertl_oO
Vigor (software)
21:57
BAndiT1983
:D
21:57
supragya
Here is an ascii art for all star war fans
21:57
supragya
+---------------------+
21:57
supragya
| Whats going on here?|
21:57
supragya
+------------------+--+
21:57
supragya
|
21:57
supragya
|
21:57
supragya
_ |
21:57
supragya
\\ |
21:57
supragya
\\_ _.-._ |
21:57
supragya
X:\ (_/ \_) <------------------------+
21:57
supragya
\::\ ( == )
21:57
supragya
\::\ \== /
21:57
supragya
/X:::\ .-./`-'\.--.
21:57
supragya
\\/\::\ / / ( l
21:57
supragya
~\ \::\ / `. L.
21:57
supragya
\/:::| `.' `
21:57
supragya
/:/\:| ( `.
21:57
supragya
\/`-'`. > )
21:57
supragya
\ // .-'
21:57
supragya
| /( .'
21:57
supragya
`-..-'_ \ \
21:57
supragya
__||/_ \ `-'
21:57
supragya
/ _ \ # |
21:57
Bertl_oO
whoa, next time you'll get kicked for spamming the channel
21:57
supragya
| # |# | B-SD3 Security Droid
21:57
supragya
LS | # |# | - Front View -
21:58
supragya
sorry :P
21:58
supragya
gtg, good night
21:58
Bertl_oO
use pastebin for this (or the original URL)
21:58
BAndiT1983
supragy -> http://www.asciimation.co.nz/#
21:58
supragya
I know that movie is in ascii
21:58
supragya
thanks for the link
21:59
BAndiT1983
you should use the original one with telnet
21:59
BAndiT1983
https://lifehacker.com/373571/watch-star-wars-in-text-via-telnet
21:59
Kjetil
damn it.. to slow
21:59
BAndiT1983
so, enough off-topic, was checking oyur code
22:00
supragya
BAndiT1983, anything to add ?
22:00
supragya
[ was checking oyur code] -?
22:00
BAndiT1983
have to find the tab, as we moved to other stuff in between ;)
22:01
BAndiT1983
check if the double loops, are really necessary
22:01
supragya
debayering?
22:02
BAndiT1983
i assume yes, as i'm still trying to get the structure right in my head
22:02
BAndiT1983
had a long day, so not that focussed at the moment
22:02
Bertl_oO
let's continue another day
22:03
supragya
BAndiT1983, I am here at 5:30 AM
22:03
BAndiT1983
yup
22:03
supragya
yup
22:03
supragya
glhf
22:03
BAndiT1983
you should go to sleep, supragya
22:03
supragya
gn
22:03
BAndiT1983
you too, good luck with exams
22:03
supragya
left the channel
22:03
BAndiT1983
night
22:04
Bertl_oO
nn
22:06
BAndiT1983
so, off also, have to get up early, city departments in germany are not that much fun, but necessity if you want to avoid problems
22:06
BAndiT1983
changed nick to: BAndiT1983|away
22:28
futarisIRCcloud
joined the channel
22:39
Bertl_oO
off to bed now ... have a good one everyone!
22:39
Bertl_oO
changed nick to: Bertl_zZ
22:41
TofuLynx
left the channel