Skip to content

Parsing a UPnP share fails when using a new VLCMedia object and linking iOS 17

In the VLC-iOS app, it is possible to bookmark folders on UPnP shares, so URLs like upnp://http://192.168.178.37:50001/ContentDirectory/control?ObjectID=21 are stored for later use (assuming that the IP does not change, this works quite well).

When the user comes back to the favourite, we do this:

    VLCMedia *firstMedia = [VLCMedia mediaWithURL:[NSURL URLWithString:@"upnp://http://192.168.178.37:50001/ContentDirectory/control?ObjectID=21"]];
    firstMedia.delegate = self;
    [firstMedia parseWithOptions:VLCMediaParseNetwork|VLCMediaDoInteract];

and populate a list of things with the results.

However, when linking the same app against iOS 17 instead of iOS 16/15, this will stop working.

Even more weirdly, discovering a UPnP server, taking the root media and parsing that will work on iOS 17.

Attached, a small sample project to illustrate the problem.

N.B. with VLCKitv4, this neither works on iOS 16 and before nor on iOS 17.

VLCNetworkDiscoverer-Pod.zip

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information