
Recherche avancée
Médias (91)
-
Valkaama DVD Cover Outside
4 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Image
-
Valkaama DVD Label
4 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Image
-
Valkaama DVD Cover Inside
4 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Image
-
1,000,000
27 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Demon Seed
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
The Four of Us are Dying
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (106)
-
MediaSPIP version 0.1 Beta
16 avril 2011, parMediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...) -
Mise à jour de la version 0.1 vers 0.2
24 juin 2013, parExplications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...) -
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 (11260)
-
How to use ffmpeg capture screen (not command) ?
16 novembre 2022, par TomI am looking for example on the Internet, but none of the relevant examples can be run. Always I compile the no match
ffmpeg
version. Could someone share a example to learn ?

-
varying RTP stream result from custom SIP implementation
1er février, par Nik HendricksI am in the process of creating my own SIP implementation in Node.js. As well as a b2bua as a learning project.


Finding people wise in the ways of SIP has proved to be difficult elsewhere but here I have had good results


this is the GitHub of my library so far node.js-sip


this is the GitHub of my PBX so far FlowPBX


Currently, everything is working as I expect. Although I really have some questions on possible errors in my implementation.


My main issue is with RTP streams. Currently I am utilizing ffmpeg.


my function goes as follows


start_stream(call_id, sdp){
 console.log('Starting Stream')
 let port = sdp.match(/m=audio (\d+) RTP/)[1];
 let ip = sdp.match(/c=IN IP4 (\d+\.\d+\.\d+\.\d+)/)[1];
 let codec_ids = sdp.match(/m=audio \d+ RTP\/AVP (.+)/)[1].split(' ');
 let ffmpeg_codec_map = {
 'opus': 'libopus',
 'PCMU': 'pcm_mulaw',
 'PCMA': 'pcm_alaw',
 'telephone-event': 'pcm_mulaw',
 'speex': 'speex',
 'G722': 'g722',
 'G729': 'g729',
 'GSM': 'gsm',
 'AMR': 'amr',
 'AMR-WB': 'amr_wb',
 'iLBC': 'ilbc',
 'iSAC': 'isac',
 }

 let codecs = [];
 sdp.split('\n').forEach(line => {
 if(line.includes('a=rtpmap')){
 let codec = line.match(/a=rtpmap:(\d+) (.+)/)[2];
 let c_id = line.match(/a=rtpmap:(\d+) (.+)/)[1];
 codecs.push({ 
 name: codec.split('/')[0],
 rate: codec.split('/')[1],
 channels: codec.split('/')[2] !== undefined ? codec.split('/')[2] : 1,
 id: c_id
 })
 }
 })

 console.log('codecs')
 console.log(codecs)

 let selected_codec = codecs[0]
 if(selected_codec.name == 'telephone-event'){
 selected_codec = codecs[1]
 console.log(selected_codec)
 }

 //see if opus is available
 codecs.forEach(codec => {
 if(codec.name == 'opus'){
 selected_codec = codec;
 }
 })

 if(selected_codec.name != 'opus'){
 //check if g729 is available
 codecs.forEach(codec => {
 if(codec.name == 'G729'){
 selected_codec = codec;
 }
 })
 }

 console.log('selected_codec')
 console.log(selected_codec)

 let spawn = require('child_process').spawn;
 let ffmpegArgs = [
 '-re',
 '-i', 'song.mp3',
 '-acodec', ffmpeg_codec_map[selected_codec.name],
 '-ar', selected_codec.rate,
 '-ac', selected_codec.channels,
 '-payload_type', selected_codec.id,
 '-f', 'rtp', `rtp://${ip}:${port}`
 ];

 let ffmpeg = spawn('ffmpeg', ffmpegArgs);

 ffmpeg.stdout.on('data', (data) => {
 console.log(`stdout: ${data}`);
 });
 ffmpeg.stderr.on('data', (data) => {
 console.error(`stderr: ${data}`);
 });




}



When using zoiper to test it works great. I have seen the mobile version negotiate speex
and the desktop version negotiate opus mostly for the codec.


today I tried to register a grandstream phone to my pbx and the rtp stream is blank audio.
opus is available and I have tried to prefer that in my stream but still even when selecting that I cannot get audio to the grandstream phone. This is the same case for a yealink phone. I can only get zoiper to work so far.


what could be causing this behavior ? there is a clear path of communication between everything just like the zoiper client's I have used.


Additionally in my sip implementation,
how important is the concept of a dialog ? currently, I just match messages by
Call-ID


and then choose what to send based on the method or response. is there any other underlying dialog functionality that I may need to implement ?


It would just be awesome to get someone who really knows what they are talking about eyes on some of my code to direct this large codebase in the right direction but I realize that a big ask lol.


-
ffmpeg adts streaming with ezstream for icecast
9 août 2017, par Roberto ArosemenaI’m trying to use ezstream to stream to an icecast server, my problem is while encoding the audio, I decode it from mp3 with madplay and I’m trying to encode it with ffmpeg so the output is aac, someone told me to use adts to be able to stream aac the problem is that the encoding doesn’t stream the audio, it shows the timer on the console but it goes from 0:00:00 to 0:00:40 to 0:01:30, etc until the song ends instead of going second by second, this is my config :
<ezstream>
<url>http://localhost:8100/t</url>
<sourcepassword>password</sourcepassword>
<format>MP3</format>
<filename>/home/vybroo/server/audio/play.m3u</filename>
<reencode>
<enable>1</enable>
<encdec>
<format>MP3</format>
<match>.mp3</match>
<decode>madplay -b 16 -R 44100 -S -o raw:- @T@</decode>
<encode>ffmpeg -f s16le -ar 44.1k -ac 2 -i - -b:a 32k -ar 44.1k -f adts -</encode>
</encdec>
</reencode>
</ezstream>is the enconding config wrong ?, what should i change so it streams second by second correctly