Gets VLC object information about a log message: the type name of the VLC
    object emitting the message, the object header if any and a temporaly-unique
    object identifier. This information is mainly meant for B{manual}
    troubleshooting.
    The returned type name may be "generic" if unknown, but it cannot be NULL.
    The returned header will be NULL if unset; in current versions, the header
    is used to distinguish for VLM inputs.
    The returned object ID will be zero if the message is not associated with
    any VLC object.
    @param ctx: message context (as passed to the @ref libvlc_log_cb callback).
    @return: name object name storage (or NULL), header object header (or NULL), line source code file line number storage (or NULL).
    @version: LibVLC 2.1.0 or later.

def libvlc_log_get_object(ctx, id):
    '''Gets VLC object information about a log message: the type name of the VLC
    object emitting the message, the object header if any and a temporaly-unique
    object identifier. This information is mainly meant for B{manual}
    troubleshooting.
    The returned type name may be "generic" if unknown, but it cannot be NULL.
    The returned header will be NULL if unset; in current versions, the header
    is used to distinguish for VLM inputs.
    The returned object ID will be zero if the message is not associated with
    any VLC object.
    @param ctx: message context (as passed to the @ref libvlc_log_cb callback).
    @return: name object name storage (or NULL), header object header (or NULL), line source code file line number storage (or NULL).
    @version: LibVLC 2.1.0 or later.
    '''
    f = _Cfunctions.get('libvlc_log_get_object', None) or \
        _Cfunction('libvlc_log_get_object', ((1,), (2,), (2,), (1,),), None,
                    None, Log_ptr, ListPOINTER(ctypes.c_char_p), ListPOINTER(ctypes.c_char_p), ctypes.POINTER(ctypes.c_uint))
    return f(ctx, id)