How to embed the broadcast from the camera in the container in Codename1?

In my application there is a video button. Here’s the code.

    protected void onGUI1_Button1Action (Component c, ActionEvent event){

            try {
                String value = Capture.captureVideo();
                if (value != null) {
                    final Form previous = Display.getInstance().getCurrent();
                    Form preview = new Form("Preview");
                    preview.setLayout(new BorderLayout());
                    MediaPlayer pl = new MediaPlayer();
                    if (!value.startsWith("file:/")) {
                        value = "file:/" + value;
                    preview.addComponent(BorderLayout.CENTER, pl);
                    preview.setBackCommand(new Command("Back") {
                        public void actionPerformed(ActionEvent evt) {
            } catch (Exception ex) {
      "Error", "" + ex, "OK", null);

I picked up this code from github. I don’t want to broadcast the video on full screen. I need a video from camera was built into some container. That container must cover only part of the screen. I have built a GUI and put a container(Media Player) into some part of screen. How to change the code for this purpose?


You can place a camera view finder right into your app with a new cn1lib:

Overlaying native widgets has been possible for a year or so by now.

Original answer which was correct when it was written is below:

Embedding camera or overlaying component on the preview screen is not yet available in codename one.

This could be done using native interface with peer component. Have a look at how Native map was implemented here

Leave a Reply

Your email address will not be published. Required fields are marked *