Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

151
Views
ffmpeg.js para crear mp4 a partir de cuadros de Canavas y transcodificarlo

Estoy buscando usar ffmpeg o ffmpeg.wasm dentro de un SPA sin servidor Vue que en este momento usa GIF.js. La aplicación crea HTMLCanvasElement dinámicamente y los agrega como marcos al objeto GIF que luego está disponible para su descarga y, en el caso de ffmpeg , tiene la opción de transcodificarlo a otro formato, por ejemplo, .gif . Idealmente, quiero hacer lo mismo con ffmpeg . Mi pregunta es más sobre cómo integrar ffmpeg en mi contexto y cómo reemplazar mi gif.addFrame(composedCnv, { delay: delayInput }); con una await ffmpeg.run( ... ); ¿dominio?

 async createGIFHandler ( layer , addAllTitles , quality , delay , range ) { ... var tempGIF = new GIF({ workers: 4, quality: quality, height: this.mapHeight + this.infoCanvas.height, width: this.mapWidth, workerScript: 'gif.worker.js' }); let progressCounter = 1; for ( let i = range[0] ; i < range[1] ; i++, progressCounter++ ) { this.setDateTime( driver , driverDA[i] ); for ( let j = 0 ; j < visibleLayers.length ; j++ ) { if ( visibleLayers[j].get('layerName') !== layer.Name ) { var tempDA = visibleLayers[j].get('layerDateArray'); for ( let k = 0 ; k < tempDA.length ; k++ ) { if ( driverDA[i].getTime() === tempDA[k].getTime() ) { this.setDateTime( visibleLayers[j] , tempDA[k] ); } } } } await new Promise(resolve => this.map.once('rendercomplete', resolve)); await this.composeCanvas( tempGIF , driverDA[i] , visibleLayers , delay , widths ) this.$store.dispatch('Layers/setGIFPercent', Math.round(((progressCounter / gifLength) * 100))) } tempGIF.on('finished', (blob) => { const tempURL = URL.createObjectURL( blob ) this.$store.dispatch( 'Layers/setGIFURL' , tempURL ) console.log('GIF Finished'); }); tempGIF.render(); }, async composeCanvas( gif , timeStep , visibleLayers , delayInput , widths ) { const mapCnv = this.getMapCanvas(); await this.updateInfoCanvas( timeStep , widths ) const composedCnv = await this.stitchCanvases( mapCnv , visibleLayers.length ); await new Promise((resolve) => { gif.addFrame(composedCnv, { delay: delayInput }); resolve(); }) },
about 4 years ago · Santiago Trujillo
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!