Expression Encoder 4 LiveSourceSample. как захватить вторичный монитор - PullRequest
1 голос
/ 02 ноября 2011

Я использую образец из кодировщика экспрессии 4 для захвата монитора.Это все работает нормально, но я хочу захватить дополнительный монитор.Кто-нибудь знает, как это изменить?

        // Starts new job for preview window
        job = new LiveJob();

        // Aquires audio and video devices
        Collection<EncoderDevice> devices = EncoderDevices.FindDevices(EncoderDeviceType.Video);
        EncoderDevice video = devices.Count > 0 ? devices[0] : null;
        for (int i = 1; i < devices.Count; ++i)
            devices[i].Dispose();
        devices.Clear();

        devices = EncoderDevices.FindDevices(EncoderDeviceType.Audio);
        EncoderDevice audio = devices.Count > 0 ? devices[0] : null;
        for (int i = 1; i < devices.Count; ++i)
            devices[i].Dispose();
        devices.Clear();

        // Checks for a/v devices
        if (video != null && audio != null)
        {
            // Create a new device source. We use the first audio and video devices on             the system
            deviceSource = job.AddDeviceSource(video, audio);

            // Make this source the active one

            job.ActivateSource(deviceSource);
        }
        else
        {
            error = true;
        }

Спасибо

РЕДАКТИРОВАТЬ: забыл упомянуть, что он находит только 1 видеоустройство.пример: я не могу сделать это

 EncoderDevice video = devices[1];

1 Ответ

0 голосов
/ 03 ноября 2011
 deviceSource.ScreenCaptureSourceProperties = new ScreenCaptureSourceProperties()
            {
                Left = x,
                Top = y,
                Width = w,
                Height = h,
            };
...