iosobjective-cipadexternal-display

How do I enable 1920x1080 External Display from my iPad?


I am trying to set up an External Display running at 1920x1080 from an iPad 4 (model MD513LL/A) through a Lightning AV Adapter. When I parse through each of the available modes, I see the following:

I have tested this with three modern (1-2 years old) TVs and gotten the same results on each display, without ever seeing 1920x1080. Here is the code I am using for the external display.

EDIT: I have discovered that this is a problem ONLY with the Lightning Digital AV Adapter, not the original Digital AV Adapter.

if ([[UIScreen screens] count] > 1)
{
    UIScreen *secondScreen = [[UIScreen screens] objectAtIndex:1];
    NSString *availableModeString;

    for (int i = 0; i < secondScreen.availableModes.count; i++)
    {
        availableModeString = [NSString stringWithFormat:@"%f, %f",
        ((UIScreenMode *)[secondScreen.availableModes objectAtIndex:i]).size.width,
        ((UIScreenMode *)[secondScreen.availableModes objectAtIndex:i]).size.height];

        [[[UIAlertView alloc] initWithTitle:@"Available Mode" message:availableModeString delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil] show];
        availableModeString = nil;
    }

    // undocumented value 3 means no overscan compensation
    secondScreen.overscanCompensation = 3;

    self.secondWindow = [[UIWindow alloc] initWithFrame:CGRectMake(0, 0, 1280, 720)];
    self.secondWindow.backgroundColor = [UIColor blueColor];
    self.secondWindow.screen = secondScreen;

    T9SecondaryScreenViewController *viewController = [[T9SecondaryScreenViewController alloc] initWithNibName:@"T9SecondaryScreenViewController" bundle:nil];
    self.secondWindow.rootViewController = viewController;

    self.secondWindow.hidden = NO;
}

Solution

  • Unfortunately this adapter is not capable of 1080p.

    Source