Volume normalization after concatenation of audio clips Laboratorio di produzione prototipi e nuovi format di contenuti digitali Danilo Abbasciano danilo.abbasciano@gmail.com 2008 October 29 Volume normalization after concatenation of audio clips – p. 1/2
The problem of audio alignment Listening to etherogenic audio tracks usually produces differences in perceived volume level. Volume normalization after concatenation of audio clips – p. 2/2
The problem of audio alignment Listening to etherogenic audio tracks usually produces differences in perceived volume level. This differences can be very annoying, in fact, in addition to lose concentration, the listener has to continually change the volume manually. Volume normalization after concatenation of audio clips – p. 2/2
The problem of audio alignment Listening to etherogenic audio tracks usually produces differences in perceived volume level. This differences can be very annoying, in fact, in addition to lose concentration, the listener has to continually change the volume manually. The problem concerns all services that require a concatenation of audio/video clips (Simple Media Player, TV, ecc...) Volume normalization after concatenation of audio clips – p. 2/2
Goal To provide a solution for balances sound levels from multiple sources. Volume normalization after concatenation of audio clips – p. 3/2
Project description The project consists of: • a theoretical part where we studied the problem of audio alignment, signals and their scale, dynamics and the level of sound pressure. Volume normalization after concatenation of audio clips – p. 4/2
Project description The project consists of: • a theoretical part where we studied the problem of audio alignment, signals and their scale, dynamics and the level of sound pressure. • and practical part where the theory will be applied in establishing a program for manipulating audio signals. Volume normalization after concatenation of audio clips – p. 4/2
Definitions • Decibel ( dB ) is a logarithmic unit of measurement that expresses the magnitude of a physical quantity relative to a specified or implied reference level. Volume normalization after concatenation of audio clips – p. 5/2
Definitions • Decibel ( dB ) is a logarithmic unit of measurement that expresses the magnitude of a physical quantity relative to a specified or implied reference level. • Sound intensity ( W/m 2 ) ratio between the power of a wave sound and its surface that it is crossed. Volume normalization after concatenation of audio clips – p. 5/2
Definitions • Decibel ( dB ) is a logarithmic unit of measurement that expresses the magnitude of a physical quantity relative to a specified or implied reference level. • Sound intensity ( W/m 2 ) ratio between the power of a wave sound and its surface that it is crossed. • Sound intensity level ( dB ) is the intensity noise measured in I dB . L = 10 log 10 I 0 Volume normalization after concatenation of audio clips – p. 5/2
Definitions • Decibel ( dB ) is a logarithmic unit of measurement that expresses the magnitude of a physical quantity relative to a specified or implied reference level. • Sound intensity ( W/m 2 ) ratio between the power of a wave sound and its surface that it is crossed. • Sound intensity level ( dB ) is the intensity noise measured in I dB . L = 10 log 10 I 0 • Sound pressure ( Pa ) is the changing of the pressure as regards of a condition of peace Volume normalization after concatenation of audio clips – p. 5/2
Definitions • Decibel ( dB ) is a logarithmic unit of measurement that expresses the magnitude of a physical quantity relative to a specified or implied reference level. • Sound intensity ( W/m 2 ) ratio between the power of a wave sound and its surface that it is crossed. • Sound intensity level ( dB ) is the intensity noise measured in I dB . L = 10 log 10 I 0 • Sound pressure ( Pa ) is the changing of the pressure as regards of a condition of peace • Sound pressure level ( dB ) logarithmic measure of sound pressure relative to a reference value L p = 10 log 10 ( p/p 0 ) 2 Volume normalization after concatenation of audio clips – p. 5/2
Significant function for the volume of sound The first problem is to find a function that receives a sound as input and return a value that describes the level of sound pressure. Volume normalization after concatenation of audio clips – p. 6/2
Significant function for the volume of sound • peak–pressure Pressure peak pressure Time Volume normalization after concatenation of audio clips – p. 7/2
Significant function for the volume of sound • peak–pressure • peak–to–peak Pressure peak pressure Peak to peak Time Volume normalization after concatenation of audio clips – p. 7/2
Significant function for the volume of sound • peak–pressure • peak–to–peak • root mean square Pressure peak pressure Peak to peak RMS Time Volume normalization after concatenation of audio clips – p. 7/2
Root Mean Square (RMS) Data set: X = { x 1 , x 2 , ..., x n } the root mean square is: � n � � 1 � � x 2 X rms = i n i =1 Volume normalization after concatenation of audio clips – p. 8/2
Root Mean Square (RMS) Data set: X = { x 1 , x 2 , ..., x n } the root mean square is: � n � � 1 � � x 2 X rms = i n i =1 If we have a continuous function f in [ t 0 , t 1 ] the f rms is: � � t 1 1 [ f ( x )] 2 dx f rms = t 1 − t 0 t 0 Volume normalization after concatenation of audio clips – p. 8/2
Idea Volume normalization after concatenation of audio clips – p. 9/2
Idea Volume normalization after concatenation of audio clips – p. 9/2
Idea Volume normalization after concatenation of audio clips – p. 9/2
How much to change the volume? If v , the value of the amplification factor, M rms , the mean audio level desired output and M s , the mean given value of the audio stream then: M rms ⋍ vM s v ⋍ M rms M s Volume normalization after concatenation of audio clips – p. 10/2
Tools and standards For the project and its implementation we chose to use Open Source tools only. The main ones are: • Platform: GNU/Linux • Distribution: Fedora • Programming language: Python • Library: GStreamer • Editor: GNU Emacs • File format for audio samples: Ogg Vorbis Volume normalization after concatenation of audio clips – p. 11/2
Tools and standards For the project and its implementation we chose to use Open Source tools only. The main ones are: • Platform: GNU/Linux • Distribution: Fedora • Programming language: Python • Library: GStreamer • Editor: GNU Emacs • File format for audio samples: Ogg Vorbis • L T EX for this presentation A Volume normalization after concatenation of audio clips – p. 11/2
Tools and standards For the project and its implementation we chose to use Open Source tools only. The main ones are: • Platform: GNU/Linux • Distribution: Fedora • Programming language: Python • Library: GStreamer • Editor: GNU Emacs • File format for audio samples: Ogg Vorbis • L T EX for this presentation A • ...and many others. Volume normalization after concatenation of audio clips – p. 11/2
Portability The software developed with the Python language has an excellent portability. Volume normalization after concatenation of audio clips – p. 12/2
Portability The software developed with the Python language has an excellent portability. Python runs on many kind of platforms: UNIX like, MacOS X, Windows, AIX, AROS, AS/400, BeOS, iPod, OS/2, OS/390, z/OS, PlayStation, PSP , Psion, VxWorks, QNX, Acorn, Sparc Solaris, Windows CE, Pocket PC, VMS, MorphOS, Sharp Zaurus. Volume normalization after concatenation of audio clips – p. 12/2
Integration The code of the program leverages all the benefits of object–oriented programming. It consists of a library structured classes and a second executable script with a command line interface to test the capabilities of library. Volume normalization after concatenation of audio clips – p. 13/2
Integration The code of the program leverages all the benefits of object–oriented programming. It consists of a library structured classes and a second executable script with a command line interface to test the capabilities of library. Thanks to this structure is very simple to integrate this software in a larger project. Simply import the library and use its classes. Volume normalization after concatenation of audio clips – p. 13/2
Integration The code of the program leverages all the benefits of object–oriented programming. It consists of a library structured classes and a second executable script with a command line interface to test the capabilities of library. Thanks to this structure is very simple to integrate this software in a larger project. Simply import the library and use its classes. The interface uses the standard GStreamer object. Volume normalization after concatenation of audio clips – p. 13/2
GStreamer GStreamer is a library for creating streaming media applications. The framework is based on plugins that will provide the various codec and other functionality. The plugins can be linked and arranged in a pipeline. This pipeline defines the flow of the data. Plugin Plugin Plugin Plugin Src Sink Src Sink Src Sink Volume normalization after concatenation of audio clips – p. 14/2
Recommend
More recommend