
Recherche avancée
Autres articles (96)
-
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
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 (5982)
-
How do I send a mediaStream from the electron renderer process to a background ffmpeg process ?
26 juillet 2020, par Samamoma_VadakopaGoal (to avoid the XY problem) :


I'm building a small linux desktop application using webRTC, electron, and create-react-app. The application should receive a mediaStream via a webRTC peer connection, display the stream to the user, create a virtual webcam device, and send the stream to the virtual webcam so it can be selected as the input on most major videoconferencing platforms.


Problem :


The individual parts all work : receiving the stream (webRTC), creating the webcam device (v4l2loopback), creating a child process of ffmpeg from within electron, passing the video stream to the ffmpeg process, streaming the video to the virtual device using ffmpeg, and selecting the virtual device and seeing the video stream in a videoconference meeting.


But I'm currently stuck on tying the parts together.
The problem is, the mediaStream object is available inside electron's renderer process (as state in a deeply nested react component, FWIW). As far as I can tell, I can only create a node.js child process of ffmpeg from within electron's main process. That implies that I need to get the mediaStream from the renderer to the main process. To communicate between processes, electron uses an IPC system. Unfortunately, it seems that IPC doesn't support sending a complex object like a video stream.


What I've tried :


- 

-
starting ffmpeg child process (using child_process.spawn) from within renderer process throws 'fs.fileexistssync' error. Browsing SO indicates that only the main process can start these background processes.


-
creating separate webRTC connection between renderer and main to re-stream the video. I'm using IPC to facilitate the connection, but offer/answer descriptions aren't reaching the other peer over IPC - my guess is this is due to the same limitations on IPC as before.








My next step is to create a separate node server on app startup which ingests the incoming RTC stream and rebroadcasts it to the app's renderer process, as well as to a background ffmpeg process.


Before I try that, though, does anyone have suggestions for approaches I should consider ? (this is my first SO question, so any advice on how to improve it is appreciated).


-
-
Error Installing ffmpeg-binaries 4.0.0 in Heroku Build
30 juillet 2020, par Confused CyclonineI have been writing a Discord.js bot that uses the
ffmpeg-binaries 4.0.0
to play sounds in voice channels. I have been able to run my bot locally through the node.js terminal, but when I tried to deploy it using Heroku, I got this error :

Error: Cannot find module '/tmp/build_8393acf9_/node_modules/lzma-native/binding-v3.0.8-node-v64-linux-x64/lzma_native.node'
 at Function.Module._resolveFilename (internal/modules/cjs/loader.js:580:15)
 at Function.Module._load (internal/modules/cjs/loader.js:506:25)
 at Module.require (internal/modules/cjs/loader.js:636:17)
 at require (internal/modules/cjs/helpers.js:20:18)
 at /tmp/build_8393acf9_/node_modules/lzma-native/index.js:13:14
 at Object.<anonymous> (/tmp/build_8393acf9_/node_modules/lzma-native/index.js:597:3)
 at Module._compile (internal/modules/cjs/loader.js:688:30)
 at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
 at Module.load (internal/modules/cjs/loader.js:598:32)
 at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
 npm ERR! code ELIFECYCLE
 npm ERR! errno 1
 npm ERR! ffmpeg-binaries@4.0.0 install: `node install`
 npm ERR! Exit status 1
 npm ERR! 
 npm ERR! Failed at the ffmpeg-binaries@4.0.0 install script.
 npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
</anonymous>


I have tried to install and reinstall the ffmpeg-binaries but it doesn't seem to help.


Can someone please tell me how to fix this ? Thank you !


-
ffmpeg output separate channel from an input with multiple channels
16 février 2017, par tiras muturii run this command to be able to stream a udp live stream to a http live stream that is playable using a mobile application that am building.
its just a stream with audio streams only.ffmpeg -i udp ://@localhost:1111 -map 0:a http://localhost:8090/feed1.ffm
Input #0, mpegts, from 'udp://@localhost:1111':
Duration: N/A, start: 54616.264622, bitrate: 768 kb/s
Program 1
Metadata:
service_name : Service 1
service_provider: TLK
Stream #0:0[0x101]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 2
Metadata:
service_name : Service 2
service_provider: TLK
Stream #0:1[0x111]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 3
Metadata:
service_name : Service 3
service_provider: TLK
Stream #0:2[0x121]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 4
Metadata:
service_name : Service 4
service_provider: TLK
Stream #0:3[0x131]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 5
Metadata:
service_name : Service 5
service_provider: TLK
Stream #0:4[0x141]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 6
Metadata:
service_name : Service 6
service_provider: TLK
Stream #0:5[0x151]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 7
Metadata:
service_name : Service 7
service_provider: TLK
Stream #0:6[0x161]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 8
Metadata:
service_name : Service 1
service_provider: TLK
Stream #0:7[0x171]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/si get this output
Stream mapping:
Stream #0:0 -> #0:0 (mp2 (native) -> mp2 (native))
Stream #0:0 -> #0:1 (mp2 (native) -> mp2 (native))
Press [q] to stop, [?] for help
size= 100kB time=00:00:07.19 bitrate= 113.8kbits/s speed=3.01x
video:0kB audio:84kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 18.358242%i really want a way i can be able to map every input stream to have an output stream that can be accessed separately from the other like maybe if i need the first stream maybe i will just
ffplay http://localhost:8090/feed1.ffm
and if i need the 7th stream i will just
ffplay http://localhost:8090/feed7.ffm
Please can someone help me crack this issue. FFmpeg dont have complex examples for my current situation.
this is my header information
ubuntu@ip-localhost:~$ \
ffmpeg -i udp://@localhost:4000 \
-map 0:a:0 http://localhost:8090/feed1.ffm
-map 0:a:1 http://localhost:8090/feed2.ffm
-map 0:a:2 http://localhost:8090/feed3.ffm
-map 0:a:3 http://localhost:8090/feed4.ffm
-map 0:a:4 http://localhost:8090/feed5.ffm
-map 0:a:5 http://localhost:8090/feed6.ffm
-map 0:a:6 http://localhost:8090/feed7.ffm
-map 0:a:7 http://localhost:8090/feed8.ffmffmpeg version 3.2.4-1 16.04.york0 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 5.4.1 (Ubuntu 5.4.1-5ubuntu2 16.04.york1) 20170210
configuration : —prefix=/usr —extra-version=’1 16.04.york0’ — toolchain=hardened —libdir=/usr/lib/x86_64-linux-gnu —incdir=/usr/include/x86_64-linux-gnu —enable-gpl —disable-stripping —enable-avresample —enable-avisynth —enable-gnutls —enable-ladspa —enable-libass —enable-libbluray —enable-libbs2b —enable-libcaca —enable-libcdio —enable-libebur128 —enable-libflite —enable-libfontconfig —enable-libfreetype —enable-libfribidi —enable-libgme —enable-libgsm —enable-libmp3lame —enable-libopenjpeg —enable-libopenmpt —enable-libopus —enable-libpulse —enable-librubberband —enable-libshine —enable-libsnappy —enable-libsoxr —enable-libspeex —enable-libssh —enable-libtheora —enable-libtwolame —enable-libvorbis —enable-libvpx —enable-libwavpack —enable-libwebp —enable-libx265 —enable-libxvid —enable-libzmq —enable-libzvbi —enable-omx —enable-openal —enable-opengl —enable-sdl2 —enable-libdc1394 —enable-libiec61883 —enable-chromaprint —enable-frei0r —enable-libopencv —enable-libx264 —enable-shared
libavutil 55. 34.101 / 55. 34.101
libavcodec 57. 64.101 / 57. 64.101
libavformat 57. 56.101 / 57. 56.101
libavdevice 57. 1.100 / 57. 1.100
libavfilter 6. 65.100 / 6. 65.100
libavresample 3. 1. 0 / 3. 1. 0
libswscale 4. 2.100 / 4. 2.100
libswresample 2. 3.100 / 2. 3.100
libpostproc 54. 1.100 / 54. 1.100Input #0, mpegts, from 'udp://@localhost:1111':
Duration: N/A, start: 60047.944622, bitrate: 768 kb/s
Program 1
Metadata:
service_name : Service 1
service_provider: TKL
Stream #0:0[0x101]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 2
Metadata:
service_name : Service 2
service_provider: TKL
Stream #0:1[0x111]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 3
Metadata:
service_name : Service 3
service_provider: TKL
Stream #0:2[0x121]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 4
Metadata:
service_name : Service 4
service_provider: TKL
Stream #0:3[0x131]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 5
Metadata:
service_name : Service 5
service_provider: TKL
Stream #0:4[0x141]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 6
Metadata:
service_name : Service 6
service_provider: TKL
Stream #0:5[0x151]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 7
Metadata:
service_name : Service 7
service_provider: TKL
Stream #0:6[0x161]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Program 8
Metadata:
service_name : Service 8
service_provider: TKL
Stream #0:7[0x171]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 96 kb/s
Output #0, ffm, to 'http://localhost:8090/feed1.ffm':
Metadata:
creation_time : now
encoder : Lavf57.56.101
Stream #0:0: Audio: mp2, 44100 Hz, mono, s16, 32 kb/s
Metadata:
encoder : Lavc57.64.101 mp2
Stream #0:1: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s
Metadata:
encoder : Lavc57.64.101 mp2
Output #1, ffm, to 'http://localhost:8090/feed2.ffm':
Metadata:
creation_time : now
encoder : Lavf57.56.101
Stream #1:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s
Metadata:
encoder : Lavc57.64.101 mp2
Output #2, ffm, to 'http://localhost:8090/feed3.ffm':
Metadata:
creation_time : now
encoder : Lavf57.56.101
Stream #2:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s
Metadata:
encoder : Lavc57.64.101 mp2
Output #3, ffm, to 'http://localhost:8090/feed4.ffm':
Metadata:
creation_time : now
encoder : Lavf57.56.101
Stream #3:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s
Metadata:
encoder : Lavc57.64.101 mp2
Output #4, ffm, to 'http://localhost:8090/feed5.ffm':
Metadata:
creation_time : now
encoder : Lavf57.56.101
Stream #4:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s
Metadata:
encoder : Lavc57.64.101 mp2
Output #5, ffm, to 'http://localhost:8090/feed6.ffm':
Metadata:
creation_time : now
encoder : Lavf57.56.101
Stream #5:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s
Metadata:
encoder : Lavc57.64.101 mp2
Output #6, ffm, to 'http://localhost:8090/feed7.ffm':
Metadata:
creation_time : now
encoder : Lavf57.56.101
Stream #6:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s
Metadata:
encoder : Lavc57.64.101 mp2
Output #7, ffm, to 'http://localhost:8090/feed8.ffm':
Metadata:
creation_time : now
encoder : Lavf57.56.101
Stream #7:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s
Metadata:
encoder : Lavc57.64.101 mp2
Stream mapping:
Stream #0:0 -> #0:0 (mp2 (native) -> mp2 (native))
Stream #0:0 -> #0:1 (mp2 (native) -> mp2 (native))
Stream #0:0 -> #1:0 (mp2 (native) -> mp2 (native))
Stream #0:0 -> #2:0 (mp2 (native) -> mp2 (native))
Stream #0:0 -> #3:0 (mp2 (native) -> mp2 (native))
Stream #0:0 -> #4:0 (mp2 (native) -> mp2 (native))
Stream #0:0 -> #5:0 (mp2 (native) -> mp2 (native))
Stream #0:0 -> #6:0 (mp2 (native) -> mp2 (native))
Stream #0:0 -> #7:0 (mp2 (native) -> mp2 (native))
Press [q] to stop, [?] for helpthats my full console.