 		:name:	isFocusModeSupported
 	*/
 	public func isFocusModeSupported(focusMode: AVCaptureFocusMode) -> Bool {
-		return videoDevice.isFocusModeSupported(focusMode)
+		return activeVideoInput!.device.isFocusModeSupported(focusMode)
 	}
 	
 	/**
 		:name:	isExposureModeSupported
 	*/
 	public func isExposureModeSupported(exposureMode: AVCaptureExposureMode) -> Bool {
-		return videoDevice.isExposureModeSupported(exposureMode)
+		return activeVideoInput!.device.isExposureModeSupported(exposureMode)
 	}
 	
 	//

	private lazy var videoQueue: dispatch_queue_t = dispatch_queue_create("io.materialkit.CaptureSession", nil)
	
	//
	//	:name:	videoDevice
	//
	private lazy var videoDevice: AVCaptureDevice = AVCaptureDevice.defaultDeviceWithMediaType(AVMediaTypeVideo)
	
	//
	//	:name:	audioDevice
	//
	private lazy var audioDevice: AVCaptureDevice = AVCaptureDevice.defaultDeviceWithMediaType(AVMediaTypeAudio)
	
	//
	//	:name:	activeVideoInput
	//
	private var activeVideoInput: AVCaptureDeviceInput?

	//
	private func prepareVideoInput() {
		do {
			activeVideoInput = try AVCaptureDeviceInput(device: AVCaptureDevice.defaultDeviceWithMediaType(AVMediaTypeVideo))
			if session.canAddInput(activeVideoInput) {
				session.addInput(activeVideoInput)
			}
