Multi Bracket Shooting Settings Now Available

Thank you for the feedback. I am a very novice photographer and do not understand much of the settings. I’ll pass this on the THETA product manager. Thank you for taking the time to explain the requirement.

As I posted on the Ricoh forum, it’s nice to see the feature directly supported in the API but as it stands, it doesn’t offer anything that couldn’t be done with individual API calls previously.

I was hoping that they may have implemented this so that all of the images were captured before any of the dewarping is done in order to minimize the time offsets between images. Unfortunately it just seems to iterate through the usual capture/dewarp cycle for each image so actually takes longer between images than careful use of individual API calls.

But… now that the API support is there, Ricoh could easily improve this as suggested, without going down the path of supporting undewarped or raw output. @codetricity @jcasman Is this something you could please bring up with your contacts at Ricoh?

Thanks
Daniel

We’ll add this to a report we send to the product manager. Thank you for the explanation.

I’m having trouble getting the autobracket settings to register with the Z1.
Personally I find the API docs a bit confusing. The example listed here does not actually specify where that information needs to be placed. Is it within the “options” block which is contained in the “parameters” block, or is it placed only in the “parameters” block? When I place this within the “options” block I get an error. When I place outside of the “options” block but within the “parameters” block there is no error, however it also does not register any change.

This is how I think it should be called but results in an error.

Call to: “http://192.168.1.1:80/osc/commands/execute

    {
        "name": "camera.setOptions",
        "parameters": {
            "options": {
                "fileFormat": {
                            "type": "raw+",
                            "width": 6720,
                            "height": 3360
                },
                "exposureProgram": 1,
                "_function": "normal",
                "_autoBracket": {
            	    "_bracketNumber": 3,
            	    "_bracketParameters": [
                	    {
                    	    "iso": 400,
                    	    "aperture": 2.1,
                    	    "shutterSpeed": 0.011,
                    	    "exposureCompensation": 0.0,
                    	    "_colorTemperature": 5000,
                    	    "whiteBalance": "auto"
                	    },
                	    {
                    	    "iso": 400,
                    	    "aperture": 2.1,
                    	    "shutterSpeed": 0.033,
                    	    "exposureCompensation": 0.0,
                    	    "_colorTemperature": 5000,
                    	    "whiteBalance": "auto"
                	    },
                	    {
                    	    "iso": 400,
                    	    "aperture": 2.1,
                    	    "shutterSpeed": 0.066,
                    	    "exposureCompensation": 0.0,
                    	    "_colorTemperature": 5000,
                    	    "whiteBalance": "auto"
                	    }
            	    ]
        	    }
            }   
        }
    }

but this produces an error:

    {
        "error": {
            "code": "missingParameter",
            "message": "Any required parameter is not specified."
        },
        "name": "camera.setOptions",
        "state": "error"
    }

Working example:

Output of getOptions

JSON payload setup

Notes

Example is using client mode because it is easier for me to test on my workstation, but it should work with access point mode. I think you just need the parameters example and think you can adjust it to a AP mode application.

It’s possible that you need to set the “exposureProgram” for every bracket. I have not tested it without the exposureProgram set for every bracket.

Please report back on your success/fail.

Thank you for the response.

When I test my code with Postman (where I can submit the Json payload) the request succeeds. The problem seems to be when I try to create and send the Json payload through swift. It only fails when I include the “_autoBracket” block. Otherwise I am able to change the camera options as expected.

I’ve outlined my code and issue here:

https://stackoverflow.com/questions/58264675/swift-jsonserialization-how-to-properly-format-for-rest-server

If you have a working Swift example I would be very grateful to see it.

-t

The example you have on StackOverflow looks like it is using an array? It should be curly brackets where the arrows are. Is that specific to Swift which converts it into JSON?

image

Is your error message still the same about missing a parameter?

image

Actually my error is now:

[“error”: {

code = invalidParameterValue;

message = “Any input parameter or option name is recognized, but its value is invalid.”;

}, “state”: error, “name”: camera.setOptions]

This is how Swift deals with a mixture of Dictionary and Array object types. so it allows a reference such as:
JSON_bodyObj[“parameters”][“options”][“_autoBracket”][“_bracketParameters”][0][“aperture”]

The JSONSerilaizer call “should” properly convert that to JSON, though I suspect this is where I am doing something wrong. Thank you for taking a look. I’ll update you when I get that figured out.

-t

Apologies,

When I reduce the code to just the three _bracketParamter options I provide in the example I do still get the same error:

[“error”: {

code = missingParameter;

message = “Any required parameter is not specified.”;

}, “name”: camera.setOptions, “state”: error]

I saw the above error in my tests when I used values that were outside of the valid range for each parameter. For example, when I set the shutterSpeed to an unsupported value, I saw that error.

I notice that in your Stackoverflow post, you indicated that you have it working on Postman. It seems that you’re very close.

Hi,

Is there a way to merge all the pictures taken directely on the camera automatically, like it is done with simple hdr option, to make a super-hdr option ?

Thanks

Please note that Z1 support is limited. Please refer to the forum discussion before use.

That’s indeed a very nice plugin, and correspond to what I need.
I was looking for a native solution, that would have been fast to implement.
So I guess it is not possible without a plugin.
Thanks :slight_smile:

Can you confirm that the latest update to the firmware to support handheld HDR does not meet your requirements?

https://api.ricoh/news/2019/10/24/ricoh-theta-api-update-z1-1.20.1-v-3.10.1/

https://api.ricoh/docs/theta-web-api-v2.1/options/_filter/

In addition to the web API, this is also available with Bluetooth:
https://api.ricoh/docs/theta-ble-api/shooting_control_command/filter/

and the USB API
https://api.ricoh/docs/theta-usb-api/property/filter/

To be honnest it’s quite hard for me to understand what is the Handled HDR mode.
Is it just a more sofisticated version of the hdr that can handle some movement during the hdr shooting ?
If so, it’s not what I’m looking for unfortunately…

I see what you mean. The documentation doesn’t really explain the difference.

Update: Nov 7, evening

Handheld HDR or Hh hdr has some photo-processing to eliminate slight shaking from HDR image. To some extent, it can eliminate the “ghost” image.

The standard HDR or hdr does not compensate for movement and should be used with the camera in a tripod.

Hello,

Is there already a plug in or app for auto exposure bracketing that will do these settings?

  • Aperture Priority
  • ISO 200 preferred or 400 is ok too
  • 3 shot exposure bracket 2 stops apart -1, +1, +3
  • 5 shot exposure bracket 1 stop apart -1, 0, +1, +2, +3
  • Auto White Balance

.I’d tried some apps but they miss the mark or glitch…

The official RICOH mobile app has the ability to set brackets. If you have a Z1, this plug-in is popular.

Thank you! I don’t mind the in camera stitching wait usually processes as I walk room to room anyway. Is there a similar app that will have the functions to set the stop’s between bracketed shots in and also provide a in camera stitched JPG?

I usually set 2 stops apart on 3 shot brackets, 1 stop apart on 5 shot brackets and if I really need detail I’ll go 1/2 stop apart on 9 shot brackets…

Thanks again I’ve been needing this help for a long time it’s been frustrating to get these settings.

Do you have a Z1 or a V? If you’re using a Z1, the workflow may be different as you may want to use DNG (RAW) images.

This is another option to output EXR files that you can then put into Photoshop to adjust the color/light for difficult lighting shots.

If you’re using a V and want to deal with equirectangular images at different stops beyond the automatic pre-set HDR stops, you have to have some way to merge the images. The automatic “HDR” or “Handheld HDR” inside the THETA V camera does not give you the flexibility of setting the stops you want.

You can use the mobile app to take multiple bracketed shots automatically at pre-set exposures. However, the camera will not merge these automatically inside the camera. If you take 5 shots with custom exposure, you will have 5 images that you need to merge after your shoot. You can use Photoshop or Luminance HDR (free).

If you want to take images quickly, your best strategy is likely the built-in HDR with non-changeable presets. If you have a tough shot with light from a window and a nice furniture in the shadow or the doorway to a darker area (and thus suffer from image noise), you likely need to take bracketed equirectangular shots and merge them after the shoot with Photoshop (which is the most common technique).