Parse the media asynchronously with options.
    This fetches (local or network) art, meta data and/or tracks information.
    This method is the extended version of L{libvlc_media_parse_async}().
    To track when this is over you can listen to libvlc_MediaParsedChanged
    event. However if this functions returns an error, you will not receive this
    event.
    It uses a flag to specify parse options (see libvlc_media_parse_flag_t). All
    these flags can be combined. By default, media is parsed if it's a local
    file.
    See libvlc_MediaParsedChanged
    See L{libvlc_media_get_meta}
    See L{libvlc_media_tracks_get}
    See libvlc_media_parse_flag_t.
    @param p_md: media descriptor object.
    @param parse_flag: parse options:
    @return: -1 in case of error, 0 otherwise.
    @version: LibVLC 3.0.0 or later.

def libvlc_media_parse_with_options(p_md, parse_flag):
    '''Parse the media asynchronously with options.
    This fetches (local or network) art, meta data and/or tracks information.
    This method is the extended version of L{libvlc_media_parse_async}().
    To track when this is over you can listen to libvlc_MediaParsedChanged
    event. However if this functions returns an error, you will not receive this
    event.
    It uses a flag to specify parse options (see libvlc_media_parse_flag_t). All
    these flags can be combined. By default, media is parsed if it's a local
    file.
    See libvlc_MediaParsedChanged
    See L{libvlc_media_get_meta}
    See L{libvlc_media_tracks_get}
    See libvlc_media_parse_flag_t.
    @param p_md: media descriptor object.
    @param parse_flag: parse options:
    @return: -1 in case of error, 0 otherwise.
    @version: LibVLC 3.0.0 or later.
    '''
    f = _Cfunctions.get('libvlc_media_parse_with_options', None) or \
        _Cfunction('libvlc_media_parse_with_options', ((1,), (1,),), None,
                    ctypes.c_int, Media, MediaParseFlag)
    return f(p_md, parse_flag)