Scripts Audio

Modérateur : Modérateurs

Avatar du membre
leon1789
Messages : 775
Enregistré le : dim. 26 août, 2007 14:09
Contact :

Message par leon1789 »

J'ai repris le code DownMix de Dirk-Pitt en
-1- renommant les variables (plus lisibles je trouve)
-2- réajustant les constantes de mixage (sorties aussi de AC3Filter, année 2007)
-3- corrigeant une baisse indésirée de 50% du volume final (sur les deux derniers MixAudio).

Code : Tout sélectionner

function DownMix( clip V )
{
  Assert( V.AudioChannels == 6, "This clip must have 6 audio WAV channels" )
  L = GetChannel( V, 1 )
  R = GetChannel( V, 2 )
  C = GetChannel( V, 3 )
  LFE = GetChannel( V, 4 )
  SL = GetChannel( V, 5 )
  SR = GetChannel( V, 6 )

  CLFE = MixAudio( C, LFE, 0.2071, 0.2071 )
  L = MixAudio( MixAudio( L, SL, 0.2929, 0.2929 ), CLFE, 1, 1 )
  R = MixAudio( MixAudio( R, SR, 0.2929, 0.2929 ), CLFE, 1, 1 )

  A = MergeChannels( L, R )
  Return( V.HasVideo ? AudioDub( V, A ) : A )
}
Modifié en dernier par leon1789 le jeu. 10 avr., 2008 23:45, modifié 1 fois.
Avatar du membre
Puppet
Modérateur
Modérateur
Messages : 5855
Enregistré le : sam. 03 févr., 2007 20:04
Localisation : Arcueil

Message par Puppet »

J'comprend vraiment rien moi !
Image
Avatar du membre
leon1789
Messages : 775
Enregistré le : dim. 26 août, 2007 14:09
Contact :

Message par leon1789 »

Tu ne comprends pas quoi ? :D

Moi, je ne comprends pas pourquoi les constantes de mixage de AC3Filter ont changées avec leur dernière version... étrange, non ?
Avatar du membre
pepsilite
The Grinch
The Grinch
Messages : 23287
Enregistré le : sam. 03 févr., 2007 19:13
Localisation : Chez moi le plus possible ...

Message par pepsilite »

bon, si tout le monde est ok, je l'intègre ...
06/01/2020 m4ng v6 est disponible au téléchargement en version finale : m4ng v6
Avatar du membre
pepsilite
The Grinch
The Grinch
Messages : 23287
Enregistré le : sam. 03 févr., 2007 19:13
Localisation : Chez moi le plus possible ...

Message par pepsilite »

leon1789 a écrit :Tu ne comprends pas quoi ? :D

Moi, je ne comprends pas pourquoi les constantes de mixage de AC3Filter ont changées avec leur dernière version... étrange, non ?
AC3filter, hem, il est tellement bien que j'utilise ffdshow pour décoder le AC3 moi :hop:
Ils ont du se rendre compte qu'il n'était pas au point (ce en quoi je suis à 1000% d'accord :hop:)
06/01/2020 m4ng v6 est disponible au téléchargement en version finale : m4ng v6
Avatar du membre
leon1789
Messages : 775
Enregistré le : dim. 26 août, 2007 14:09
Contact :

Message par leon1789 »

pepsilite a écrit :Ils ont du se rendre compte qu'il n'était pas au point (ce en quoi je suis à 1000% d'accord :hop:)
oui peut-être :o:
Avatar du membre
leon1789
Messages : 775
Enregistré le : dim. 26 août, 2007 14:09
Contact :

Message par leon1789 »

En comparant les matrices de AC3Filter et de Azid, j'ai aussi l'impression que AC3Filter n'est pas forcément la référence car lors d'une conversion 5.1 --> 4.0 (par exemple),
-- AC3Filter diffuse le canal LFE sur les quatres canaux de sortie L,R,SL,SR ;
-- Azid diffuse le canal LFE sur les deux canaux de sortie L,R.
Or, il est inutile (et peut-être même dangereux...) de diriger les basses sur les enceintes surround !
Donc, ben, AC3Filter, c'est pas top top...
Modifié en dernier par leon1789 le sam. 12 avr., 2008 10:16, modifié 1 fois.
Avatar du membre
pepsilite
The Grinch
The Grinch
Messages : 23287
Enregistré le : sam. 03 févr., 2007 19:13
Localisation : Chez moi le plus possible ...

Message par pepsilite »

CQFD...
06/01/2020 m4ng v6 est disponible au téléchargement en version finale : m4ng v6
Avatar du membre
leon1789
Messages : 775
Enregistré le : dim. 26 août, 2007 14:09
Contact :

Message par leon1789 »

leon1789 a écrit :J'ai repris le code DownMix de Dirk-Pitt (...)

Code : Tout sélectionner


  CLFE = MixAudio( C, LFE, 0.2071, 0.2071 )
  L = MixAudio( MixAudio( L, SL, 0.2929, 0.2929 ), CLFE, 1, 1 )
  R = MixAudio( MixAudio( R, SR, 0.2929, 0.2929 ), CLFE, 1, 1 )

  A = MergeChannels( L, R )
  Return( V.HasVideo ? AudioDub( V, A ) : A )
}
J'ai refait les calculs de "pression efficace" et je suis retombé pile sur ces coefficients !
L' = 0.2929*L + 0.2071*C + 0.2929*SL + 0.2071*LFE
R' = 0.2929*R + 0.2071*C + 0.2929*SR + 0.2071*LFE

C'est ok.
Avatar du membre
Underground78
Administrateur
Administrateur
Messages : 11272
Enregistré le : mar. 06 févr., 2007 21:54
Localisation : France
Contact :

Message par Underground78 »

Qui sont ceux de AC3Filter ? donc ils ne sont pas si illogiques que ça ...
Avatar du membre
leon1789
Messages : 775
Enregistré le : dim. 26 août, 2007 14:09
Contact :

Message par leon1789 »

Pour faire un downMix 5.1 --> 2.0, les coefficients utilisés dans le script de Dirk-Pitt étaient utilisés par AC3Filter. Mais en 2007, ceux de AC3Filter ont changé... Personnellement, je les trouve mieux maintenant qu'avant. C'est même la première matrice ici http://img387.imageshack.us/my.php?image=51av6.jpg
Là je parle des coefficients spécifiques aux downMix 5.1 --> 2.0

En revanche, les coefficients de AC3Filter concernant le downMix 5.1 --> 4.0 sont mauvais car ils envoient (en partie) le canal LFE (ou SW, ie. pour le caisson de basses) dans les enceintes surround. Alors d'une part c'est inutile (les enceintes surround ne sont pas faites pour ça, donc elles ne donneront rien), mais en plus c'est dangereux pour les enceintes (les enceintes surround ne sont pas faites pour ça, donc elles vont souffrir physiquement).
Par exemple, les coefficients de downMix 5.1 --> 4.0 d'azid ne font pas cette erreur... et les miens non plus ;) (voir l'avant-dernière matrice ici http://img387.imageshack.us/my.php?image=51av6.jpg) : le canal LFE est distribué sur les enceintes principales gauche/droite.
Avatar du membre
Underground78
Administrateur
Administrateur
Messages : 11272
Enregistré le : mar. 06 févr., 2007 21:54
Localisation : France
Contact :

Message par Underground78 »

Oki !
Répondre