Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - dlrpgmsvc

#151
General Chat / Re: Please help me with English
July 07, 2013, 09:05:26 AM
Yes, even more english-style if you can write "vassily works" or "vassili"s works" ;-)
#152
@rewind: it is useful if the fork you compiled will be fused into unified with on-off menu options: do you know if the author will make a pull request and with the necessary on-off menu functions?
#153
Do the ADTG fps override inserted into the new raw_rec module is working also for 550D or still only for 5Dmk2 ?
#154
General Chat / Re: Please help me with English
July 06, 2013, 11:54:46 AM
Quote from: Novosibirets on July 06, 2013, 11:39:34 AM
Thanks for the answer)

I must have asked the question incorrectly. I want to make sure that both of these phrases are spelled correctly,
and have the correct meaning.

For example can write "The work of Vasiliy Kuleshov", can write "Vasiliy Kuleshov is (Kuleshov's?) work",
can write "A work Vasiliy Kuleshov".

All of these variants are correct, and have a one meaning? Or there are nuances?

First is correct, the Others are completely wrong for the grammar...
#155
Raw Video / Re: HDR from a single RAW VIDEO!
July 05, 2013, 11:10:32 PM
Quote from: bnvm on July 05, 2013, 07:19:10 PM
It is not possible to do RAW and HDR at the same time currently. So there is no process.
On 550D is possible, I just did it!
#156
Quote from: Can on July 05, 2013, 06:29:47 AM
I could have sworn there was mention somewhere here of the theoretical possibility of the camera's USB interface reaching UHS-1 speeds...

Also - "USB 2.0: Released in April 2000. Added higher maximum signaling rate of 480 Mbit/s (effective throughput up to 35 MB/s or 280 Mbit/s)" - too slow? Unless of course the camera's interface is made to be incapable of such speeds.

And maybe, just maybe - http://en.wikipedia.org/wiki/USB_On-The-Go

Even if you will ever manage to hack the on camera usb, you will face another problem:
Usb speeds ratings are considered as 'burst' speeds, not continuous! This is why firewire was developed, assuring continuous high speeds.
#157
Raw Video / Re: HDR from a single RAW VIDEO!
July 04, 2013, 09:29:46 AM
Quote from: 1% on July 04, 2013, 06:37:17 AM
Why not just use HDR video like with H264.
Right, it works perfectly: enable raw video and then enable hdr video. I don't understand why to complicate life like this... ;-)
#158
Quote from: aaphotog on July 04, 2013, 03:47:53 AM
can we see a video in action?
I was thinking of buying a smallhd, but if I see a 200 dollar tablet showing liveview in real time, I wont need to
I can arrange one video but keep in mind your mileage vary with the power of the tablet. My cheap tablet 8" Majestic 208 is doing a decent 15fps preview: for me is more than enough but for others is not. Seeing it written as 15fps everybody thinks it is insufficient, but when you see it in action, someone changes his mind. It is hard to know beforehand which tablet is right for video monitoring without phisycally  testing it. For example a powerful processor may be coupled with a poor video chip or a bad bus speed implementation, and these infos are not written into the public specs.
#159
Reverse Engineering / Re: ADTG and CMOS registers
July 03, 2013, 01:11:06 AM
Quote from: g3gg0 on July 03, 2013, 12:59:09 AM
i just implemented it right before you asked :)

Great ! So no more help needed parsing log files, right ?
So my first question apply again: what I can to do with my camera in order to extract the logs (module compiling? actions to do on camera... etc.), and where I can post them ?  ;)  I can create a folder inside your spreadsheet with the name of my camera and populate it as you have done, right ?  ;)

I can guess: activate your log module - set shutter time, aperture, iso, canon movie resolution and fps - start recording in normal canon movie mode for some seconds - stop recording        (so i should have the log files into the SD card, right ? where ?)
#160
Reverse Engineering / Re: ADTG and CMOS registers
July 02, 2013, 10:34:15 PM
Quote from: g3gg0 on July 02, 2013, 12:11:34 PM
@dlrpgmsvc:
what i have done in this google spreadsheet, is not good as it shows the *first* write only, but we have to mapt he *last* writes.
(reason: registers are first initialized with default values, then the real values=

Do you mean, for example, line 269 of your spreadsheet is the "first" write and line 271 is the "last write" of the same register id and register address, so first value written is 03 and last is 06 ?

Lets for instance take the first log of yours: I see as the first "02 00C7 1032" so i will search for another occurrence of "02 00C7 xxxx" and then again and again and I stop at the last finding, then this is the *last write* you need ? And so on for the Others values ? And if I find only one occurence ? Do I take it into consideration or I have to delete it ? (many thanks for your patience...)
#161
Reverse Engineering / Re: ADTG and CMOS registers
July 02, 2013, 11:09:21 AM
Quote from: g3gg0 on July 02, 2013, 10:08:08 AM
@all:
if you want to help, can you create a map of all registers and their values for every log we have?

Please, I need a "dummy-hints" here.
Obviously I don't need a Step-by-Step guide, but only some sparse hints&tips : What I have to do just to start ? Do I must go to g3gg0 repository, download the ADTG module and makefile, then compile it to my side ?
Also, How it works and what I have to do ? Do I must activate it, and how ? Simply by loading it from modules ml menu ? Do I have to activate also raw video module ? And then, do I must make some actions on my camera in order for the log to record something ? And what actions I must do on my camera ? You are talking about ADTG and CMOS: do they are two different logs ? Or do there is a separate module for CMOS ? And where these logs are saved ? ...

Excuse me for all these questions: I'm a programmer and I work with assembly Language also, and I'm sure when I will manage to be "inside" the workflow, I will be of help. Obviously I will write a "dummy-guide" also for this so Others can help as well !  ;-)
#162
A 70 Euro android tablet, the "DSLR Controller" app, a USB cable, and I solved with very few bucks: near-realtime monitoring & movie save function, with instant replay as you wish ! Don't fuse your head searching for what else exotic solution !  8)

PS: you have also focus peaking and histogram offboard ! Just use "Canon" preview mode in ML and you are done !  ;)
#163
Quote from: Can on June 27, 2013, 08:50:22 PM
Has anyone thought about using the USB port in camera to hook up to an external SSD?

You would certainly need separate power for the drive, and an SSD that would provide sufficient write speed is affordable, but would it be possible to direct the camera to write to the hard drive through the USB interface rather than the SD card?
You cannot use usb because it is too slow
#164
Reverse Engineering / Re: ADTG and CMOS registers
June 28, 2013, 11:38:54 PM
I wish to be of help into porting this to 550D : can someone help me into specify what to do ? Even preliminary tests or logs reports... but please, even if I'm a programmer, I'm quite new to this programming environment, so, something I managed to understand, while other things not: can you be as specific as you can, so I can get the point ? Many thanks in advance !  ;D
#165
I inserted a new point at [18] describing the procedure in order to not face the synch problem between your and official repository !  ;)
#166
Quote from: tactzer0 on June 28, 2013, 05:51:43 PM
With the latest builds I'm getting a decent amount of time at 23.976fps around 720p quality.

1280x536: 10 seconds @ 23.976 fps
1200x502: 17 seconds @ 23.976 fps
1152x482: 36 seconds @ 23.976 fps

So for the standard 2.39:1 ratio, the crop isn't that bad.  I'm sure you can get more time if you use the 2.42:1 or 2.5:1 ratios too.

Try to check the option to tolerate frame skipping, and tell me the results: only one frame lost every 10 or 36 seconds shouldn't be noticeable at all ! Let me know !
#167
Quote from: Audionut on June 28, 2013, 04:56:32 AM
Thanks for the guide dlrpgmsvc.  I haven't read it in it's entirety, but a couple of quick things.

I just close the virtual box session and select, "save machine state".

Also, I believe it's good practice to "make clean" after cloning and pulling.

Good ! I will add these hints, many thanks ! But can you explain what the command "make clean" do in detail, so I can add some explanations in my guide ?

Also, I found that when I work for some days on my modifications, then when it is time to make a pull request, the request is refused automatically because the sources in my fork repository are not updated with the official ml repository ones (or at least I think this is the reason...), so what can I do ? I surely cannot clone again and then redo all my modifications ! Do you know there is a method, so I can add it to my guide ? Many thanks !

Many thanks for all of your help !
#168
Quote from: Pelican on June 28, 2013, 08:47:37 AM
Thank you for the detailed step-by-step guide.

One question: with this method could you directly copy the compiled autoexec.bin to the card inside the camera?
With cygwin I couldn't compile the necessary ptp stuff.

I have not tried cygwin because is a conplete mess.
Based on my experience, and like I wrote on this guide, I don't advice you to copy the .bin file directly to the camra card by any mean (direct usb camera tethering or card reader), because, altough you surely can do this, linux messes up the file system and also generates hidden files and directories that sometimes makes the card unusable: i was forced to low level format it on camera because even windows was unable to even see it! this is however my experience
#169
Quote from: sletts02 on June 28, 2013, 03:06:22 AM
Hi all,

I am relatively new to ML and would love to have RAW video on my 550D! Do we have a tutorial on how to install it, or is it the same process as the regular ML that I have?

Is ML RAW video on the 550D stable enough for continous recording (3-5mins)?

follow the instructions on how to install magic lantern and install the 2.3 stable release. then come here and download the latest build from the first post of this thread, decompact it and replace the the files and folders on your camera memory card with the ones you have just decompacted. that is.    yes, it is stable but you have to choose a recording resolution and speed in fps that shows you a green color comment on the camera display bottom line. have fun!
#170
Quote from: screamer on June 26, 2013, 09:55:31 PM
Guida molto utile, e veramente ben fatta, complimenti ;)

Grazie mille ! Sono contento che sia utile ed apprezzata !  ;)
#171
Quote from: benx on June 19, 2013, 08:24:50 AM
Thank u for your hard work,but people in china can't watch anything in youtube.it's banned by isp.
would you please share the video also in an another way.

Try my Step-by-Step guide in written format and let me know if you find it useful ! --> http://www.magiclantern.fm/forum/index.php?topic=6783.0
#172
[1] Create a BitBucket account (go to "https://bitbucket.org/hudson/magic-lantern" and select the "sign up" option.
    At the end, bookmark your bitbucket page and write down his web address (url). If, for example, we have chosen
    "dlrpgmsvc" as our username, we will end up with our bitbucket address as follow : "https://bitbucket.org/dlrpgmsvc")

[2] Once inside our bitbucket account, we need to "fork" the magic-lantern project. In order to do that, we must go
    again to "https://bitbucket.org/hudson/magic-lantern" (you will see that now we are logged in in bitbucket because
    in the upper right corner you will see a man-symbol, that represent you) and then push the upper right button named
    "fork". In this way, all the current and up-todate magic lantern sources are copied inside our bitbucket account: wait
    for the finish of the copy process, and at the end, if you return to your account page ("https://bitbucket.org/dlrpgmsvc"
    in our example) you will find "Magic Lantern" listed as a fork: now click on the name "Magic Lantern" and you will enter
    inside your fork (parallel derivative project), inside which you can work as you desire. But for this moment leave all
    as-is. Write down our complete fork address, that is, in our example : "https://bitbucket.org/dlrpgmsvc/magic-lantern"

[3] Download and install "Virtual Box" (go to "https://www.virtualbox.org/" and select "downloads" to the left, then select
    the version suitable for your operative system ("windows", in this case)
   
[4] Download the virtual machine of the developing environment (ubuntu) from here :
    http://nanomad.magiclantern.fm/Development%20Box/
    (go inside the VirtualBox folder and download the file : "MagicLantern.ZIP" clicking on it with the left mouse button.
    The Windows system will start to download the file.
    After the download is done, decompact it somewhere on your pc, but remember where, because we will need it in the next steps.
    The User/Root password of the ubuntu system is "123456" (without quotation marks). It will be useful in the future if the
    system will ask you for it.

[5] Launch "Virtual Box" that we previously downloaded (if warning windows will appear, push OK or IGNORE on all of them, don't
    worry about them) and then load inside Virtual Box the ubuntu developing environment that we already downloaded
    (menu "machine" then "add" and select the file "MagicLantern.vbox" that is located where you decompacted the virtual machine),
    then start this virtual machine (select it from the left column with a sigle left button mouse click, so it become with the
    blue background, and then you push the big green arrow on the upper part that point toward right named "start"). Then wait
    patiently the start of the ubuntu environment. During the loading, some windows will appear: answer OK or IGNORE to all.
    At the end of the loading process, DO NOT CLICK INSIDE the window but instead click on the upper menu bar like described
    in the next step.

[6] Activate the wired netword from the upper menu of Virtual Box (if the windows pc is connected by wire to the network)
    with this procedure:

   [ A ] Select from the Virtual Box upper menu bar of the ubuntu window the "Devices" item and then "Network cards...".
              be sure that the option "Enable network card" is checked, and inside the option "Connected to:" select
              "Card with Bridge". Under the option "Name:" will appear the name of your netword card installed on your pc.
              Under "Promiscuous mode:" select "permit all".
        [ B ] Press "OK" on the lower part and the configuration is done, and it will be retained also for the next future
              sessions.

[7] Now click inside the ubuntu window: the system will ask if you want to capture the mouse: answer affirmatively (press the
    "capture" button. Once inside the environment, enter into the folder named "magic-lantern" from the icon "Home" that is
    located in the upper left corner (double click with the left mouse button over it). In order to exit with the mouse from
    the environment, you must press the rightmost keyboard key CONTROL (CTRL), once. To return inside the environment, click
    with the left mouse button once, inside the the ubuntu window.

[8] Erase all the content of the folder where you are into (magic-lantern), all but the file "makefile.user" that is optimized
    for the ubuntu environment and must be left alone and not deleted

[9] Download inside this folder the new up-to-date sources, following this procedure :

   [ A ] Push the right mouse button inside an empty space inside the folder and select the command prompt from the
              manu that pops up

   [ B ] Issue this command: "hg clone -r unified https://bitbucket.org/hudson/magic-lantern".
              This command connects to the internet and downloads the latest Magic Lantern sources, and it generates,
              starting from the folder where you are into (magic-lantern) a new folder (magic-lantern) and it puts
              inside this new generated folder all the up-to-date sources.

        BEWARE : If the sub-folder named "magic-lantern" is yet present and it is full of the old sources and you want to
                 update them, FIRST YOU MUST DELETE this sub-folder along with all its content. Otherwise, the "clone"
                 command will give you an error. After deleting and then cloning, remember to copy inside the new created
                 sub-folder the file "makefile.user" that we saved from the deleting at previous point [8].

[10] Duplicate this new sub-folder with the up-to-date sources and name it "magic-lantern-mymodifications" (or whatever you want)
     with copy-paste. In this way, startig from the root, we have "magic-lantern" inside which we have the file "makefile.user"
     and two folders: "magic-lantern" and "magic-lanter-mymodifications"

[11] Copy the file "makefile.user" inside sub-folder "magic-lantern" and also inside sub-folder "magic-lantern-mymodifications".
     Now you will work inside the folder "magic-lantern-mymodifications" and we will leave alone "magic-lantern" subfolder as
     a reference from which to start for other modifications, generating everytime a new copy of this sub-folder for every
     modifications we would want to do.

[12] Go to the root folder "/home/magiclantern/magic-lantern",press the right mouse button inside an empty space and launch the
     command prompt. At this point, write the command "hgtk" or "thg" followed by ENTER key. A new window will open then.
     On the left column all the repositories will be listed that are inside your local environment (they are the folders that
     contain your sources). It will be listed "magic-lantern" and no more. In order to make listed also our new
     "magic-lantern-mymodifications" folder we created, you must evidence in blue (by clicking once with the left mouse button
     over it) the word "default" that is over the word "magic-lantern", that is the root, then right mouse button in an empty
     space in the left column under the word "magic-lantern": in the appearing menu select "Add repository" and then select
     "magic-lantern-mymodifications". Now your new repository is listed in the left column as well.
     Now right mouse button over "magic-lantern-mymodifications" and select "settings". In the new windows that appears, on the
     left select "commit" and on the right, at the "Username" parameter put your bitbucket username you selected (for example,
     in our case, "dlrpgmsvc" without quotation marks). then push OK in the lower right side. Now close the "Tortoise Hg"
     window (push the X in the upper right corner, like in Windows style). The username will be remembered by the system
     as long as the folder "magic-lantern-mymodifications" will not be deleted. So, this operation has to be executed only once
     at the beginning and then no more. If you do not set the "username", the "commit" operations will give you an error and
     will be aborted, so it's important not to jump this step. What is "commit" operation will be discussed later.

[13] Now we can enter into the "magic-lantern-mymodifications" sub-folder and we can start to study and modify the sources files
     that we want. Once your modifications are terminated, go to the root of the folder "magic-lantern-mymodifications", right
     mouse click inside an empty space and in the resulting menu select the command prompt and type the following command:
     "make clean" (without quotation marks) and push ENTER key on the keyboard. This clears out all previous temporary files.
     Then type "make" (alone, this time) and push ENTER. This command will compile and generate all the .BIN
     files of all the cameras models, and also it generate the unified .BIN (the one that is good for all the camera models
     but that is bigger in size). if you want to save compilation time, type "make <camera model>", for example "make 550d.109":
     in this way you will compile only the .BIN that is relative to your camera, so compiling time is shorter and the resulting
     .BIN file is smaller altogether. The .BIN files are the ones that are to be copied inside your camera, and they are the
     result of the compiling phase. They are located :
     - Into the folder "/platform/all" for the unified .BIN (the one that is valid for all camera models)
     - Into the folder "/platform/<camera model>" for the camera model-specific .BIN. For example, for the Canon 550D, the
       corresponding .BIN file is located into the folder "/platform/550d.109" or 550d.xxx where "xxx" is another number and
       correspond to the Canon firmware version of that camera model.

[14] Now we must "take out" the .BIN from our developing environment. We will use an USB memory stick. Insert it inside a free
     USB port of your computer. Windows will immediately recognize it. Now we must go to the Virtual Box upper horizontal menu
     bar of the ubuntu window and select "Devices" and then "USB Devices" : it will appear a list where, on the bottom, there is
     the name of your memory stick you have inserted some moments ago. If there isn't, go to "Machine" then "Settings" then "USB"
     and then click with the left mouse button to check the option "Enable USB controller" and then "OK" in the lower part.
     Return to "Devices" -> "USB Devices", then click once with left mouse button over the usb key name. It will disappear from
     Windows but then ubuntu will see it. Now we can copy onto this usb memory key our .BIN file we just created.
     Then detach phisically the usb key from the port, then re-insert it so Windows can see it again.
     Now access the key from Windows, and copy the .BIN file to the Hard Disk and then on the camera memory card, or directly
     on the camera memory card (connected to our computer by a card reader or by the camera and usb cable).
     I don't advise to copy directly the .BIN file from the ubuntu environment to the camera card, or in the opposite way
     (from camera to ubuntu), because linux environment makes many hidden files and folders, which interfere with Windows
     filesystem and camera filesystem. If you use a usb memory key as intermediate, you will not face any problem.

[15] When the on-camera testing of your modifications are completed succesfully, you can proceed to share your modifications
     with all the Magic Lantern community. The process consists into submitting your modifications to the Magic Lantern
     developer board. If they will agree, they will fuse your modifications inside the official Magic Lantern last "nightly build".
     After some stress-testing time, the last nightly build will become the official stable release. But this usually require
     many months or years.
     All this translates in the following operations :
     - do a "commit" in local, that will produce a listing of all the source files modified
     - do a "push" from local to our online magic-lantern fork (inside our bitbucket account) of all the source files modified
     - do a "pull request" from our online magic-lantern fork to the official online Magic Lantern repository

[16] Go to the root folder of "magic-lantern-mymodifications", right click on an empty space and fire up the command prompt.
     Then type "hg commit". A new windows will open. it's a simple editor. It asks for a single line of text describing your
     modifications. The cursor is at his correct location: you have only to write a short description about your modifications,
     for example: "third menu item modified", and then push CONTROL+X on your keyboard. it will ask if you want to save the
     file that contains the sum of all your modifications to the source files: press Y on the keyboard. Now it asks to you where
     to save and the filename: leave the default ones and press ENTER on the keyboard. You will then be returned to the command
     prompt. Done.

[17] Staying on the root of the folder "magic-lantern-mymodifications", issue the command on command prompt:
     "hg push https://bitbucket.org/dlrpgmsvc/magic-lantern" and press ENTER. Obviously, "dlrpgmsvc" must me swapped with your
     bitbucket account username. This command will update your bitbucket magic lantern fork repository.
     It will ask to you your bitbucket username and password: issue them. While you will insert username and password, not even
     asterisk will appear: nothing is echoed to the screen. This is normal. Don't worry and keep typing. Beware upcase and
     lowercase: respect them always. Then press ENTER at the end of field inputting.
     The operations done will be displayed and the number of changesets (one, that is the one generated with the "commit"
     command issued on the previous point and that contains all the modifications you have done), the number of changes you have
     done, and the number of source files you have modified. At the end you will return to the command prompt.
     Now your online repository is up-to-date with your local modifications. Close the command prompt windows with the big X
     located in the upper right corner of the command prompt window itself.

[18] Before launching a pull request, we must be aware that meanwhile we was busy to do our modifications, the official magic
     lantern repository was active and modifying itself thanks to other developers like you that sent their request and some of
     them was also yet fused inside the official repository. So, if at the time of your pull request, your local fork repository
     is not up-to-date with the official one, your pull request will not be accepted and an error will be generated !
     So, to avoid this, proceed as follow: Go to internet by using Windows, and enter your bitbucket account. In our example:
     "https://bitbucket.org/dlrpgmsvc/magic-lantern". Push now the upper button "Compare". On the left make sure you have
     your repository ("dlrpgmsvc/magic-lantern" in our example) and just below this line make sure to select "unified". On the
     right make sure you have "hudson/magic-lantern" and just below this line "unified". Just below you will see the modifications
     YOU have done compared to the official repository. If no modifications were detected, it will say "There are no changes".
     If this happens, and you have done modifications, make sure you have issued the "push" command at point [17], and you have
     done "commit" at the point [16]. After you checked your modification, now you must see how the offical repository changed
     during your modifications time. You can do that by selecting "Swap source and destination" just under the "Hudson" right
     block. Wait a while and you will see all the modifications that was done while you was busy by programming your magic
     lantern modifications. Now you HAVE to update your local repository with these modifications, otherwise you pull request
     will be refused automatically by the BitBucket system. To do so, push the "Merge" button on top of your repository right
     block. A window will appear: you can press "Merge" at bottom. Wait and you will then see "There are no changes". Ok !
     Now you can proceed with your pull request at the next point [19]: do it without waiting, or other modifications could
     appear to the official repository and so invalidating your pull request.

[19] Now, the last step: submitting our modifications to the Magic Lantern community for review and, eventually, acceptance and
     fusing. Go to internet by using Windows, and enter your bitbucket account. In our example:
     "https://bitbucket.org/dlrpgmsvc/magic-lantern". Push now the upper button "Pull Request" (the button, NOT the menu item
     in the lower part that says "Pull requests"). Verify that the source (the left part) is "dlrgmsvc / Magic Lantern" and
     "unified" and that the destination (the right part) is "hudson/magic-lantern" and "unified".
     In the lower part, put a description title about your modifications inside "Title" and a more long and extended description
     into "Description". Then push the blue button in the lower part "Create pull request". Now our request is sent.
     They will analyze your modifications, and they may ask to you some questions about: you must answer to them and follow
     your modifications discussions until they are accepted or refused.

[20] In order to follow your modifications destiny, go to "https://bitbucket.org/hudson/magic-lantern" and push the blue button
     "Pull requests (n)" where (n) is a number that represents the number of pull requests that are in this moment under
     scrutiny. Verify that, among them, there is also your modification request. At the right of each request there is a
     baloon with a number: this is the number of comments received, and a circle with a checkmark: if present, the modifications
     was accepted. It is important to follow your modifications destiny to the end, otherwise, even if ok, they could be
     refused simply because you didn't answered to a question. Once accepted, your modifications will be included in the next
     automatic nightly build. The latest nightly build can be downloaded from here : "http://nanomad.magiclantern.fm/nightly/"
     by clicking on the last file on the bottom with .ZIP extension.





[NOTE 1] From time to time, a little explosion symbol may appear on the ubuntu machine: they are updates to the operative system.
         You can do them but they are very long to install and download and... no more magic lantern compatibility is assured...
         proceed at your full risk...

[NOTE 2] In order to shut down the virtual machine retaining all the modifications to the files you have done, press on the
         blue circle in the upper part where is a little white mouse drawing, and from the resulting menu select "LOG OUT"
         and then select "SHUT DOWN". Then wait until all is closed correctly.

[NOTE 3] To open "terminal" or the "command prompt", select the menu option "Open terminal here"

[NOTE 4] To modify a source file, right click it and select "Open with Leafpad"

[NOTE 5] The source files are inside the folder named "SRC"

[NOTE 7] After finishing a set of modifications and after the modification is merged (or refused) to the main ml repository,
         and verytime you start a new modifications set, you MUST delete and recreate che subfolder "magic-lantern" by starting
         at point [8] and subsequent points. This way you will work always on the most up-to-date source files.
#173
[1] Crearsi un account su BitBucket (andare su "https://bitbucket.org/hudson/magic-lantern" e selezionare l'opzione "sign up". Al termine bookmarkare la propria pagina e segnarsene l'indirizzo. Se ad esempio abbiamo scelto lo username "dlrpgmsvc", avremo il nostro indirizzo bitbucket come segue: "https://bitbucket.org/dlrpgmsvc")

[2] Una volta dentro al nostro account bitbucket, occorre "forkare" il progetto magic-lantern. Per fare questo basta andare nuovamente all'indirizzo "https://bitbucket.org/hudson/magic-lantern" (vedremo che ora siamo loggati in bitbucket in quanto in alto a destra troveremo il simbolo di un omino, che siamo noi) e poi premere il tasto in alto a destra "Fork". In questo modo ci verranno copiati tutti i sorgenti attuali di magic-lantern dentro al nostro account bitbucket: attendiamo la copia, ed al termine se torniamo al nostro account "https://bitbucket.org/dlrpgmsvc" troveremo listato il fork "Magic Lantern": cliccando sul nome entreremo nel nostro fork (derivazione parallela) che potremo lavorarci come desideriamo. Ma per ora lasciamo tutto stare così com'è. Segnamoci che l'indirizzo completo del nostro fork è : "https://bitbucket.org/dlrpgmsvc/magic-lantern"

[3] Scaricare ed installare Virtual Box (andare su "https://www.virtualbox.org/" e selezionare "downloads" a sinistra) selezionando la versione adatta al nostro sistema operativo (in questo caso "windows")

[4] Scaricare la virtual machine dell'ambiente di sviluppo (ubuntu) da qui : http://nanomad.magiclantern.fm/Development%20Box/ (andare dentro alla cartella VirtualBox e scaricare il file : "MagicLantern.ZIP" cliccandoci sopra col tasto sinistro del mouse. Il sistema Windows attiverà lo scaricamento. Dopo averlo scaricato, scompattarlo da qualche parte e ricordarsi dove lo si è messo, in quanto ci servirà dopo. Tenere presente che la User/Root password del sistema è "123456" (senza virgolette). Ci potrà servire in futuro.

[5] Lanciare Virtual Box (se appaioni finestre di avvertimento, premere OK o IGNORA su tutte) e caricarci dentro l'ambiente virtuale Ubuntu di sviluppo (menu "macchina" e poi "aggiungi" e selezionare il file "MagicLantern.vbox" che si trova dove abbiamo scompattato la macchina virtuale), poi farlo partire (lo si seleziona dalla colonna di sinistra con un solo clic del pulsante sinistro così diventa a fondo blu, e poi si preme in alto la frecciona verde che punta verso destra che si chiama "Avvia") E si attende pazientemente che parta l'ambiente. Durante il caricamento appariranno delle finestre: dare OK o IGNORA su tutte. Al termine del caricamento NON cliccare all'interno della finestra ma sul suo menu superiore come descritto nel punto successivo a questo

[6] Attivare la rete via cavo dal menu superiore di Virtual Box (se il pc windows è collegato ad internet via cavo) con questa procedura:

   [ A ] Selezionare dal menu della finestra dell'ambiente virtuale Virtual Box "Dispositivi"  poi
            "Schede di rete...". Assicurarsi che l'opzione "Abilita scheda di rete" sia spuntata, e sull'opzione
            "Connessa a:" selezionare "Scheda con bridge". Sotto l'opzione "Nome:" apparirà il nome della vostra
            scheda di rete installata nel vostro computer. Sotto "Modalità promiscua:" selezionare "permetti tutto"

   [ B ] Premere "OK" in basso e la configurazione è stata completata, e sarà memorizzata anche per le successive
            sessioni a venire

[7] Ora cliccare dentro alla finestra dell'ambiente virtuale: il sistema chiederà se si vuole catturare il mouse: si risponderà affermativamente (premere il pulsante CATTURA). Una volta dentro l'ambiente, entrare nella cartella "magic-lantern" dalla icona "Home" in alto a sinistra (doppio clic col tasto di sinistra sopra di essa). Si ricorda che per uscire col mouse dall'ambiente basta premere il tasto CONTROL (CTRL) di destra, una volta. Per rientrarci, basta cliccare col tasto sinistro del mouse una volta dentro alla finestra dell'ambiente

[8] Cancellare tutto il contenuto della cartella dove ci si trova (magic-lantern), tranne il file "makefile.user" che è ottimizzato per l'ambiente e va lasciato

[9] Scaricare partendo da quella cartella i sorgenti nuovi ed aggiornati al momento, seguendo questa procedura:

   [ A ] premere col tasto di destra in uno spazio vuoto dentro alla cartella stessa e scegliere
       il prompt dei comandi dal menu che ne appare

   [ B ] digitare questo comando : "hg clone -r unified https://bitbucket.org/hudson/magic-lantern"
            Il comando si collega ad internet e scarica gli ultimi sorgenti, generando a partire dalla cartella
            in cui ci si trova (magic-lantern) una nuova cartella (magic-lantern) e scaricandoceli tutti dentro

   ATTENZIONE : Se esiste già la sottocartella "magic-lantern" con dentro i sorgenti, e si desidera ri-scaricarla
                     per aggiornarli, PRIMA VA CANCELLATA (contenuto e cartella compresa). Altrimenti il comando
                     "clone" darà inevitabilmente errore. Dopo aver cancellato e clonato, ricordarsi di ri-copiare
                     nella cartella appena creata e scaricata, il file MAKEFILE.USER che ci siamo salvati !

[10] Duplicare la nuova cartella con dentro i sorgenti e chiamarla "magic-lantern-miamodifica" con copia-incolla
    In questo modo, partendo dalla radice, abbiamo la cartella "magic-lantern" dentro la quale avremo il file
    "makefile.user" e due cartelle: "magic-lantern" e "magic-lantern-miamodifica"

[11] Copiare il file "makefile.user" sia dentro a "magic-lantern" che dentro a "magic-lantern-miamodifica"
     Ora lavoreremo sul repository "magic-lantern-miamodifica" e lasceremo "magic-lantern" come riferimento dal
     quale poi partire per altre modifiche, generando ogni volta una copia di questo repository

[12] Andare nella radice della cartella "/home/magiclantern/magic-lantern", premere il tasto destro in uno spazio libero e lanciare

il prompt dei comandi. A quel punto, digitare al prompt "hgtk" oppure "thg" seguito da invio. Si aprirà una finestra.
Nella colonna di sinistra vengono elencati i repositories (cartelle contenenti i sorgenti), nella fattispecie "magic-lantern" e

basta. Per far apparire "magic-lantern-miamodifica" prima evidenziare in blu, cliccando una volta col tasto sinistro del mouse, la

voce "default" che è sopra alla voce repository "magic-lantern", che è la radice, poi premere con il tasto mouse di destra nella

colonna di sinistra sotto al repository "magic-lantern" in uno spazio vuoto e dal menu che ne appare selezionare "Add repository" e

scegliere quindi "magic-lantern-mia-modifica" Ora apparirà anche il nostro repository nell'elenco nella colonna di sinistra.
Ora tasto destro su "magic-lantern-mamodifica" e selezionare "settings". Nella nuova finestra che appare, a sinistra selezionare

"commit" e sulla destra, alla voce "Username" metterci il vostro nome utente, ad esempio, in questo caso, "dlrpgmsvc" (senza

virgolette). Poi OK in basso a destra. Poi chiudere la finestra di "Tortoise Hg" (X in alto a destra, come in Windows). Lo username

verrà ricordato fintantochè la cartella non verrà cancellata, quindi questa operazione va fatta solo una volta all'inizio e poi

basta. Se non si setta lo username, l'operazione di "commit" darà errore e verrà abortita, quindi è importante non saltare questo

passaggio.

[13] Ora possiamo entrare nella cartella "magic-lantern-miamodifica" ed iniziare a modificare i sorgenti che ci
     interessano. Una volta terminate le modifiche, andare alla radice "magic-lantern-miamodifica", premere col
     tasto destro in uno spazio vuoto e dal menu che ne appare selezionare il prompt dei comandi e lì dentro
     digitare il comando "make clean" e dare invio. Questo comando pulisce eventuali files temporanei di compilazione precedenti.
     Poi digitare solo "make" e dare invio. Questo compila tutti i files .BIN di tutte le versioni di fotocamera
     compreso il .BIN generale (unified, unificato) che può essere copiato in qualsiasi fotocamera.
     Se si vuole risparmiare tempo, digitare "make <nomefotocamera>", ad esempio "make 550d.109" : in questo modo si
     compila solo il .BIN per la propria fotocamera, e si risparmia un sacco di tempo.
     I files .BIN sono quelli da copiare nella fotocamera, sono il risultato della compilazione, e si trovano:
     - Nella cartella "/platform/all" per il .BIN unified
     - Nella cartella "/platform/<nome camera>" per il .BIN specifico di ogni fotocamera, ad esempio, per la
       Canon 550D, si troverà nella cartella "/platform/550d.109" oppure 550d.xxx dove "xxx" è un'altro numero

[14] Ora dobbiamo "tirar fuori" il .BIN. Per farlo ci serviremo di una chiavetta di memoria USB. Inseriamola.
     Windows la vedrà subito. Ora andiamo nel menu in alto della finestra Virtual Box dell'ambiente di sviluppo
     e selezioniamo "Dispositivi" e poi "Dispositivi USB" : apparirà un elenco in cui, in fondo, c'è il nome della
     chiavetta appena inserita. Se non c'è, andare in "Macchina" poi "Impostazioni" poi "USB" e spuntare
     "Abilita controller USB" e poi OK in basso. Tornando a "Dispositivi" -> "Dispositivi USB", cliccare una volta
     col tasto sinistro sopra al nome della chiavetta. Essa sparirà da Windows, che non la vedrà più, ma inizierà
     a vederla il nostro ambiente di sviluppo. A questo punto possiamo copiare su di essa il .BIN da noi creato.
     Fatto questo, stacchiamo la chiavetta fisicamente. Poi reinseriamola, affinchè Windows possa vederla nuovamente.
     A questo punto entriamoci dentro da Windows, e copiamo il .BIN su hard disk o direttamente sulla scheda di
     memoria della fotocamera collegata al nostro computer. Si sconsiglia vivamente di copiare direttamente dall'ambiente
     Linux alla scheda di memoria che poi inseriremo nella fotocamera, o viceversa di copiare da scheda di memoria
     all'ambiente Linux, in quanto Linux genera diverse cartelle e files nascosti che poi vanno ad interferire con il
     filesystem della fotocamera. Stesso discorso vale per copie fra Linux e Windows (da hard disk a hard disk) e viceversa,
     per lo stesso motivo di interferenze fra filesystems. Passando da chiavetta, invece, i files nascosti e di sistema
     Linux si creano ma non danno problemi di interferenza.

[15] Quando i tests sulla fotocamera hanno dato esito positivo, possiamo procedere alla condivisione delle nostre
     modifiche. Essa consiste nel proporre le nosre modifiche ai gestori del progetto Magic Lantern. Se essi le
     riterranno valide, le fonderanno nel progetto. Tutto questo si traduce nell'eseguire le seguenti operazioni:
     - Eseguire un "commit" in locale, il quale farà una lista di tutti i files modificati
     - Eseguire un "push" da locale al nostro fork magic-lantern del nostro account bitbucket dei files modificati,
       vale a dire la copia dei files sorgenti da noi modificati dal nostro computer (ambiente di sviluppo virtuale)
       alla fork magic-lantern (insieme di files sorgente) dentro al nostro account bitbucket online, su internet

[16] Andare nella radice della cartella "magic-lantern-miamodifica", premere il tasto destro in uno spazio libero e lanciare il

prompt dei comandi. A quel punto, digitare al prompt "hg commit". Si aprirà una finestra di editor molto semplice. Ciò che chiede

ora è solo di dare una riga descrittiva delle modifiche fatte. Il cursore è già al posto giusto, quindi basta scrivere ad esempio

"Modificata la terza voce di menu", ed al termine premere su tastiera CONTROL+X : verrà chiesto se salvare il file del riassunto

delle modifiche: premere il tasto da tastiera Y. Ora chiede la posizione dove salvare ed il nome del file: lasciare quello che

propone premendo INVIO sulla tastiera. Fatto questo si torna automaticamente al prompt dei comandi. Fatto.

[17] Restando sempre nella radice della cartella "magic-lantern-miamodifica", digitare al prompt il comando "hg push

https://bitbucket.org/dlrpgmsvc/magic-lantern" a premere INVIO sulla tastiera. Ovviamente "dlrpgmsvc" andrà sostituito con il nome

con cui avrete creato il VOSTRO repository su BitBucket. Con questo comando andiamo a caricare le nostre modifiche dal nostro pc in

locale al repository online su BitBucket. Ovviamente ci verrà richiesto lo username e la password che avremo scelto al momento della

registrazione su BitBucket, altrimenti chiunque potrebbe caricare files nel nostro spazio e sporcarcelo, così, a piacimento. Alla

domanda "user: " digitare il vostro username, ed alla domanda "password: " digitare la vostra password. Notare che mentre digitate

la password non viene scritto nulla sul video, nemmeno pallini o asterischi: ciò è normale. Premete INVIO alla fine. verranno

scritte le operazioni eseguite. Al termine si torna automaticamente al prompt dei comandi. Abbiamo finito con l'aggiornamento dei

files nel nostro repository online. Ora i files nel nostro repository online sono "allineati" o "in sync" o "sincronizzati" (vale a

dire UGUALI) con quelli che abbiamo in locale sul nostro computer. Possiamo chiudere ora con la X in alto a destra la finestra di

terminale.

[18] Prima di lanciare una pull request, dobbiamo essere coscienti che nel frattempo che noi stavamo facendo le nostre modifiche
     al codice di magic lantern, anche altri ne hanno fatte ed hanno aggiornato il repository principale.
     Questo è importante, in quanto, se al momento della nostra pull request il nostro repository forkato non è aggiornato con
     quello principale, il sistema bitbucket darà errore e la nostra pull request non sarà accettata in modo del tutto automatico.
     Per evitare questo, procediamo come segue: andiamo in internet tramite Windows, ed entramio nel nostro account bitbucket.
     Nel caso del nostro esempio, andiamo in "https://bitbucket.org/dlrpgmsvc/magic-lantern". Poi premiamo il pulsante in alto
     "Compare". Poi alla sinistra assicuriamoci di avere il nostro repository ("dlrpgmsvc/magic-lantern" nel nostro esempio) e
     subito sotto assicuratevi di selezionare (se non lo è già) "unified". Alla destra assicuratevi di avere "hudson/magic-lantern"
     e subito sotto "unified". Subito sotto vedrete le modifiche che VOI avete fatto, rispetto al repository originale. Se non
     avete fatto modifiche, ci sarà scritto "There are no changes".
     Dopo che avrete verificato che le vostre modifiche ci siano, dovrete verificare anche le modifiche che il repository ufficiale
     ha nel frattempo fatto rispetto al vostro fork online. Per fare questo, selezionate "Swap source and destination" appena
     sotto il blocco "Hudson" alla destra della pagina web. Attendete un poco e vedrete tutte le modifiche che sono state fatte al
     repository principale mentre voi stavate lavorando alle vostre modifiche. Ora voi DOVETE aggiornare il vostro repository
     alle ultime modifiche che gli altri hanno fatto, altrimenti la vostra richiesta di pull request sarà rifiutata. Per fare
     questo, semplicemente premete il pulsante "Merge" sopra al blocco di destra rappresentante il vostro repository. Apparirà una
     finestra: premete "Merge" in basso. Attendete e poi vedrete che la finestra sparirà e sotto ci sarà scritto "There are no
     changes". Ottimo ! Adesso potete procedere alla pull request al prossimo punto [19]: vi consiglio di farlo al più presto
     senza aspettare oltre, altrimenti se nel frattempo dovessero essere inglobate altre modifiche al repository principale, la
     richiesta di pull non adrebbe a buon fine.

[19] Ora abbiamo il nostro "fork" o "derivazione" di magic lantern aggiornata online, ma è sempre una "nostra" modifica.
Se vogliamo fare in modo che tutti possano beneficiare dei cambiamenti che abbiamo apportato, occorre generare una cosiddetta

"pull-request" o "richiesta di tirar dentro".
Cioè chiediamo ai gestori del progetto magic lantern di voler tirar dentro ai loro sorgenti le modifiche che noi abbiamo fatto.
In questo modo, se loro accetteranno, la prossima compilazione automatica notturna (nightly build) produrrà un file AUTOEXEC.BIN

generale (unified, vale a dire valido per tutti i modelli di macchina fotografica) che comprenderà anche le nostre modifiche, siano

esse generali (valide per tutti i modelli di macchina fotografica) che particolari (valide solo per il modello per le quali sono

state fatte, ad esempio solo per la canon 550D).
Andiamo su internet ed entriamo nel nostro repository BitBucket relativo a magic lantern (nel nostro esempio andremo all'indirizzo

"https://bitbucket.org/dlrpgmsvc/magic-lantern") ed una volta acceduto lì dentro premeremo il pulsante in alto "Pull Request" (il

pulsante, non la voce di menu in basso "Pull requests". Verifichiamo che la sorgente (la parte a sinistra) sia "dlrgmsvc / Magic

Lantern" e "unified" e che la destinazione (la parte a destra) sia "hudson/magic-lantern" e "unified". Sotto, mettere un titolo

descrittivo breve delle nostre modifiche in "Title" ed una descrizione più estesa ed esauriente in "Description". Premere poi il

pulsante BLU in basso "Create pull request".

[20] Ora dobbiamo seguire l'iter della nostra richiesta di pull fino alla sua accettazione o rifiuto: accediamo al repository

originale di magic lantern: "https://bitbucket.org/hudson/magic-lantern" e poi premere sulla scritta BLU (NON il pulsante in alto

"Pull Request") che recita "Pull requests (n)" dove (n) è un numero che indica le richieste di pull attualmente in fase di

valutazione. Verificheremo che ci sia anche la nostra. A destra di ogni richeista di pull vedremo un fumetto con un numero accanto,

il quale indica quali commenti sono stati ricevuti (richieste di delucidazione, opinioni ed altro), e un tondino con una spunta, che

se presente indica l'accettazione della richiesta. E' importante seguire la propria richiesta di pull sino alla sua accettazione o

rifiuto, altrimenti potrebbe restare lettera morta se non rispondiamo ad eventuali richieste di delucidazioni in merito. Una volta

accettata la nostra richiesta di pull, ritroveremo le nostre modifiche nella successiva compilazione automatica notturna, che

potremo (noi e tutti gli altri) scaricare da questo indirizzo: "http://nanomad.magiclantern.fm/nightly/" cliccando sull'ultimo file

in fondo, con estensione .ZIP.




[NOTA 1] Per chiudere la macchina virtuale salvando tutte le modifiche fatte fino a quel momento, premere sul cerchietto in alto a

sinistra blu con disegnato un topolino bianco e dal menu che ne esce selezionare la voce "LOG OUT" e dalla finestra che ne appare

selezionare il tastone "SHUT DOWN". Attendere che si chiuda tutto.

[NOTA 2] Per aprire il "terminale" o "prompt dei comandi", selezionare l'opzione di menu "Open terminal here"

[NOTA 3] Per modificare un file, cliccarci sopra col tasto destro del mouse e selezionare da menu "Open with Leafpad"

[NOTA 4] I sorgenti si trovano nella cartella "SRC"

[NOTA 5] Dopo aver portato a termine una modifica e dopo che è stata inglobata (o rifiutata) nel repository principale, e
         appena prima di iniziare una nuova tranche di modifiche, ricordatevi SEMPRE di cancellare la sotto-cartella "magic-lantern"
         e di ricrearla da zero, ripartendo dal punto [8] e proseguendo ai successivi. In tal modo lavorerete sempre sui sorgenti
         aggiornati
#174
Quote from: ph2007 on June 25, 2013, 07:45:04 PM
been playing with raw for weeks,
i got some black frame sometimes. (not sure when it will occurs)

all frames on that raw after converted to dng is all black, in camera preview is black too.
im sure the i have LV showing when i do the recording.

this is a known issues?
(ive read ppl getting some bad frames, but not whole clip is black)

You can write down as much details as possible (Canon mode, ML mode, fps override, resolution, at what frame numbers appears the black frame... and so on), so we can build a case-history to track down the problems about bad-pink-black-screwed-up frames that appears from time to time, many thanks !
#175
Reverse Engineering / Re: ADTG and CMOS registers
June 25, 2013, 05:29:06 PM
Quote from: g3gg0 on June 25, 2013, 03:45:23 PM
my theory about:
8060 - shutter blanking without zoom

i think it specifies the time to wait until sensels are powered.
when they are powered, all incoming light causes the charge to increase.
as soon the video timer has expired, the ADTG will read out the sensels.

why this way and not power the sensels immediately and read out after the specified time ticks?
this way the sensels are not floating/unpowered and thus dont lose any charge before they get read out.

Because they must start collecting photons and then read in a precise time slot. If you power up all the rows together and then, after a while, you start to read the first row, then the second row... every subsequent row has collected too many photons if compared to the first ones, so uneven exposure. If this is your question... or try to explain better if I misunderstood you.
Normal CMOS row timings in video mode (shutterless) are normally as follows (as an example) : - power to row 1  - power to row 2 - power to row 3 - read row 1- power to 4 - read row 2 - power to row 5 - read row 3 - ... and so on...  and in photo mode (with shutter) are : - shutter down - power to all rows - shutter up - wait - shutter down - read row 1 - read row 2 - ... and so on