
Recherche avancée
Autres articles (27)
-
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...) -
Other interesting software
13 avril 2011, parWe don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
We don’t know them, we didn’t try them, but you can take a peek.
Videopress
Website : http://videopress.com/
License : GNU/GPL v2
Source code : (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
Sur d’autres sites (4985)
-
Setting getChannelData causing socket.io to crash in web audio
6 novembre 2014, par Brad.SmithI’m having an issue where whenever I transcode an audio file and send the audio buffer to the client via socket.io to be played by web audio my connection dies as soon as I perform
source.buffer.getChannelData(0).set(audio);
I’m assuming that this isn’t a Socket.IO problem and that I’m only seeing the Socket.IO issue as a result of the real problem. In the client I’m piping the audio file into stdin of ffmpeg and listening to stderr of ffmpeg to determine when it’s safe to send the buffer. The client is receiving the buffer and is doing everything properly until the line stated above. Here is some sample test code to reproduce the issue.
Server side :
var express = require('express');
var http = require('http');
var spawn = require('child_process').spawn;
var app = express();
var webServer = http.createServer(app);
var io = require('socket.io').listen(webServer, {log: false});
app.use(express.static(__dirname + '/public'));
app.get('/', function(req, res){
res.send(
"<code class="echappe-js"><script src='http://stackoverflow.com/socket.io/socket.io.js'></script>\n"+
"<script>var socket=io.connect('http://127.0.0.1:3000');</script>
\n"+
"<script src='http://stackoverflow.com/webaudio_file_cli.js'></script>
"
) ;
) ;
webServer.listen(3000) ;io.sockets.on(’connection’, function(webSocket)
var disconnect = ’0’ ;
var count = 0 ;
var audBuf = new Buffer([]) ;if (disconnect == ’0’)
console.log(’new connection...’) ;var inputStream = spawn(’wget’, [’-O’,’-’,’http://www.noiseaddicts.com/samples/4353.mp3’]) ;
var ffmpeg = spawn(’ffmpeg’, [
’-i’, ’pipe:0’, // Input on stdin
’-acodec’, ’pcm_s16le’, // PCM 16bits, little-endian
’-ar’, ’24000’, // Sampling rate
’-ac’, 1, // Mono
’-f’, ’wav’,
’pipe:1’ // Output on stdout
], stdio : [’pipe’,’pipe’,’pipe’]) ;inputStream.stdout.pipe(ffmpeg.stdin) ;
ffmpeg.stdout.on(’data’, function(data)
audBuf = Buffer.concat([audBuf,data]) ;
) ;ffmpeg.stderr.on(’data’, function(data)
var _line = data.toString(’utf8’) ;
if (_line.substring(0,5) == ’size=’ && _line.indexOf(’headers :’) > -1)
console.log(’completed...’) ;
webSocket.emit(’audio’,audBuf) ;
) ;
webSocket.on(’disconnect’, function()
console.log(’disconnecting...’) ;
disconnect=1 ;
) ;
) ;
Client side (webaudio_file_cli.js) :
window.AudioContext = window.AudioContext || window.webkitAudioContext;
var context = new AudioContext();
var source = context.createBufferSource();
var audioStack = [], audio = [];
socket.on('audio', function(data) {
playAudio(data);
});
function playAudio(data) {
// playback starting...
audioStack = Int16Array(data);
for (var i = 0; i < audioStack.length; i++) {
audio[i] = (audioStack[i]>0)?audioStack[i]/32767:audioStack[i]/32768; // convert buffer to within the range -1.0 -> +1.0
}
var audioBuffer = context.createBuffer(1, audio.length, 24000);
source.buffer.getChannelData(0).set(audio);
source.buffer = audioBuffer;
source.connect(context.destination);
source.start(0);
} -
How to convert raw video file (.ign) to .mp4 ?
30 octobre 2014, par aizaazI want to get videos out of Aakash iTutor (education tablet with Android 4.1) to store them on my PC. I found out where the videos actually are in the educhip (memory card). The videos had their extensions removed and I simply started renaming them but I couldn’t find the extensions.
- Can I get the app’s internal video player to convert it ?
- Or can I convert an unknown format video i.e. .ign to mp4 or something playable ?
In case that’s not possible, can you help manually screen-record those videos at at least 30fps with soundcard sound (Screen Record Pro showed that the content was secure and couldn’t be recorded.)
Another player (.rec ) does not work with 4.1 Android.
Also, there are 4 folders in the educhip and all the folders (including the one in which these videos with no format are placed) have a lot of small files around (300B to 40kB) that too with no extension.
-
How to capture device input with ffmpeg in C ?
24 mai 2019, par Yi Lin LiuI am trying to use ffmpeg in my C code to capture device input, like screen and audio record. I have looked through their official documentation and wiki, but the API documentation is not really well explained compare to the command line usage.
According to the documentation, if I want to record audio with alsa on linux I could, for example
ffmpeg -f alsa -i hw:<#card>,<#device> -t <seconds> out.wav
</seconds>I want to use the C API to do the same thing, any idea ?