
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 (32)
-
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 ;
-
Ecrire une actualité
21 juin 2013, parPrésentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
Vous pouvez personnaliser le formulaire de création d’une actualité.
Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...) -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir
Sur d’autres sites (3622)
-
How to prevent screen tearing when updating stdin input to ffmpeg for youtube livestream
8 septembre 2021, par Cameron SimaI am working on a livestream application that allows multiple web clients to stream video through webrtc to a 'controller' client which will add their audio track, then be able to switch between these video feeds and output the raw stream data to a server running ffmpeg, which will then send the feed to youtube live.


The 'controller' client simply sets one peer video source as the 'active' stream on button press and all others as 'inactive'.


The data is then sent to a node.js server like so :


this.mediaSources.forEach((source, _) => {
 source.recorder.ondataavailable = (e: BlobEvent) => {
 if (source.active) {
 this.socket.emit('binarystream', e.data)
 }
 }



The node server starts an ffmepg process like so :


export class FfmpegService {
ffmpeg: ChildProcess
youtubeUrl = 'rtmp://a.rtmp.youtube.com/live2'

start(rtmpDestination: string) {
 this.ffmpeg = spawn('ffmpeg', this.getFfmpegOptions(rtmpDestination), 
 { shell: process.env.NODE_ENV !== 'production' }
 )
}

stop() {
 if (this.ffmpeg) {
 this.ffmpeg.stdin.end()
 this.ffmpeg.kill('SIGINT')
 this.ffmpeg = null
 }
}

feedStream(data: any) {
 this.ffmpeg.stdin.write(data)
}

private getFfmpegOptions(streamKey: string): string[] {
 const rtmpDestination = this.youtubeUrl + '/' + streamKey
 return [
 '-i','-',
 '-c:v', 'libx264', 
 '-preset', 'fast', '-tune', 'zerolatency', // video codec config: low latency, adaptive bitrate
 '-c:a', 'aac', '-ar', '44100', '-b:a', '64k', // audio codec config: sampling frequency (11025, 22050, 44100), bitrate 64 kbits
 '-y', //force to overwrite
 '-use_wallclock_as_timestamps', '1', // used for audio sync
 '-async', '1', // used for audio sync
 //'-filter_complex', 'aresample=44100', // resample audio to 44100Hz, needed if input is not 44100
 //'-strict', 'experimental', 
 '-bufsize', '300k',
 '-pix_fmt', 'yuv420p',
 '-f', 'flv', rtmpDestination
 ];
}



Everything works as expected in a youtube live session. The only problem is when switching between input streams, there is about 5 seconds of screen tearing before settling down. From all outward appearances, the switch happens immediately and seamlessly. I feel this can be attenuated/solved by tweaking the ffmpeg options but I'm pretty new to ffmpeg. I have tried increasing/decreasing -bufsize and -preset cli options, but nothing has worked so far.


-
How to convert 1080px mp4 video to 360p,480,720px,1080 like available in Youtube via ffmpeg
14 février 2016, par Deep dhaliwalThis is code.. I am in doubt about "-b" what about it. What about it ? Is it correct ? Please check and give improved version
ffmpeg -i 'input.mp4' -ab 192k -ar 44000 -r 24 -aspect 4:3 -b 899k -vcodec mpeg4 -s 640*360 'output.mp4'
-
Streaming to YouTube using FFmpeg Problems
12 septembre 2022, par jasonI am trying to stream to a live event I have created inside of YouTube. I am trying to stream a already created video. The command I am using is noted below.



The problem I have is that YouTube is showing the Streaming status as good (picture attached) and it seems to be receiving the data. But there is no sound and no picture in the live event. I'm not sure what the issue could be.



ffmpeg -re -y -i input.mp4 -vcodec libx264 -b:v 600k -r 25 -s 640x360 -filter:v yadif -ab 64k -ac 1 -ar 44100 -f flv "rtmp://a.rtmp.youtube.com/live2/KEY"




Image showing YouTube streaming status :






Console output :



ffmpeg version N-60321-g4d7d9a5 Copyright (c) 2000-2014 the FFmpeg developers
 built on Feb 2 2014 22:01:03 with gcc 4.8.2 (GCC)
 configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetyp
e --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --ena
ble-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-l
ibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libsp
eex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aa
cenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavp
ack --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
 libavutil 52. 63.100 / 52. 63.100
 libavcodec 55. 49.101 / 55. 49.101
 libavformat 55. 29.101 / 55. 29.101
 libavdevice 55. 7.100 / 55. 7.100
 libavfilter 4. 1.102 / 4. 1.102
 libswscale 2. 5.101 / 2. 5.101
 libswresample 0. 17.104 / 0. 17.104
 libpostproc 52. 3.100 / 52. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
 Metadata:
 major_brand : mp42
 minor_version : 0
 compatible_brands: isommp42
 creation_time : 2013-10-24 05:44:23
 Duration: 00:41:52.93, start: 0.000000, bitrate: 187 kb/s
 Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yu
v420p, 480x360, 89 kb/s, 15 fps, 15 tbr, 30 tbn, 30 tbc (default)
 Metadata:
 handler_name : VideoHandler
 Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 96
 kb/s (default)
 Metadata:
 creation_time : 2013-10-24 05:44:39
 handler_name : IsoMedia File Produced by Google, 5-11-2011
[libx264 @ 040fdc40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2
 FMA3 LZCNT BMI2
[libx264 @ 040fdc40] profile High, level 3.0
[libx264 @ 040fdc40] 264 - core 142 r2389 956c8d8 - H.264/MPEG-4 AVC codec - Cop
yleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deb
lock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 m
e_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chro
ma_qp_offset=-2 threads=12 lookahead_threads=2 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=75 keyint_min=38 scenec
ut=0 intra_refresh=0 rc_lookahead=40 rc=abr mbtree=1 bitrate=1200 ratetol=1.0 qc
omp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, flv, to 'rtmp://a.rtmp.youtube.com/live2/keyname':
 Metadata:
 major_brand : mp42
 minor_version : 0
 compatible_brands: isommp42
 encoder : Lavf55.29.101
 Stream #0:0(und): Video: h264 (libx264) ([7][0][0][0] / 0x0007), yuv420p, 85
4x480, q=-1--1, 1200 kb/s, 1k tbn, 25 tbc (default)
 Metadata:
 handler_name : VideoHandler
 Stream #0:1(und): Audio: mp3 (libmp3lame) ([2][0][0][0] / 0x0002), 44100 Hz,
 mono, fltp, 64 kb/s (default)
 Metadata:
 creation_time : 2013-10-24 05:44:39
 handler_name : IsoMedia File Produced by Google, 5-11-2011
Stream mapping:
 Stream #0:0 -> #0:0 (h264 -> libx264)
 Stream #0:1 -> #0:1 (aac -> libmp3lame)
Press [q] to stop, [?] for help
frame= 1 fps=0.0 q=0.0 size= 0kB time=00:00:00.39 bitrate= 9.2kbits/s
...
frame= 463 fps=7.8 q=0.0 size= 1534kB time=00:00:31.66 bitrate= 396.8kbits/s
[flv @ 040fd6e0] Failed to update header with correct duration.
[flv @ 040fd6e0] Failed to update header with correct filesize.
frame= 463 fps=6.8 q=-1.0 Lsize= 2055kB time=00:00:31.79 bitrate= 529.6kbits
/s
video:1778kB audio:249kB subtitle:0 data:0 global headers:0kB muxing overhead 1.
405947%
[libx264 @ 040fdc40] frame I:7 Avg QP: 2.24 size: 44703
[libx264 @ 040fdc40] frame P:153 Avg QP: 0.65 size: 8418
[libx264 @ 040fdc40] frame B:303 Avg QP: 5.74 size: 724
[libx264 @ 040fdc40] consecutive B-frames: 11.9% 2.6% 0.0% 85.5%
[libx264 @ 040fdc40] mb I I16..4: 66.0% 12.4% 21.6%
[libx264 @ 040fdc40] mb P I16..4: 4.7% 0.8% 1.5% P16..4: 6.6% 1.1% 1.1%
 0.0% 0.0% skip:84.2%
[libx264 @ 040fdc40] mb B I16..4: 0.2% 0.0% 0.1% B16..8: 3.0% 0.2% 0.1%
 direct: 0.6% skip:95.8% L0:47.7% L1:49.2% BI: 3.0%
[libx264 @ 040fdc40] final ratefactor: -9.42
[libx264 @ 040fdc40] 8x8 transform intra:11.8% inter:35.4%
[libx264 @ 040fdc40] coded y,uvDC,uvAC intra: 33.7% 11.2% 11.1% inter: 2.6% 1.6%
 1.6%
[libx264 @ 040fdc40] i16 v,h,dc,p: 13% 86% 0% 0%
[libx264 @ 040fdc40] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 9% 74% 11% 0% 1% 1% 1%
 1% 2%
[libx264 @ 040fdc40] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 17% 61% 6% 1% 3% 2% 4%
 2% 4%
[libx264 @ 040fdc40] i8c dc,h,v,p: 88% 10% 2% 0%
[libx264 @ 040fdc40] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 040fdc40] ref P L0: 81.7% 9.4% 8.0% 0.9%
[libx264 @ 040fdc40] ref B L0: 78.9% 20.9% 0.2%
[libx264 @ 040fdc40] ref B L1: 99.1% 0.9%
[libx264 @ 040fdc40] kb/s:471.59
Received signal 2: terminating.




Edit -



I have now tested the following codes but I still dotn get any picture or sound.. but the health status in youtube still shows good



I ran this command first



ffmpeg -i input.mp4 -vcodec libx264 -preset medium -maxrate 3000k -bufsize 6000k -vf "scale=1280:-1,format=yuv420p" -g 50 -acodec libmp3lame -b:a 128k -ac 2 -ar 44100 file.flv




and then I ran this



ffmpeg -re -i file.flv -codec copy -f flv rtmp://a.rtmp.youtube.com/live2/<key>
</key>



I still didnt get any picture



I also tried the full command in 1



ffmpeg -re -i input.mp4 -vcodec libx264 -preset veryfast -maxrate 3000k -bufsize 6000k -pix_fmt yuv420p -g 50 -c:a aac -b:a 160k -ac 2 -ar 44100 -f flv rtmp://a.rtmp.youtube.com/live2/<key> 
</key>



still no joy