Xamarin.Android Получить кадр из TextureView - PullRequest
0 голосов
/ 21 мая 2018

Я хочу получить изображение кадра из моего TextureView (камеры предварительного просмотра) при нажатии кнопки.Как мне это сделать?Я создаю Activity с TextureView и двумя кнопками, одну для запуска и остановки предварительного просмотра камеры и одну для получения кадра из предварительного просмотра.Это моя активность:

public class PreviewActivity : Activity
{
    bool myPreviewing;
    Camera myCamera;
    TextureView myTextureView;

    protected override void OnCreate(Bundle savedInstanceState)
    {
        base.OnCreate(savedInstanceState);
        SetContentView(Resource.Layout.Preview);

        Button startPreviewButton = FindViewById<Button>(Resource.Id.startPreview);
        Button saveImageButton = FindViewById<Button>(Resource.Id.saveImage);
        myTextureView = FindViewById<TextureView>(Resource.Id.myTextureView);

        startPreviewButton.Click += delegate {
            try
            {
                if (!myPreviewing)
                {
                    myCamera = Open();
                    myCamera.SetPreviewTexture(myTextureView.SurfaceTexture);
                    myCamera.SetDisplayOrientation(90);
                    myCamera.StartPreview();
                }
                else
                {
                    myCamera.StopPreview();
                    myCamera.Release();
                }
            }
            catch (Java.IO.IOException ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                myPreviewing = !myPreviewing;
            }
        };

        saveImageButton.Click += delegate {
            // do something for take frame
        };

    }
}
...