Vidtreo
Referencia de API

API de VidtreoRecorder

Referencia completa de la API de la clase VidtreoRecorder.

API de VidtreoRecorder

La clase VidtreoRecorder es el núcleo del SDK VIDTREO. Maneja toda la funcionalidad de grabación, transcodificación y subida.

Constructor

new VidtreoRecorder(config: VidtreoRecorderConfig)

Opciones de Configuración

OpciónTipoRequeridoPor DefectoDescripción
apiKeystringSí-Tu API key de VIDTREO
apiUrlstringNohttps://core.vidtreo.comEndpoint de la API
enableSourceSwitchingbooleanNotruePermitir cambio cámara/pantalla
enableMutebooleanNotrueHabilitar funcionalidad de silencio
enablePausebooleanNotrueHabilitar pausar/reanudar
enableDeviceChangebooleanNotrueHabilitar selección de dispositivos
maxRecordingTimenumberNoundefinedDuración máxima (ms)
countdownDurationnumberNo3000Cuenta regresiva (ms)
userMetadataobjectNoundefinedMetadatos personalizados
onUploadCompletefunctionNo-Callback de éxito de subida
onUploadProgressfunctionNo-Callback de progreso
onUploadErrorfunctionNo-Callback de error de subida
onRecordingStartfunctionNo-Callback de inicio de grabación
onRecordingStopfunctionNo-Callback de fin de grabación
onErrorfunctionNo-Callback de error

Métodos

initialize()

Inicializa el grabador. Debe llamarse antes que otros métodos.

await recorder.initialize(): Promise<void>

startPreview()

Inicia la vista previa de cámara o pantalla sin grabar.

await recorder.startPreview(sourceType?: SourceType): Promise<MediaStream>

startRecording()

Inicia la grabación desde cámara o pantalla.

await recorder.startRecording(
  options?: RecordingStartOptions,
  sourceType?: SourceType
): Promise<void>

stopRecording()

Detiene la grabación e inicia la subida.

await recorder.stopRecording(): Promise<RecordingStopResult>

switchSource()

Cambia entre cámara y pantalla durante la grabación.

await recorder.switchSource(sourceType: SourceType): Promise<void>

muteAudio() / unmuteAudio() / toggleMute()

Controla el silenciado de audio.

recorder.muteAudio(): void
recorder.unmuteAudio(): void
recorder.toggleMute(): void

pauseRecording() / resumeRecording()

Controla el estado de pausa de la grabación.

recorder.pauseRecording(): void
recorder.resumeRecording(): void

getRecordingState()

Obtiene el estado actual de grabación.

recorder.getRecordingState(): RecordingState
// Retorna: 'idle' | 'countdown' | 'recording'

getStream()

Obtiene el stream de medios actual.

recorder.getStream(): MediaStream | null

getAvailableDevices()

Obtiene cámaras y micrófonos disponibles.

await recorder.getAvailableDevices(): Promise<AvailableDevices>

cleanup()

Libera todos los recursos.

recorder.cleanup(): void

Ejemplo

import { VidtreoRecorder } from '@vidtreo/recorder';

const recorder = new VidtreoRecorder({
  apiKey: 'tu-api-key',
  maxRecordingTime: 300000,
  onUploadComplete: (result) => {
    console.log('URL del Video:', result.uploadUrl);
  },
  onError: (error) => {
    console.error('Error:', error);
  }
});

await recorder.initialize();
const stream = await recorder.startPreview('camera');
document.querySelector('video').srcObject = stream;
await recorder.startRecording();
const result = await recorder.stopRecording();
recorder.cleanup();

Ver También

En esta página