
Recherche avancée
Médias (2)
-
Valkaama DVD Label
4 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Image
-
Podcasting Legal guide
16 mai 2011, par
Mis à jour : Mai 2011
Langue : English
Type : Texte
Autres articles (107)
-
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 (15532)
-
FFmpeg streaming stuck few minutes after start [closed]
19 février, par josue ramirezSorry for my english ! :D


I'm trying to make a live video stream from my webcam with ffmpeg using Node.


I get the images or frames from ffmpeg via pipe1 on the stdout event and send them via a socket-io client to my angular app to play the stream.


So far the stream starts fine and my angular app can play it fine, but after a certain time (8 minutes or so) ffmpeg stops sending data and the stream in my angular app stops and if I want to start the webcam again it's not possible anymore because it's apparently occupied by another process. I've been trying to figure out what's going on and what I've noticed is that the ffmpeg process just stops and the process is no longer visible with the
top
command (ubuntu), but the child process in node still shows a ffmpeg process as if it were a zombie process.

I've tried running ffmpeg from the terminal to save an mp4 file with the stream and in that case there is no problem, the recording doesn't stop even using pipe1. Only when I run ffmpeg from my Node app, the error occurs.


Does anyone have any idea what could be going on ?


This command is the one that is executed to send the data through pipe1 both from node and from the terminal but it only stops in Node


ffmpeg -f v4l2 -input_format mjpeg -video_size 800x600 -i /dev/video0 -q:v 4 -f image2pipe pipe1



The same thing happens when saving an mp4 video only in Node it fails


ffmpeg -f v4l2 -input_format mjpeg -video_size 800x600 -i /dev/video0 -q:v 4 video.mp4



This is my function that starts the streaming


export const startCamera = () => {
 logger.info('Starting camera ', cameraName);

 const inputFormat = process.platform === 'win32' ? 'dshow' : 'v4l2';

 const ffmpegArgs = [
 '-f', inputFormat, // Formato de entrada según la plataforma
 ];

 if (process.platform === 'linux') {
 ffmpegArgs.push(
 '-input_format', 'mjpeg', // Especificar el formato antes de video_size
 '-video_size', '800x600', // Tamaño de la imagen
 );
 }
 
 ffmpegArgs.push(
 '-i', cameraName, // Dispositivo de entrada
 '-vf', 'fps=15', // Fotogramas por segundo
 '-q:v', '10', // Calidad de video
 '-f', 'image2pipe', // Formato de salida
 'pipe:1' // Salida por stdout
 );

 try {
 logger.info('FFmpeg command: ffmpeg', ffmpegArgs.join(' '));
 ffmpeg = spawn('ffmpeg', ffmpegArgs);
 let cameraOpen = false;
 // Enviar los datos del fotograma a través del WebSocket
 ffmpeg.stdout.on('data', (chunk) => {
 logger.debug(`Sending chunk of ${chunk.length} bytes`);
 if (!cameraOpen) {
 cameraOpen = true;
 serialConnection.connect();
 logger.info('Camera started!!');
 }

 if (streamWS.isActive()) {
 streamWS.send(chunk);
 }
 });
 // Manejo de errores
 ffmpeg.stderr.on('error', (data) => {
 logger.error('FFmpeg Error:', data.toString());
 });

 ffmpeg.on('close', async () => {
 logger.info('Camera closed....', cameraName);
 if (!cameraOpen) {
 await commandWS.send(
 {
 command: COMMANDS.START_STREAM,
 isError: true,
 response: `Error al intentar iniciar la camara ${cameraName}, verificar que la camara se encuentre bien conectada.`,
 },
 COMMANDS_EVENTS.ROBOT_RESPONSE
 );
 }
 cameraOpen = false;
 await serialConnection.close();
 stopCamera();
 await streamWS.disconnectWS();
 });
 } catch (e) {
 logger.error('Error tryng to start the camera...', e);
 }
};



-
HTML5 video player some mp4 files not playing chrome
1er juillet 2020, par MarcSo I'm trying to build a personnal streaming platform and I've done my best to follow the recommandations I've found everywhere for better compatibility/quality when streaming.



So I'm systematically encoding my video to video codec h264 with mp4 container with ffmpeg using this command :



ffmpeg -i input -vcodec libx264 -maxrate 8000k -bufsize 1000K -minrate 10k -crf 24 -ab 192k -movflags faststart output.mp4




However, I occasionaly fall on some reluctant mp4 that will play fine on Edge and Firefox but won't on Chrome. Loading seems to be processed fine as I can see the total duration in the controls, but it will never play and will not leave any error in the console.



Here's a Mediainfo export of such reluctant file :



Format : MPEG-4
Format profile : Base Media
Codec ID : isom (isom/iso2/avc1/mp41)
File size : 1.04 GiB
Duration : 1 h 21 min
Overall bit rate : 1 832 kb/s
Writing application : Lavf57.56.101

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4
Format settings : CABAC / 4 Ref Frames
Format settings, CABAC : Yes
Format settings, Reference frames : 4 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 1 h 21 min
Bit rate : 1 634 kb/s
Width : 1 912 pixels
Height : 1 032 pixels
Display aspect ratio : 1.85:1
Frame rate mode : Constant
Frame rate : 24.000 FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.035
Stream size : 953 MiB (89%)
Writing library : x264 core 148 r2748 97eaef2
Encoding settings : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=9 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=24 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=24.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / vbv_maxrate=8000 / vbv_bufsize=1000 / crf_max=0.0 / nal_hrd=none / filler=0 / ip_ratio=1.40 / aq=1:1.00
Language : French
Menus : 3
Codec configuration box : avcC

Audio
ID : 2
Format : AAC LC
Format/Info : Advanced Audio Codec Low Complexity
Codec ID : mp4a-40-2
Duration : 1 h 21 min
Bit rate mode : Constant
Bit rate : 192 kb/s
Channel(s) : 6 channels
Channel layout : C L R Ls Rs LFE
Sampling rate : 48.0 kHz
Frame rate : 46.875 FPS (1024 SPF)
Compression mode : Lossy
Stream size : 112 MiB (11%)
Language : French
Default : Yes
Alternate group : 1
Menus : 3

Menu #1
ID : 3
Codec ID : text
Duration : 1 h 21 min
Language : English
Bit rate mode : CBR
Menu For : 1,2
00:00:00.000 : Chapitre 01
00:08:39.000 : Chapitre 02
00:15:10.000 : Chapitre 03
00:24:47.000 : Chapitre 04
00:33:39.000 : Chapitre 05
00:43:38.000 : Chapitre 06
00:50:51.000 : Chapitre 07
00:59:13.000 : Chapitre 08
01:08:01.000 : Chapitre 09
01:14:06.000 : Chapitre 10
Bit rate mode : Constant

Menu #2
00:00:00.000 : Chapitre 01
00:08:39.000 : Chapitre 02
00:15:10.000 : Chapitre 03
00:24:47.000 : Chapitre 04
00:33:39.000 : Chapitre 05
00:43:38.000 : Chapitre 06
00:50:51.000 : Chapitre 07
00:59:13.000 : Chapitre 08
01:08:01.000 : Chapitre 09
01:14:06.000 : Chapitre 10




Thanks in advance for any valuable tip you could provide


-
Live streaming .webm file with ffmpeg and nginx
9 décembre 2017, par seekaheadHi I am new to
ffmpeg
and I need some help with live streaming of.webm
file which is still being written into. I have a.webm
file containing only video in vp9 codecwhich needs to be live streamed (preferably without transcoding and streamed using
DASH`. I have compiled nginx along with nginx-ts-module from (https://github.com/arut/nginx-ts-module#features) with the following configurationnginx version: nginx/1.12.1
built by gcc 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
built with OpenSSL 1.0.1f 6 Jan 2014
TLS SNI support enabled
configure arguments: --with-cc-opt='-g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fPIC -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now -fPIC' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_addition_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_sub_module --with-stream=dynamic --with-stream_ssl_module --with-stream_ssl_preread_module --with-mail=dynamic --with-mail_ssl_module --add-dynamic-module=/home/ubuntu/NGINX/nginx-ts-module-masterThe mediafile has the following properties(obtained with mediainfo) :
General
Complete name : video_4_1_Admin_0.webm
Format : WebM
Format version : Version 2
File size : 19.7 MiB
Duration : 1ms
Overall bit rate : 165 Gbps
Writing library : libwebm-0.2.1.0
Video
ID : 1
Format : VP9
Codec ID : V_VP9
Width : 320 pixels
Height : 180 pixels
Display aspect ratio : 16:9
Frame rate mode : Variable
Language : English
Default : Yes
Forced : NoI am trying to stream the file with the following
ffmpeg -re -i video_4_1_Admin_0.webm -bsf:v vp9_superframe -c copy -f webm_chunk http://127.0.0.1:8000/publish/sintel
And I am getting the following error
Input #0, matroska,webm, from 'video_4_1_Admin_0.webm':
Metadata:
encoder : libwebm-0.2.1.0
Duration: 00:00:00.00, start: 0.000000, bitrate: 174444152 kb/s
Stream #0:0(eng): Video: vp9 (Profile 0), yuv420p(tv), 320x180, SAR 1:1 DAR 16:9, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)
Output #0, webm_chunk, to 'http://127.0.0.1:8000/publish/sintel':
Output file #0 does not contain any streamI am not sure what are the exact options to be passed to
ffmpeg
so that it creates the.mpd
and needed chunks which will allow me to LiveStream the media, I tried replacing the options given in the example (https://github.com/arut/nginx-ts-module#features) with what seems likevp9
equivalent., but, I am not sure. Can someone help me out here ? Thanks in advance