Merge pull request #198 from mohan43u/master

[mirotalk] - added PRIORITIZE_H264 env
This commit is contained in:
Miroslav Pejic
2023-12-04 15:10:33 +01:00
committed by GitHub
3 changed files with 19 additions and 9 deletions
+5 -1
View File
@@ -107,4 +107,8 @@ CHATGPT_BASE_PATH=https://api.openai.com/v1/
CHATGTP_APIKEY=YourOpenAiApiKey
CHATGPT_MODEL=text-davinci-003
CHATGPT_MAX_TOKENS=1000
CHATGPT_TEMPERATURE=0
CHATGPT_TEMPERATURE=0
# Recording
# Give priority to h264,aac|h264,opus instead of vp8,opus/vp9,opus codec
REC_PRIORITIZE_H264=false # true or false
+6
View File
@@ -206,6 +206,9 @@ if (configChatGPT.enabled) {
}
}
// make sure we prioritize h264,aac/h264,opus when recording
const recPrioritizeH264 = getEnvBoolean(process.env.REC_PRIORITIZE_H264);
// directory
const dir = {
public: path.join(__dirname, '../../', 'public'),
@@ -538,6 +541,7 @@ async function ngrokStart() {
sentry_enabled: sentryEnabled,
survey_enabled: surveyEnabled,
redirect_enabled: redirectEnabled,
rec_prioritize_h264: recPrioritizeH264,
survey_url: surveyURL,
redirect_url: redirectURL,
node_version: process.versions.node,
@@ -587,6 +591,7 @@ server.listen(port, null, () => {
sentry_enabled: sentryEnabled,
survey_enabled: surveyEnabled,
redirect_enabled: redirectEnabled,
rec_prioritize_h264: recPrioritizeH264,
survey_url: surveyURL,
redirect_url: redirectURL,
node_version: process.versions.node,
@@ -835,6 +840,7 @@ io.sockets.on('connect', async (socket) => {
active: redirectEnabled,
url: redirectURL,
},
rec_prioritize_h264: recPrioritizeH264,
//...
});
});
+8 -8
View File
@@ -603,6 +603,7 @@ let audioRecorder; // helpers.js
let recScreenStream; // screen media to recording
let recTimer;
let recElapsedTime;
let recPrioritizeH264 = false;
let isStreamRecording = false;
let isStreamRecordingPaused = false;
let isRecScreenStream = false;
@@ -1126,7 +1127,7 @@ async function handleConnect() {
function handleServerInfo(config) {
console.log('13. Server info', config);
const { peers_count, host_protected, user_auth, is_presenter, survey, redirect } = config;
const { peers_count, host_protected, user_auth, is_presenter, survey, redirect, rec_prioritize_h264 } = config;
isHostProtected = host_protected;
isPeerAuthEnabled = user_auth;
@@ -1147,6 +1148,9 @@ function handleServerInfo(config) {
isPresenter = isPeerReconnected ? isPresenter : is_presenter;
isPeerPresenter.innerText = isPresenter;
// prioritize h264
recPrioritizeH264 = rec_prioritize_h264;
if (isRulesActive) {
handleRules(isPresenter);
}
@@ -5742,13 +5746,9 @@ function stopRecordingTimer() {
* @returns {boolean} is mimeType supported by media recorder
*/
function getSupportedMimeTypes() {
const possibleTypes = [
'video/webm;codecs=vp9,opus',
'video/webm;codecs=vp8,opus',
'video/webm;codecs=h264,opus',
'video/mp4;codecs=h264,aac',
'video/mp4',
];
const possibleTypes = ['video/webm;codecs=vp9,opus', 'video/webm;codecs=vp8,opus', 'video/mp4'];
possibleTypes.splice(recPrioritizeH264 ? 0 : 2, 0, 'video/mp4;codecs=h264,aac', 'video/webm;codecs=h264,opus');
console.log('POSSIBLE CODECS', possibleTypes);
return possibleTypes.filter((mimeType) => {
return MediaRecorder.isTypeSupported(mimeType);
});