VLCKit: VLCLibrary Class Reference

VLCKit

Instance Methods | Class Methods | Properties | List of all members
VLCLibrary Class Reference

`#import <VLCLibrary.h>`

Inheritance diagram for VLCLibrary:

## Instance Methods
(instancetype) | - initWithOptions:
(BOOL) | - setDebugLoggingToFile:
(void) | - setHumanReadableName:withHTTPUserAgent:
(void) | - setApplicationIdentifier:withVersion:andApplicationIconName:

## Class Methods
(VLCLibrary *) | + sharedLibrary

## Properties
BOOL | debugLogging
int | debugLoggingLevel
id< VLCLibraryLogReceiverProtocol > | debugLoggingTarget
NSString * | version
NSString * | compiler
NSString * | changeset
void * | instance

## Detailed Description

The VLCLibrary is the base library of VLCKit.framework. This object provides a shared instance that exposes the internal functionalities of libvlc and libvlc-control. The VLCLibrary object is instantiated automatically when VLCKit.framework is loaded into memory. Also, it is automatically destroyed when VLCKit.framework is unloaded from memory.

Currently, the framework does not support multiple instances of VLCLibrary. Furthermore, you cannot destroy any instance of VLCLibrary; this is done automatically by the dynamic link loader.

## Method Documentation

## ◆ initWithOptions:

- (instancetype) initWithOptions: |  | (NSArray *) | options |

Returns an individual instance which can be customized with options

Parameters

  options | NSArray with NSString instance containing the options

Returns
  the individual library instance

## ◆ setApplicationIdentifier:withVersion:andApplicationIconName:

- (void) setApplicationIdentifier: |  | (NSString *) | identifier
withVersion: |  | (NSString *) | version
andApplicationIconName: |  | (NSString *) | icon

Sets meta-information about the application

Parameters

  identifier | Java-style application identifier, e.g. "com.acme.foobar"
  version | Application version numbers, e.g. "1.2.3"
  icon | Application icon name, e.g. "foobar"

## ◆ setDebugLoggingToFile:

- (BOOL) setDebugLoggingToFile: |  | (NSString *) | filePath |

Activates debug logging to a file stream If the file already exists, the log will be appended by the end. If it does not exist, will be created. The file will continously updated with new messages from this library instance.

Note
  It is the client app's obligation to ensure that the target file path is writable and all subfolders exist

Warning
  when enabling this feature, logging to the console or an object target will be stopped automatically

Returns
  Returns NO on failure

## ◆ setHumanReadableName:withHTTPUserAgent:

- (void) setHumanReadableName: |  | (NSString *) | readableName
withHTTPUserAgent: |  | (NSString *) | userAgent

Sets the application name and HTTP User Agent libvlc will pass it to servers when required by protocol

Parameters

  readableName | Human-readable application name, e.g. "FooBar player 1.2.3"
  userAgent | HTTP User Agent, e.g. "FooBar/1.2.3 Python/2.6.0"

## ◆ sharedLibrary

+ (VLCLibrary *) sharedLibrary |  |  |

Returns the library's shared instance

Returns
  The library's shared instance

## Property Documentation

## ◆ changeset

- (NSString*) changeset
| readatomiccopy

Returns the library's changeset

Returns
  The library version example "adfee99"

## ◆ compiler

- (NSString*) compiler
| readatomiccopy

Returns the compiler used to build the libvlc binary

Returns
  The compiler version string.

## ◆ debugLogging

- (BOOL) debugLogging
| readwritenonatomicassign

Enables/disables debug logging to console

Note
  NSLog is used to log messages

## ◆ debugLoggingLevel

- (int) debugLoggingLevel
| readwritenonatomicassign

Gets/sets the debug logging level

Note
  Logging level 0: info/notice 1: error 2: warning 3-4: debug
  values set here will be consired only when logging to console

Warning
  If an invalid level is provided, level defaults to 0

## ◆ debugLoggingTarget

- (id<VLCLibraryLogReceiverProtocol>) debugLoggingTarget
| readwritenonatomicassign

Activates debug logging to an object target following the VLCLibraryLogReceiverProtocol protocol The target will be continously called as new messages arrive from this library instance.

Warning
  when enabling this feature, logging to the console or a file will be stopped automatically

## ◆ instance

- (void*) instance
| readwritenonatomicassign

libvlc instance wrapped by the VLCLibrary instance

Note
  If you want to use it, you are most likely wrong (or want to add a proper ObjC API)

## ◆ version

- (NSString*) version
| readatomiccopy

Returns the library's version

Returns
  The library version example "0.9.0-git Grishenko"

The documentation for this class was generated from the following file:

- Headers/Public/VLCLibrary.h