A custom FFprobe session, which produces a MediaInformation
object using the
* FFprobe output.
*/
@interface MediaInformationSession : AbstractSession
/**
* Creates a new media information session.
*
* @param arguments command arguments
* @return created session
*/
+ (instancetype)create:(NSArray*)arguments;
/**
* Creates a new media information session.
*
* @param arguments command arguments
* @param completeCallback session specific complete callback
* @return created session
*/
+ (instancetype)create:(NSArray*)arguments withCompleteCallback:(MediaInformationSessionCompleteCallback)completeCallback;
/**
* Creates a new media information session.
*
* @param arguments command arguments
* @param completeCallback session specific complete callback
* @param logCallback session specific log callback
* @return created session
*/
+ (instancetype)create:(NSArray*)arguments withCompleteCallback:(MediaInformationSessionCompleteCallback)completeCallback withLogCallback:(LogCallback)logCallback;
/**
* Returns the media information extracted in this session.
*
* @return media information extracted or nil if the command failed or the output can not be
* parsed
*/
- (MediaInformation*)getMediaInformation;
/**
* Sets the media information extracted in this session.
*
* @param mediaInformation media information extracted
*/
- (void)setMediaInformation:(MediaInformation*)mediaInformation;
/**
* Returns the session specific complete callback.
*
* @return session specific complete callback
*/
- (MediaInformationSessionCompleteCallback)getCompleteCallback;
@end
#endif // FFMPEG_KIT_MEDIA_INFORMATION_SESSION_H