yashsingh1/xdaforums huggingface dataset:
[Galaxy S I9000 Android Development] stratosk:
In a previous post I said maybe this weekend.

But, I 'm in the middle of some development. So, I don't think I will find time to finish it today (I also have some difficulties with this new stuff).

A new version with JVU samsung modules will not offer something new. I will complete my pending work and I will release the new version with JVU initramfs. Sorry, no ETA.

@demonstone

I will not wait that long... :)
[Galaxy S I9000 Android Development] Jose_Paramore:
This kernel is amazing! Thanks! :)

Enviado desde mi GT-I9000 usando Tapatalk
[Galaxy S I9000 Android Development] DarknessWarrior:
totally understand your position bro. i will stick with 2.4.0 with original color for now :)
[Galaxy S I9000 Android Development] flolep:
+ 1 I understand too and as I prefer having a very good kernel like semaphore, I ll stick with neutral colors for now, it's ok for me, and impossible for me to go on another kernel without your wonderful system of automatic light :p

Take care.

+ +

Sent from my GT-I9000
[Galaxy S I9000 Android Development] stratosk:
@all

I have some good news and some bad news! :p

The good news:

I found a way to resolve the issue in custom kernels in new JVU about taking photos while recording! :)

The bad news:

Samsung wants more reserved memory for this functionality. I don't know exactly how much. :mad:

I want your opinions about this. More reserved memory for this tiny feature?
[Galaxy S I9000 Android Development] Rebel2k:
I would say, if that's 1 or 2 Mb, why not. If that's more, I really consider this feature is totally useless...
[Galaxy S I9000 Android Development] karapoutsoglou:
are there cameras in smartphones???:cool::cool:
[Galaxy S I9000 Android Development] James Palm:
+ 1. I agree 1-2 mb is okay. Or maybe just have it turned off in BM version.
[Galaxy S I9000 Android Development] vd69:
Geia sou patrida. Bravo for the kernel its the best. i found a little problem .when i try to use droidwall it doesnt work because of the ip tables something.Καλή χρονιά με υγεία!!!!
[Galaxy S I9000 Android Development] stratosk:
Thanks guys.

I just saw the stock kernel has 320MB available!!!

If I remember correctly stock kernel on previous ROMs had 329MB.

Maybe we are talking about 9MB! I think this is a big cost for this feature.
[Galaxy S I9000 Android Development] stratosk:
Thanks!

Please try to enable netfilters from Semaphore application.

καλή χρονιά!
[Galaxy S I9000 Android Development] ingineru:
9 MB for that feature is very much since the biggest problem of this phone is RAM.
[Galaxy S I9000 Android Development] -ReaL-:
9mb is normal. please, build new kernel version for JVU!
[Galaxy S I9000 Android Development] vd69:
Thank u very much !!
[Galaxy S I9000 Android Development] DarknessWarrior:
hmmm... i wouldn't mind 9mb... :/

perhaps leave it off on the BM version and activate it on the regular one.
[Galaxy S I9000 Android Development] NEFart:
Capturing photo during making a video... I really don't know in wich situation in real life i can use it. The same with face unlock. For me it's absolutely useless. IMHO
[Galaxy S I9000 Android Development] Fenvarien:
I film and take pictures a lot (having a young child creates many opportunities and the whole family asks constantly for pics...).

But 9mb is certainly a high price tag. Maybe it's better to drop this feature!

... using tapatalk
[Galaxy S I9000 Android Development] karapoutsoglou:
Exactly!

No ram loss for useless features!:D

a semaphore power user wants

-fast browser

-fast opening word documents

-fast loading time of apps

-perfect tethering

-good battery life
[Galaxy S I9000 Android Development] demonstone:
Yeah, for me is an useless feature too.

Enviado desde mi GT-I9000 usando Tapatalk
[Galaxy S I9000 Android Development] xenon_bn:
Useless feature for me, too
[Galaxy S I9000 Android Development] a0a0:
Hi, your kernel's mod is fantastic but why don't you add others overclock/underclok levels?
[Galaxy S I9000 Android Development] DarknessWarrior:
those who don't want this feature why don't you take the BM version and leave the normal version with it?.. i'm not saying i'll use it often, but i like to know that i have the choice to use it if i ever want to.
[Galaxy S I9000 Android Development] D'evil69:
Hello, Stratosk,

Will you please make a Semaphore kernel based on the new XXJVU ROM release.

Thanks! ευχαριστώ ;)
[Galaxy S I9000 Android Development] DarknessWarrior:
read the posts behind and you'll know.
[Galaxy S I9000 Android Development] karapoutsoglou:
that would be perfect but i guess its double work for stratos.;)
[Galaxy S I9000 Android Development] DarknessWarrior:
yeah statosk probably hates me by now because i'm always asking him to do more stuff (color mod, this version, whatever) lol :D
[Galaxy S I9000 Android Development] malcho:
I also think that taking picture on video is not necessary.

It's bettet to have more ram.

And this rom (JVU)works pretty good.

I will stick for a while with semaphore kernel.
[Galaxy S I9000 Android Development] demonstone:
Simple, because with bm version I can't record in 720p...

Enviado desde mi GT-I9000 usando Tapatalk
[Galaxy S I9000 Android Development] castaway1:
looks like this need a poll.

BTW im for +9MB is much more needed then taking picture in video
[Galaxy S I9000 Android Development] NEFart:
I'm sorry but i need to record 720p video :D Anyway the quality of those pictures wich taken during video recording is not so good as a normal 5 mp photo. As i understand the picture catched while recording video is just an one of the frames of the video and it's about 1280 x 720 (5mp is 2560 x 1920) and some times without focus :D

So if i need to choose 9 mb of ram or those bad quality photo, my choise is 9 mb of ram))
[Galaxy S I9000 Android Development] jugster:
Is there a reason why this feature with pictures in videos can't be toggled in HM.carbides app like everything else? That would fit everybody, let those who want to activate it activate it.

Stratosk, you should really consider giving up gb for ics. It is really nice and would be nicer if run with your kernel :)
[Galaxy S I9000 Android Development] stoske:
+1 .... 9MB is too much for some feature which will be used by less then 1% of people...
[Galaxy S I9000 Android Development] flolep:
+1 here. If you could put this feature with a toggle in semaphore apk, it would be perfect.

For myself, if it's really 9mb, I won't use it for sure :-)

Take care.

+ +

Sent from my GT-I9000
[Galaxy S I9000 Android Development] Millionas:
I dont need the feature..Would rather have 9 mb "extra" ram
[Galaxy S I9000 Android Development] stratosk:
Of course not my friend. :)

That's correct. I also guess it's just a frame.

If I could this I would also make a unified bm/non bm version. Memory is reserved during early stage during booting. It's not easy (I don't know if it even is possible) to change this at runtime.

@all

Thank you everybody for your feedback. I will try a little more to be more specific about the exact size of RAM required by this feature. I guess it's 9MB since this is the difference between the kernels of JVU and previous versions.

The I will make a poll about this feature. But I think 9MB for a 1280x780 photo (low quality) it's too much.
[Galaxy S I9000 Android Development] ~ Myzrael ~:
Taking crappy photos during video recording? No thanks, it's totally useless, ram wasting at its best
[Galaxy S I9000 Android Development] djb77:
Yes 9MB is a bit costly, but seriously I'd prefer to have the options for photos there still. BM version could focus on not having it since 720p is busted on it anyway, but for the standard I'd give it that extra RAM to let it work properly.
[Galaxy S I9000 Android Development] gsw5700:
agreed

Sent using TCP/IP
[Galaxy S I9000 Android Development] hackeron:
Camera app that was so flawless now they have to ruin it with a stupid feature that no one will use and eat ram. Wtf
[Galaxy S I9000 Android Development] jugster:
Not everything needs to be changeable at run time. I'd say for both bm/nonbm and picture in video, if it was a boot time thing, that would be fine. If it is easier for you with a unified code branch then I'm all for it.

That said, I'm on b13. It is sweet!
[Galaxy S I9000 Android Development] robogo1982:
I rarely use my SGS for videos, so useless for me, too. :)
[Galaxy S I9000 Android Development] stratosk:
After 5 hours of testing the memory configuration and after hundreds of reboots, I managed to reduce the available memory by 2.5MB and enable the feature only for 720x480 video recording. :p

Trying to reduce further the available memory didn't enable the feature to 1280x720. I guess something else also changed. This is a headache!

@any dev that want to experiment:

increase the S5PV210_VIDEO_SAMSUNG_MEMSIZE_PMEM to 6618 in arch/arm/mach-s5pv210/mach-aries.c

This will enable the capture of a frame during video recording up to 720x480 and will increase the reserved memory by 2.5MB
[Galaxy S I9000 Android Development] Dan_Aykroyd:
Thanks again for all your research & work stratosk!

For me also it's a useless feature; specially in the BM kernel, it should be left out to achieve the larger free memory possible.

Thanks!!!
[Galaxy S I9000 Android Development] wackowizzard:
Any idea when you will release JVU version? I really really want it ... :eek:I am addicted:eek: to semaphore kernel ... because for me, its the best kernel ever! :D:D:D
[Galaxy S I9000 Android Development] djb77:
stratosk said no ETA. 2.4.0 works fine with JVU so there's no big rush.
[Galaxy S I9000 Android Development] wackowizzard:
ok.
[Galaxy S I9000 Android Development] MrAndroid12:
If voodoo colour isn't applied or played around with after each boot up, a green splash appearers when turning off the screen
[Galaxy S I9000 Android Development] a0a0:
UP________
[Galaxy S I9000 Android Development] jugster:
Time is limited friend.

If you submit a patch and there is an interest from Stratosk, I'm sure he'd apply it. This has also been discussed before, search is also your friend.
[Galaxy S I9000 Android Development] jna9000:
Sounds reasonable. I second this.
[Galaxy S I9000 Android Development] darckengel:
The question is, who missed this feature before samsung introduced this in the new video app, i mean who really takes shots while video recording for anything else than showing the new useless features to buddies?

I don't think it worth losing some ram to keep this kind of things ....
[Galaxy S I9000 Android Development] NEFart:
Agree with you 100% it's the same useless as face unlock... When you are running somewhere or when you are very busy and you need to make emergency call, you need to stop and play with camera trying to catch own face to unlock you phone for making a simple call... It's very nice feature if you are a schoolboy and you want to show to your classmates how cool is your device wich can recognize your face.

The same here.. Only i can do with this feature is to ask my friend:"Hey buddy, can you make photo during making a video? No? Your phone sucks! I can! The quality of those photo is a bit ****y but important that i can!" Childish.....
[Galaxy S I9000 Android Development] darckengel:
Seriously, the only things that found Samsung to compensate not porting ICS is face recognition, taking photos while video recording, and a video editor from sgs2 (Can you really make a good job with a cellphone video editor ...)?
[Galaxy S I9000 Android Development] andrei16ro:
All the new functions from XXJVU are working with Semaphore JW1?
[Galaxy S I9000 Android Development] Coolgreek:
Almost all,

the function of taking a picture while recording video does not work with this kernel (seems that this feature requires some extra 9mb of memory reserved from the kernel:().

If you read the previous pages you will read that most users are not willing to sacrifice 9 extra mb of memory (including me- to stratosk) just for this function.
[Galaxy S I9000 Android Development] bitblaster:
And to this add the fact that the picture you take has the same resolution as the video you're recording, because it's simply a frame grabbed from the video stream and saved to a file...
[Galaxy S I9000 Android Development] McDown:
Which makes that feature even more useless ;)
[Galaxy S I9000 Android Development] keuda:
9 mb for this? No deal.

Enviado desde mi GT-I9000 usando Tapatalk
[Galaxy S I9000 Android Development] stratosk:
Data changed a little about taking pictures during video recording. :o

I made it in 1280x720 with 3MB less available RAM. So, if I'll implement this 'feature' the available RAM will be 336.8MB.

I still can't understand why stock kernel had 9MB less available RAM?!?

Anyway, there is a poll in www.semaphore.gr about this.
[Galaxy S I9000 Android Development] erto90:
Ok but the ability to take better photo ( mean quality ) remain right?
[Galaxy S I9000 Android Development] darckengel:
You will take a 1280x720 shot, wonderfull!

Normal camera is not affected it works like before, it's the samsung guizmo that you will not be able to use.
[Galaxy S I9000 Android Development] stratosk:
Sorry, I didn't understand. Everything will be the same as the 2.4.0 version except the 3MB less available RAM and the feature to take pictures during video recording.
[Galaxy S I9000 Android Development] Dan_Aykroyd:
Thanks stratosk!

Please keep this "feature" removed from the BM version in order to have the most possible available RAM.

Thanks!!! :D
[Galaxy S I9000 Android Development] NEFart:
There is no 720p video recording in BM version... so it will be removed anyway :D
[Galaxy S I9000 Android Development] HM.Carbide:
Really great work!

It is worth to have 3MB less for a full stock compatible kernel.

It is still 337MB with your kernel vs 320MB on stock kernel.
[Galaxy S I9000 Android Development] stratosk:
The feature also works in lower quality.

But anyway I will definitely keep it out in BM version.

Edit: Sorry for the typo.
[Galaxy S I9000 Android Development] Dan_Aykroyd:
Exactly what I was going to say, that the feature probably also worked in lower qualities.

I didn't understood your post stratosk... you meant that you will keep it out of the BM version, or that you'll include it??? :(
[Galaxy S I9000 Android Development] darckengel:
He said he will not.

I just don't understand how people can call this a feature :)

I would prefer some investigation on have more ram available without losing recording instead, like in galaxian kernel which have 344Mo available...

More memory available is more multitasking ability and more smoothness UI which is more usefull than taking snapshots while recording...
[Galaxy S I9000 Android Development] gonsa:
I don't have BLN working now.

I'm with JVU and Semaphore 2.4.0.

Is this normal?
[Galaxy S I9000 Android Development] Coolgreek:
I am still on JVT and as i have my phone behaving like i want (having in what i want,not more nor less) i am not willing to upgrade to JVU now. So i am going to stay (happy;)) with 2.4.0 JW1 kernel, i am not willing to sacrifice 3mb of memory just for a feature my rom will not have (if i upgrade to JVU maybe i will reconsider, not likely though:p).

Stratosk keep up the good work and also thank you for listening to members opinions and thoughts, it is just one more thing (from the many) that make your kernel the best one!

I totally agree... However i am not sure that 344mb are without sacrifices, i still remember that semaphore had 1mb more memory but in the cost of some video playback, so we are back to 340mb with all enabled. It is worth investigating though!
[Galaxy S I9000 Android Development] stoske:
Taking photos during videos is very stupid feature.

If not completely removed it should be optional thru Semaphore app...
[Galaxy S I9000 Android Development] ZaneZam:
Mine is working here on the same setting, but i had to install BLN control that i've previously forgot about! ;)
[Galaxy S I9000 Android Development] stratosk:
I investigated this (again) today. I spent many hours to understand how it works.

Drivers usually want DMA (Direct Memory Access). To achieve this they want a part of continuous part of memory. Samsung drivers require several MBs of reserved RAM.

Linux kernel can reserve this 'huge' memory for drivers only at boot time to ensure that the memory will be continuous and not fragmented. It (kernel) uses a specific function to achieve this. After kernel initialization and after all the drivers 'take' their reserved memory, this function is destroyed. It would also be difficult to find continues memory at run time.

So, with the current driver architecture I think it's nearly impossible. One solution would be to pass parameters to the kernel when it boots, and instruct for the memory we want to reserve.

For a PC, parameter passing would be easy. But in our device the kernel is loaded by the second bootloader.

1) I have no idea how to change the bootloader to achieve this.

2) We would have to flash bootloader for every change in these parameters.

The other solution would be to change the method that samsung drivers reserve memory. This would be a huge work to do and I'm not sure if there is another way to do this.

So, I suppose we have to live with this unless we don't want video recording or playback.

Once I build a kernel with 363MB (I release it only in a Greek site). But with absolutely no capture (video or photo) capabilities. :)
[Galaxy S I9000 Android Development] gonsa:
well, i've uninstalled it and installed it again.

nothing.

not even in the led test inside the app the lights blink.. :confused:
[Galaxy S I9000 Android Development] stratosk:
Please be sure that you have the scheduler in the BLN control application deactivated.
[Galaxy S I9000 Android Development] gonsa:
yup, deactivated.

i never had any issues with BLN before. This is weird.

Was working on JW1 with 2.4.0, now with JVU it's not.

bah.
[Galaxy S I9000 Android Development] MasterJam882:
Tried BLN today for the first time(JVU).

With standard app it didn't work but with BLN pro all is working fine. Waiting for fixed stock SMS App so that even messages will work with BLN.

greetz
[Galaxy S I9000 Android Development] gonsa:
Nothing that a good old fashion reboot wouldn't solve :D

Working like a charm now.

thank you for your answers and help
[Galaxy S I9000 Android Development] Dan_Aykroyd:
If you find the odexed patches services.jar for XAJVU please let me know. Thanks
[Galaxy S I9000 Android Development] DarknessWarrior:
if its only 3mb please keep the taking pics functionality on the normal version.
[Galaxy S I9000 Android Development] robogo1982:
Works fine for me ;)
[Galaxy S I9000 Android Development] djb77:
@robogo1982

Couple of quick questions for you if you don't mind regarding your working BLN.

- is it a stock JVU you're running (with Semaphore kernel ofcourse)

- are you odexed / deodexed

- did you apply any patches

- is it the free or pro version of the BLN app you're using

Thanks in advance.
[Galaxy S I9000 Android Development] darckengel:
I saw many people with arguments to tell why the new feature is useless and so there is no need to reduce available memory just for this, but i would like to know what people want to do with this for those who wants to reduce memory to be able to take snapshots while recording (except that "ho it's fun and i will impress my classmates" :) ).
[Galaxy S I9000 Android Development] djb77:
There's only one thing to say about all this, its part of the STOCK Firmware, so it should work. Its up to the user if they use it or not, and seriously if a couple of mb of RAM is worth whining about, just use the BM version.
[Galaxy S I9000 Android Development] maopaopao:
Is it possible to use Semaphore Script Manager to switch between the nonbm and bm version kernel?
[Galaxy S I9000 Android Development] sarbe:
Stock JVU

Odexed

Go SMS

BLN Pro
[Galaxy S I9000 Android Development] Dan_Aykroyd:
No... you have to flash either one of them
[Galaxy S I9000 Android Development] darckengel:
You have to remember that samsung create those craps feature only to try to make us forget that they will not port ICS on I9000. It's just a begining, they will add some more things... So if you have to lose some ram for each new useless thing, you will soon have all the extra memory earned by kernel devs lose for that...

And when you use custom roms, many useless features from stock are removed, and most people are happy with that (who used html viewer or angry gps?).

So i think that taking bad quality snaps while recording is as a key feature as angry gps aka useless.

(if you really want to use a frame of a video as a picture, you can always make it afterwards, at least you will choose the better one)
[Galaxy S I9000 Android Development] djb77:
True that Samsung is holding off on ICS, but when I create my ROMs I like to have all the features that are available on the stock ROM. This is why I want it done.

Personally I'll probably never use it, but theres a small chance someone using my ROM will.
[Galaxy S I9000 Android Development] robogo1982:
Ditto. 10chars
[Galaxy S I9000 Android Development] bitblaster:
So the current driver implementation is very basic i suppose and causes a total waste of resources.

Is it possible to detect at runtime when the driver needs actually the ram (a kind of trigger) so that you pass it a fake address at the initialization, then when it triggers you move pages in the ram freeing up the needed block at that given address?

Another little thought/workaround regarding passing parameter from the app: what about patching the kernel binary from the semaphore app?

Let me explain: suppose you create a constant at the very beginning of the kernel image. This constants contains the value of the memory to be reserved.

From the app you could patch the kernel image changing that particular bytes so, at bootup the kernel simply finds the changed constant and uses the new value.

I also tought a different way but this seems not practicable: you could deploy a single base version and the diff files needed to patch the base zImage file using what the user chooses in the app, but i did a binary cmp between the two releases of your kernel and there are MANY differences, whereas I expected only few bytes (the value of some constant you change in the code). And looking at the diffs there are no byte shifting too, the patterns are completely different.

Are the camera drivers open source?!

However thank you for the effort you are putting in!
[Galaxy S I9000 Android Development] stratosk:
I don't know if it's very basic and I don't know if there is different way to implement this. The problem is that if you will free the reserved RAM, you don't know if you will find again continues pages of RAM that is needed for the DMA.

I've thought about patching the binary but the problem is that the image is compressed and it self decompressed during boot. That's the reason when you compare the zImages you find so many differences.

To patch the zImage you should take the zImage file from the partition which the kernel is stored, extract the gzipped kernel, patch the binary (if you find a safe way to do it), gzip the kernel, create the zImage again and put the zImage back to partition. It's a little tricky. :)

Edit: Actually this is how Samsung call it:

"V4L2 Capture device support file for Samsung Camera Interface (FIMC) driver"

This part of code is open source.
[Galaxy S I9000 Android Development] bitblaster:
Sorry for that stupid sentence, i'm not a kernel developer, obviously it's packed... :o

Found this, tried version 4 (only an sh script) and it really works on my linux box. This time the extracted kernel.img differs for only 1 byte, exactly at offset 11609 :-D

I'm currently analyzing which linux commands it uses to port this script on android. In the worst case we can still reimplement it in java...
[Galaxy S I9000 Android Development] stratosk:
No problem. Thanks for trying.

Are you sure that this script give you also the kernel image? I think that this will extract the initramfs which is not useful in our case.