123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- // @flow
-
- import { JitsiRecordingConstants } from '../base/lib-jitsi-meet';
-
- /**
- * Searches in the passed in redux state for an active recording session of the
- * passed in mode.
- *
- * @param {Object} state - The redux state to search in.
- * @param {string} mode - Find an active recording session of the given mode.
- * @returns {Object|undefined}
- */
- export function getActiveSession(state: Object, mode: string) {
- const { sessionDatas } = state['features/recording'];
- const { status: statusConstants } = JitsiRecordingConstants;
-
- return sessionDatas.find(sessionData => sessionData.mode === mode
- && (sessionData.status === statusConstants.ON
- || sessionData.status === statusConstants.PENDING));
- }
-
- /**
- * Returns an estimated recording duration based on the size of the video file
- * in MB. The estimate is calculated under the assumption that 1 min of recorded
- * video needs 10MB of storage on avarage.
- *
- * @param {number} size - The size in MB of the recorded video.
- * @returns {number} - The estimated duration in minutes.
- */
- export function getRecordingDurationEstimation(size: ?number) {
- return Math.floor((size || 0) / 10);
- }
-
- /**
- * Searches in the passed in redux state for a recording session that matches
- * the passed in recording session ID.
- *
- * @param {Object} state - The redux state to search in.
- * @param {string} id - The ID of the recording session to find.
- * @returns {Object|undefined}
- */
- export function getSessionById(state: Object, id: string) {
- return state['features/recording'].sessionDatas.find(
- sessionData => sessionData.id === id);
- }
|