
Recherche avancée
Médias (91)
-
DJ Z-trip - Victory Lap : The Obama Mix Pt. 2
15 septembre 2011
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Matmos - Action at a Distance
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
DJ Dolores - Oslodum 2004 (includes (cc) sample of “Oslodum” by Gilberto Gil)
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Danger Mouse & Jemini - What U Sittin’ On ? (starring Cee Lo and Tha Alkaholiks)
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Cornelius - Wataridori 2
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
The Rapture - Sister Saviour (Blackstrobe Remix)
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (58)
-
MediaSPIP v0.2
21 juin 2013, parMediaSPIP 0.2 est la première version de MediaSPIP stable.
Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Comme pour la version précédente, 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 (...) -
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 (...) -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs
Sur d’autres sites (10110)
-
Normalizing audio in ffmpeg - how ?
11 novembre 2020, par Betty CrokkerI'm creating one of those "Brady Bunch" videos for a choir using a C# application I'm writing that uses ffmpeg for all the heavy lifting, and for the most part it's working great but I'm having trouble getting the audio levels just right.


What I'm doing right now, is first "normalizing" the audio from the individual singers like this :


- 

- Extract audio into a WAV file using ffmpeg
- Load the WAV file into my application using NAudio
- Find the maximum 16-bit value
- When I create the merged video, specify a volume for this stream that boosts the maximum value to 32767










So, for example, if I have 3 streams : stream A's maximum audio is 32767 already, stream B's maximum audio is 32000, and stream C's maximum audio is 16000, then when I merge these videos I will specify


[0:a]volume=1.0,aresample=async=1:first_pts=0[aud0]
[1:a]volume=1.02,aresample=async=1:first_pts=0[aud1]
[2:a]volume=2.05,aresample=async=1:first_pts=0[aud2]
[aud0][aud1][aud2]amix=inputs=3[a]



(I have an additional "volume tweak" that lets me adjust the volume level of individual singers as necessary, but we can ignore that for this question)


I am reading the ffmpeg wiki on Audio Volume Manipulation, and I will implement that next, but I don't know what to do with the output it generates. It looks like I'm going to get mean and max volume levels in dB and while I understand decibels in a "yeah, I learned about those in college 30 years ago" kind of way, I don't know how to use those values to normalize the audio of my input videos.


The problem is, in the ffmpeg output video, the audio level is quite low. If I do the same process of extracting the audio and looking at the WAV file in the merged video that ffmpeg generated, the maximum value is only 4904.


How do I implement an algorithm that automatically sets the output volume to a "reasonable" level ? I realize I can simply add a manual volume filter and have the human set the level, but that's going to be a lot of back & forth of generating the merged video, listening to it, adjusting the level, merging again, etc. I want a way where my application figures out an appropriate output volume (possibly with human adjustment allowed).


EDIT


Asking ffmpeg to determine the mean and max volume of each clip does provide mean and max volume in dB, and I can then use those values to scale each input clip :


[0:a]volume=3.40dB,aresample=async=1:first_pts=0[aud0]
[1:a]volume=3.90dB,aresample=async=1:first_pts=0[aud1]
[2:a]volume=4.40dB,aresample=async=1:first_pts=0[aud2]
[3:a]volume=-0.00dB,aresample=async=1:first_pts=0[aud3]



But my final video is still strangely quiet. For now, I've added a manually-entered volume factor that gets applied at the very end :


[aud0][aud1][aud2]amix=inputs=3[a]
[a]volume=volume=3.00[b]



So my question is, in effect, how do I determine algorithmically what this final volume factor needs to be ?


MORE EDIT


There's something deeper going on here, I just set the volume filter to 100 and the output is only slightly louder. Here are my filters, and the relevant portions of the command line :


color=size=1920x1080:c=0x0000FF [base];
[0:v] scale=576x324 [clip0];
[0:a]volume=1.48,aresample=async=1:first_pts=0[aud0];
[1:v] crop=808:1022:202:276,scale=384x486 [clip1];
[1:a]volume=1.57,aresample=async=1:first_pts=0[aud1];
[2:v] crop=1160:1010:428:70,scale=558x486 [clip2];
[2:a]volume=1.66,aresample=async=1:first_pts=0[aud2];
[3:v] crop=1326:1080:180:0,scale=576x469 [clip3];
[3:a]volume=1.70,aresample=async=1:first_pts=0[aud3];
[4:a]volume=0.20,aresample=async=1:first_pts=0[aud4];
[5:a]volume=0.73,aresample=async=1:first_pts=0[aud5];
[6:v] crop=1326:1080:276:0,scale=576x469 [clip4];
[6:a]volume=1.51,aresample=async=1:first_pts=0[aud6];
[base][clip0] overlay=shortest=1:x=32:y=158 [tmp0];
[tmp0][clip1] overlay=shortest=1:x=768:y=27 [tmp1];
[tmp1][clip2] overlay=shortest=1:x=1321:y=27 [tmp2];
[tmp2][clip3] overlay=shortest=1:x=32:y=625 [tmp3];
[tmp3][clip4] overlay=shortest=1:x=672:y=625 [tmp4];
[aud0][aud1][aud2][aud3][aud4][aud5][aud6]amix=inputs=7[a];
[a]adelay=delays=200:all=1[b];
[b]volume=volume=100.00[c];
[c]asplit[a1][a2];

ffmpeg -y ....
 -map "[tmp4]" -map "[a1]" -c:v libx264 "D:\voutput.mp4" 
 -map "[a2]" "D:\aoutput.mp3""



When I do this, the audio I want is louder (loud enough to clip and get distorted), but definitely not 100x louder.


-
Is it possible to adjust the timeout for ffmpeg on SDP ?
1er avril 2021, par user3474565I have
rtpdump
files that I would like to be able to convert towebm
ormp4
on demand and on the fly. To do this, I'm streaming their packets out extremely rapidly and havingffmpeg
read them in using an SDP file. The packets come through and are transcoded in a second or two, since the videos are fairly short. But then there is an additional 10-second wait afterward because theffmpeg
network timeout for SDP defaults to 10 seconds ; I'd like to reduce it. Unfortunately, the-timeout
and-stimeout
options don't seem to be available when I'm using-i
with an SDP file (I get-timeout option not found
).

I looked around online, and it seems that 6 or 7 years ago people were having similar issues and some people made pull requests into FFmpeg to add this as an option for RSTP and SDP. I know this went through for RSTP because it's in the documentation know ; did anything ever happen with SDP ? Is it possible for me to set this option, or maybe to terminate ffmpeg manually when I know the stream is done ?


-
RTSP to RTMP using FFMPEG on Raspberry Pi to YouTube Livestream ends prematurely (and sometimes doesn't start)
12 mars 2021, par user203875I have been running a program from my raspberry pi 4 that converts a RTSP network camera feed to RTMP for YouTube. The stream used to run non-stop every day. I didn't have to do anything. I have a program in place that would restart if the feed died.


Nothing has changed with that program in 2 years. About a month ago, the feed stopped working. I just started into trying to figure out why. Maybe someone has some ideas on what is going on ?


In order for me to start the feed, I must also start a studio.youtube.com browser session showing the feed information. If that web page is up and running, the live stream will start. While I can't say for certain that it NEVER starts without this session running, it seems that way.


Usually the stream lasts for an hour or two. Rarely more than four hours.


When I start up a studio.youtube.com session after the stream dies the "Dimiss" or "Edit in Studio" message is on the page. I have to hit "dismiss" before I can start up the stream again.


Is there a solution to this ?


Again, my program didn't change, so I'm at a loss for what I can do to fix this.