View Full Version : Elphel 333 HTML
Oscar Spierenburg February 3rd, 2007, 09:20 AM Changing the html page to make it better for film making:
So far the most important info has come from Andrey:
<<you can change ccam.cgi but you do not need to do it. It is a binary application that processes HTTP requests in the camera, requests themselves are generated from html+javascript (camvc.html, *.js) files in ftp://<camera_ip>/usr/html/ directory (visible as http://<camera_ip>). This directory resides in JFFS system and is write enabled so you may change/add files there. For experimenting I would recommend using /var/html directory (linked as /usr/html/var) that is in RAM-disk so it is perfectly safe to change data there (will be erased after reboot) - files will be visible as http://<camera_ip>/var/
>>
Oscar Spierenburg February 3rd, 2007, 07:43 PM My first ideas are: how can we implement audio recording into the interface? Can we trigger a simple audio software in Linux through the HTML page?
And about the HTML page controlling the camera; can we just skip everything we don't (seem to) need in the current AJAX panel, or does everything depend on one another. If so, perhaps we can make a separate 'tap' in the control panel, with all the buttons we need for film making.
I'd like some suggestions about this.. I'll start experimenting with my camera soon. I'll post the exact HTML code if people are interested.
Andrey Filippov February 3rd, 2007, 11:55 PM My first ideas are: how can we implement audio recording into the interface? Can we trigger a simple audio software in Linux through the HTML page?
And about the HTML page controlling the camera; can we just skip everything we don't (seem to) need in the current AJAX panel, or does everything depend on one another. If so, perhaps we can make a separate 'tap' in the control panel, with all the buttons we need for film making.
I'd like some suggestions about this.. I'll start experimenting with my camera soon. I'll post the exact HTML code if people are interested.
Oscar,
I don't think I can help much right now - too busy. What I could recommend - make/experiment with a separate (small) application and use the current one for other controls - it is designed to be "nice" - look at the current setting before changing anything.
If you are brave enough to get into my (rather messy - I was learning ajax myself) javascript code - go ahead and try adding/modifying the current one and I'll try to answer particular questions (preferebly in the wiki so others could use it too). Small tip - if you are changing *.js files - clean browser cache each time - just "reload" will not help. This is why in the production software Makefile adds numbers to javascript file names (and edits links to them in html) so browser will not try to use old javascript file from cache.
Matteo Pozzi February 5th, 2007, 03:15 AM hi oscar I'm preparing a html page with a new gui ....
I think the best that we can do is something like a layer (like photoshop) with in beckground the classic interface ....when I've got something I'll show you
for audio maybe we can contact the programmer of audacity (http://audacity.sourceforge.net/) maybe they can help us
also have a look at http://wiki.elphel.com/index.php?title=HD_cinema_camera_Development_FAQ#Background I'm making a summary of this project
Oscar Spierenburg February 5th, 2007, 07:47 AM Matteo, that's great. I'm doing some tests myself with the camera, but somehow I can't get the page (the original one to start with) to work in the /var directory on the camera. I don't know what files need to be there besides the html file and js files.
Here is a zip file with all the files I use right now:
http://www.degalerie.nl/1/camvc.zip
Matteo Pozzi February 6th, 2007, 08:19 AM Hi Oscar I'm not able to help you cause I haven't the camera
but take a look at what I think is the best way to operate! tell me what you think...I'm planning to make also a selectable safe area layout for 16:9, 2,35:1 and 4:3
http://www.webalice.it/teo.poz/elphel_GUI/
I've made it with flash MX but I have found on the web that there is somthing similar for linux ....and open source F4L is the name
http://f4l.sourceforge.net/
Oscar Spierenburg February 6th, 2007, 07:40 PM It's very good. Really!
Somehow, this conversation is also going on at the other Elphel thread..
Andrey said it will be impossible to use those transparent buttons, so what I thought would be possible (like Odd says) is to have the controls in a separate frame. I made a quick example with your buttons in Photoshop.
http://s09.picshome.com/6c2/camvc.jpg (http://www.picshome.com/)
Igor Babic February 7th, 2007, 02:11 AM Try to do your buttons on a black background, and that they look more simple. You dont want to make them distractive to your eye, this is camera and primary function is to see picture that records, and not the fancy buttons. Keep all your buttons and pulldowns away from picture like in your last posts. Anyway good work guys.
Oscar Spierenburg February 7th, 2007, 06:15 AM Yes, that's a good suggestion. The grey background can be black. I like Matteo's 'fancy' sliders though.
Also very important to note is that the whole left AJAX control panel is unnecessary with the new buttons, so it shouldn't be there.
Matteo, the only thing missing right now is the white balance. In Ajax its controlled by two sliders. When you double click on one of them, it will turn on or off auto balance. It could be made in just one button (balance ON/OFF)
Matteo Pozzi February 7th, 2007, 06:22 AM ok I'll try to fix it
one question ....how the two slider work?
you want that the white balance when you press the button you have said
save automatically the new state?
Oscar Spierenburg February 7th, 2007, 11:16 AM Yes, because you could easily set the white balance by pointing at a white board, and then press again to 'hold' the setting. If you want to edit the two sliders manually, you could go back to the ajax panel.
So, auto on/off (or hold) would be fine i.m.o.
Maybe others have a different suggestion.
Oscar Spierenburg February 9th, 2007, 08:09 AM I like the idea of a separate frame below the ajax interface.
But I wonder how it will work, because the camvc opens in a new window (with a message saying something like: translucent PNG images that are not yet supported by some browsers..etc.) You can select 'no' but then the image flips constantly between different sizes.
Maybe Andrey knows if is possible to get a new frame with the 'film controls' on the bottom of this page.
B.T.W. Is there a list of the HTML commands that the camera uses?
Oscar Spierenburg February 10th, 2007, 05:37 PM OK...
I've managed to edit the camcv page a little by putting a 16:9 frame size in the list in the ajax panel. Now I'd like to make it the default size.
I've also (more importantly) made a html page with two frames, the camcv.html on top and a new 'movie frame' on the bottom. So far I just made one link to record the stream, which is important to me because the record button(dvr) in the ajax panel doesn't work.
Here is a screenshot of the new window.
http://s09.picshome.com/657/snapshot1.jpg (http://www.picshome.com/)
And when you press the REC link:
http://s09.picshome.com/657/snapshot2.jpg (http://www.picshome.com/)
(B.T.W. I'd like to skip this frame too and go directly to 'record to disc')
Now I'd really like to work with the sliders by Matteo. I think we can easily use the sliders in the html page, but how should they be programmed. I'll try to search in the ajax html source code how the sliders work, but others probably (hopefully) know much more about this than me.
Again, for those who want to take a look at the files:
http://www.degalerie.nl/1/camvc.zip
Matteo Pozzi February 12th, 2007, 04:09 AM good news oscar
so did you implement a command in the bottom frame and it work! cool
I'm remaking all the gui in a bottom frame ...all black so no distraction! and
the slider :-) I don't konw how they work in html so I can't help you
I use flash! but all my work can be converted in simple html lenguage converting every buttons in png or animated gif
but for me is better using flash so that the work don't suffer of pixelation cause flash is vectorial! and all the frame is inside only one file!
Oscar Spierenburg February 12th, 2007, 07:39 AM That's good, I'm looking forward to the new version. I think flash can be used. We should be able to make html commands on the flash animations, or am I wrong? Flash buttons can have links, but I don't know how sliders work. Maybe somone can have a look at the camcv codes and see how the ajax sliders work?
I posted the files above.
Besides that, it was very easy to save the new files on the camera... I now begin to fully appreciate that Elphel is 'open source'.
Matteo Pozzi February 12th, 2007, 08:16 AM I don't know much of programming in flash (I'm learning). It use a lenguage called action script that is very powerfull (flash buttons can have link and much more)...maybe with practice we can load preset from a txt file or from other source and save it also! I think that with it we can do everything we can do with html but what I like more is that all is saved in only one file (link, image, sound.... are all into it!)
Phil Stone February 12th, 2007, 08:22 AM That's good, I'm looking forward to the new version. I think flash can be used. We should be able to make html commands on the flash animations, or am I wrong? Flash buttons can have links, but I don't know how sliders work. Maybe somone can have a look at the camcv codes and see how the ajax sliders work?
I posted the files above.
Besides that, it was very easy to save the new files on the camera... I now begin to fully appreciate that Elphel is 'open source'.
Hi Oscar
I see your using the older recording method with the dialog box. I think you will be stuck with 2gb files this route. You may need to make a script to automatically create & name the files or you will have to pause filming every 15-20minutes to create a new file.
Regards Phil
PS Im filming with the 333 in Amsterdam in two weeks.
Matteo Pozzi February 12th, 2007, 04:18 PM hi to all
I'm back to show you what I'm doing
http://www.webalice.it/teo.poz/elphel_GUI2/
tell me what you think
Igor Babic February 12th, 2007, 04:54 PM Matteo
"That's the way I like'd..."!!!!!
PS
Time code has hours mark too and this is standard. Keep those numbers in non italic font, it will look better.
Oscar Spierenburg February 12th, 2007, 05:57 PM Matteo,
That's really great! It looks very professional. I can't wait to get it programmed and I'll go and try what I can myself. There's a separate java script for the sliders with the camcv (also in the zip file), but it's not something I can easily understand.
I really hope we can also find a way to get audio recording into the interface too. Maybe there's a web based audio recording software that can be triggered with the same record button? ....but first, lets try to get the sliders and buttons to work.
Phil, I'm looking forward to your Amsterdam footage...will you post some? Will it be a cycling race?
You're probably right about the 2gb files, but 15 minutes is very long when you're filming scripted scenes. I'm happy enough I get around the DVR trouble I had.
Matteo Pozzi February 13th, 2007, 04:05 AM hi and thanks to all
oscar when you have the link to the botton we need can you send me so that I can implement in the gui!? I think that is not so simple for me to get it all work cause I don't know the lenguage I'm using ....html, flash programming, javascript and now php (have you seen the new implementation!?), mysql .... I'll do my best to learn all that I can!
for audio recording take a look at this page
http://developers.sun.com/techtopics/mobility/midp/articles/mmapioverview/
with java maybe can be possible to record directly from html
but I think is better for us an external program like audacity and start audio recording before video rec and stop video then stop audio! cause I think that audio from html is not of high quality .....maybe is possible to connect an html button to a button of an external program ....but for this I've found nothing!
and last ....where the elphel save the file that record!? and what is the name that it give it
seeya
Oscar Spierenburg February 13th, 2007, 02:57 PM Matteo, can you post the editable files so I can experiment with it in Flash? I don't think I can edit an swf file to test the html links.
Matteo Pozzi February 13th, 2007, 05:23 PM here you find the flash file
http://www.webalice.it/teo.poz/GUI2.zip
if you know flash is very simple to connect a button to a link
but if you do not know this lenguage send me the camera link and I'll make the job maybe the best I can do for you is to prepare the frame so that you can load it in the html gui that you are doing!
bye
Matteo
Phil Stone February 14th, 2007, 06:58 AM Phil, I'm looking forward to your Amsterdam footage...will you post some? Will it be a cycling race?
You're probably right about the 2gb files, but 15 minutes is very long when you're filming scripted scenes. I'm happy enough I get around the DVR trouble I had.
Sure I will post something, I still have that Rome 333 avi sitting here with St Peters & the Colosseum etc. Not had time to start on it yet, I need voice commentary but my girl friends keep changing & with them the voices! Was filming with the 333 in Andalusia also a few weeks ago. Managed to get two hours of unbroken video behind a Russian Pro. Also filmed with a good HDV camera & you can see the difference is like chalk & cheese. The problem for me with the camera just now is really just the auto exposure which needs to be calmed down so its not so obvious.
As for filming at say 24fps I would not film at 720p but use something much bigger & then you can simply cut it in post. This way you can worry less about getting the perfect frame. You can use key frames to keep the image perfect by panning & zooming a 720 frame inside the original frame. You can shoot 27fps at 1024p so 24fps will get you even more real estate if you wanted it & the scene is not too complex. All you need is a 16:9 template in the elphel software so you have an idea of what the image will look like.
Matteo Pozzi February 14th, 2007, 08:42 AM hi Phil can you tell us what lens did you use for your video!? is it a fisheye!?
and how did you solve the 2gb fat32 limits?
many thanks and good work
Matteo
Phil Stone February 15th, 2007, 03:12 AM hi Phil can you tell us what lens did you use for your video!? is it a fisheye!?
and how did you solve the 2gb fat32 limits?
many thanks and good work
Matteo
Yes I used the Fujion 5mpix fish eye a lot last year, I have some old 16mm C-mount lenses but the Computar one seems to do a good job for me. The latest elphel software has a little DVR recorder that runs a script that makes a new file at any size less then 2gb. The default is 100mb but I normally change this to 1gb. Its a bit temperamental though & it can just stop recording for no apparent reason. I find if I format the recording drive before filming it will work. Another trick to get it to fire up when you have files already on the drive from a previous film is to change the name of the DVR folder & reinstall it.
Oscar Spierenburg February 17th, 2007, 01:59 PM OK, I've installed flash on the Linux firefox browser and put Matteo's control page on the camera. As you can see, it's a bit too big, but that's just a small issue.
http://s09.picshome.com/d29/snapshot3.jpg (http://www.picshome.com/)
http://s09.picshome.com/d29/snapshot4.jpg (http://www.picshome.com/)
http://s09.picshome.com/d29/snapshot5.jpg (http://www.picshome.com/)
I must say, the new frame made by Matteo right below the ajax panel is i.m.o. exactly what we are looking for to make filming as easy as possible.
Only I'm afraid my skills in html are too little to program the sliders. Maybe we can just copy some parts of the ajax script and put it in the new panel...?
I've also edited the camcv.html some more to make the default compression quality to 85% in stead of 70%. I've tried all kinds of different things that didn't seem to work, like the default frame size and streamer type with 24fps etc. Somehow it seems those settings are not controlled from the html file. Maybe Andrey knows where to look.
Matteo Pozzi February 19th, 2007, 02:37 AM cool to see that result!
to solve the problem of the dimension you have to export the frame from flash and under ->file-->publish setting--->html---->percentage set the percentage at 100% width and 100% height so that the frame will adapt to the page size!
Matteo Pozzi February 19th, 2007, 04:49 AM for the slider in flash is not so difficult to program if we have a list of the html links in the camera we can easily program the flash frame! I don't know in html or java how they works but looking at the slider in flash for now I'm not able to write the number in the right white box but to program a simple slide I think I could
Oscar Spierenburg February 20th, 2007, 11:04 AM Andrey wrote to me:
<<there is a special library for buttons among those .js files, but it was designed so that all the buttons were the same size and saved in a same *.png file. The buttons are described (as a table) in the main html file.>>
Should we see sliders as buttons too? I hope someone with more experience can take a look at the camcv html page. I'll do my best though.
Matteo, the only thing that needs to be on the bottom frame is the flash animation. Here are the files I put on the camera and the modified flash project.
http://www.degalerie.nl/1/ElphelMovieFrames.rar
Index.html is the frames page.
Matteo Pozzi February 21st, 2007, 06:32 AM Hi oscar I've seen the file you uploaded! one question:
what is the function of the image with the 45° black and white line?
for the png file images:
I've seen it but is only an image with a collection of the image of the camcv interface the not more ....the elphel page reconnect to that file using raw and column! so is possible only to use square icon!
but what we need is a list of "http:\\192....... " to make the buttons work
don't worry for the slide I made in flash
If I have those command list with some patience I think I can do the job
Oscar Spierenburg February 21st, 2007, 08:15 AM The black and white line is meant to look like a movie makers clap-board. I thought it was a good clear division between the two frames.
Have you looked at the html source to see if the commands we need are in the columns of the buttons?
Matteo Pozzi February 21st, 2007, 08:28 AM I've looked at that but I've seen only (or better, I've only undestand) some preset that we can change like image width and image height for the rest I can't understand because I don't know java and looking at http://wiki.elphel.com/index.php?title=Ccam.cgi
is totally different command but for what I've understand, this is the wiki of the interface we are working on ...or not!?
it will be much more simple if we could use a mix of ccam.cgi
and videoapi
http://wiki.elphel.com/index.php?title=Video_API
in case have you tried to make a frame with a button that use one of these?
http://wiki.elphel.com/index.php?title=Video_API_Extensions
tell me if it is possible!
Andrey Filippov February 22nd, 2007, 10:38 AM Hi oscar I've seen the file you uploaded! one question:
what is the function of the image with the 45° black and white line?
It shows the parts of the sensors that is not currently read out (when partial window is used)
Andrey Filippov February 22nd, 2007, 10:45 AM I've looked at that but I've seen only (or better, I've only undestand) some preset that we can change like image width and image height for the rest I can't understand because I don't know java and looking at http://wiki.elphel.com/index.php?title=Ccam.cgi
is totally different command but for what I've understand, this is the wiki of the interface we are working on ...or not!?
it will be much more simple if we could use a mix of ccam.cgi
and videoapi
http://wiki.elphel.com/index.php?title=Video_API
in case have you tried to make a frame with a button that use one of these?
http://wiki.elphel.com/index.php?title=Video_API_Extensions
tell me if it is possible!
Matteo, these two APIs can not work at the same time - there is a mechanism to switch from one to another. ccam.cgi is definitely more current as I updated it myself working on camvc, it was also updated in the newer version that supports 5MPix sensors (12 bit) and higher precision "gamma" tables. Spectr also added EXIF support - current versions of the FPGA code provide precise frame timing with each frame acquired.
Unfortunately there are a couple of latest "opt=" switches that work in ccam.cgi, but are not described in wiki (like what to return if camera is busy, allow command while streaming)
In the 353 I hope that the API can be mostly written in PHP (operating in fast CGI mode) - that will make it easier to support.
Matteo Pozzi February 22nd, 2007, 04:40 PM It shows the parts of the sensors that is not currently read out (when partial window is used)
thanks Andrey but I was asking for the line made by Oscar! :-)
I've understand what you mean cause I've seen the camvc at work some ago on the camera4.elphel.com and camera5 link but now I can't make them work I use win xp is this the problem?
and another question
ok we can't use the two APIs simultaneously for that I think that using an external html frame (flash?) is not possible (or not?) so, maybe the best way to change the gui is to learn javascript and change the camvc.cgi ...looking on the net I've found and installed an opensource javasript-editor (Aptana), than I've downloaded the elphel_6.5.3.tar on the sourceforge.net and I've opened the camvc.html in it (elphel_6.5.3\elphelcamera\packages\web\camvc) but I can't preview the html because it freeze on the "loading...." page so , did you know a javascript editor that can preview all the javascript without having the camera like dreamweaver do for html?! many thanks
Matteo
Andrey Filippov February 23rd, 2007, 10:32 AM thanks Andrey but I was asking for the line made by Oscar! :-)
I've understand what you mean cause I've seen the camvc at work some ago on the camera4.elphel.com and camera5 link but now I can't make them work I use win xp is this the problem?
Those cameras still work but they could easily get in some strange states because they are opened fro the whole world. I sometimes just reboot them to get to known states.
You actually can add software there and I can find you some private IP address so others will not disturb your testing.
ok we can't use the two APIs simultaneously for that I think that using an external html frame (flash?) is not possible (or not?) so, maybe the best way to change the gui is to learn javascript and change the camvc.cgi ...looking on the net I've found and installed an opensource javasript-editor (Aptana), than I've downloaded the elphel_6.5.3.tar on the sourceforge.net and I've opened the camvc.html in it (elphel_6.5.3\elphelcamera\packages\web\camvc) but I can't preview the html because it freeze on the "loading...." page so , did you know a javascript editor that can preview all the javascript without having the camera like dreamweaver do for html?! many thanks
Matteo
I did not use any fancy editors for AJAX development - just a browser, a camera and universal kwrite editor that colors all the languages I use (from HTML to Verilog). I do not think that integrated solutions like Dreamweaver can work - you need to have finer control over the code. I also do not see the need for flash - it will just add complexity, but in that I might be wrong - I don't use/like it myself so I do not know it.
I think what we really need now is to find a good LAMP developer for the DVR server. Spectr just upgraded the elphelOgm software and there is a lot that can be done on a PC (DVR server) side - to handle recording and handling of the recorded video - reformating, processing.
Oscar Spierenburg February 24th, 2007, 04:33 AM Andrey,
We want to make a frame underneath the ajax panel with bigger control buttons and sliders for the main features (brightness, gain, contrast, exposure, white balance and frame rate)
So, there aren't any html commands for the 333 we can use to control those sliders/buttons?
Oscar Spierenburg February 24th, 2007, 04:34 AM Double post.....
Matteo Pozzi February 26th, 2007, 09:18 AM You actually can add software there and I can find you some private IP address so others will not disturb your testing.
Cool if you can I'll appreciate it! :-)
I think what we really need now is to find a good LAMP developer for the DVR server. Spectr just upgraded the elphelOgm software and there is a lot that can be done on a PC (DVR server) side - to handle recording and handling of the recorded video - reformating, processing.
I'm sorry but on the linux side you can't receive any help from me but if you need something that reguard graphics in general I can give you an hand
We want to make a frame underneath the ajax panel with bigger control buttons and sliders for the main features (brightness, gain, contrast, exposure, white balance and frame rate)
So, there aren't any html commands for the 333 we can use to control those sliders/buttons?
If it is possible and you can send us that list or something that teach us how to use the info on http://wiki.elphel.com/index.php?title=Ccam.cgi so that we can easily make a frame I'll appreciate it too
Andrey Filippov February 28th, 2007, 11:44 AM Cool if you can I'll appreciate it! :-)
Done, enjoy!
Matteo Pozzi March 1st, 2007, 01:50 AM Done, enjoy!
many thanks
I've given only a look and it is amazing I can see a lot of frame and control everything oversea! best reguards
Matteo
Andrey Filippov March 3rd, 2007, 12:58 PM many thanks
I've given only a look and it is amazing I can see a lot of frame and control everything oversea! best reguards
Matteo
You are welcome, Matteo.
You know what to do if you'll get the camera stuck (telnet/reboot). If it would get stuck too hard and not respond to telnet - feel free to email me - I'll be able to reboot it by power-cycling. Later we'll install a switch with output power control so remote power cycling will be possible.
Matteo Pozzi March 4th, 2007, 03:07 PM Andrey, sorry I haven't undertand what you mean with "camera stuck (telnet/reboot)" ...maybe is related with a freeze of the camera!? once it happens (no image when I've changed lot of parameter too fast!) and I've reset the sensor and after reloading all worked fine! for now I've tried to upload files and it is working well and now I'm reading/learning as more as I can about javascript! (according to my real job :-) ) many thanks Matteo
Andrey Filippov March 4th, 2007, 06:15 PM Andrey, sorry I haven't undertand what you mean with "camera stuck (telnet/reboot)"
There could be some cases when the camera will stop responding to telnet at all. Like on the computer when you have to hold the power button for several seconds.
I can not immediately think of any particular ways to do this, but things can go wrong.
|
|