injecter un script avs dans m4ng

Les questions des débutants ...

Modérateur : Modérateurs

hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

injecter un script avs dans m4ng

Message par hipe_39 »

Bonjour,

je ne connais pas bien m4ng que je voudrais tester;
mon but est de poster sur YT ou DM des extraits capturés sur la tnt (.ts) ou éventuellement à partir de rattrapage type captvty. Je ne cherche pas à faire mieux que du 640 x 360 dans un but de réduction du poids de la vidéo et du temps d'encodage et d'upload

Je maitrise relativement bien la partie multicut sous script avs. Il y a également le resize inclus.

j'utilisais x264 avec un crf de 23 (assez proche du preset 'Video SD' 20 crf).

Y a-t-il un moyen d'introduire un fichier avs directement (drag&drop), pour ne plus s'occuper que du choix des codecs ?

Il me semble que le format web est sans doute le plus adapté mais je peine à m'y retrouver

Pourriez-vous m'aider à choisir le format le plus adapté pour youtube SD :
- quel container ? flv, mp4 ?
- pourquoi seul flaac est-il proposé en codec audio ? où se trouve le mp3
- audio 1 2 3 4 5 ??? des standards bien au débit bien trop élevé pour ce que je recherche (128 kbps largement suffisant)

A moins que l'on puisse se passer du réencodage de l'audio en reprenant celui de la source; mais est-ce possible ?

Pour la partie multicut, j'ai testé le module 'couper les pubs' mais j'ai un décalage son à la lecture, que je n'ai pas avec avspmod :
[lightbox]http://img15.hostingpics.net/thumbs/min ... vspmod.png[/lightbox]
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Salut,

Oui c'est possible de glisser un script avisynth dans m4ng...

Par contre, si tu as un décalage audio, c'est peut-être du à ton enregistrement TNT, c'est assez fréquent avec... Dans ce cas, l'utilisation du mode autonome de m4ng (encodeur interne de m4ng sur la v5) s'en sort souvent mieux...

Pour ce qui est du profil d'encodage, pour le web, je dirais x264 crf pour la vidéo et aac 64 ou 96 bits pour l'audio, dans un mp4... En revanche c'est étrange que tu ne puisses choisir le mp3 pour l'audio...
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

Merci de ta réponse Subbat,

Je n'ai pas été très précis; le décalage auquel j'ai fait face, n'était pas sur de la tnt mais sur .ts issu de captvity

Ok, je vais tester v5 pour comparer (à vrai dire, j'avais pensé que les efforts avaient été orienté vers le x265 qui ne me concerne pas; qui plus est v5 est encore une béta ...)
Pour ce qui est du profil d'encodage, pour le web, je dirais x264 crf pour la vidéo et aac 64 ou 96 bits pour l'audio, dans un mp4
Le paramètre conteneur par défaut est flv : j'ai pensé qu'en sélectionnant un format (web) tous les paramètres basculaient automatiquement sur les valeurs optimales ...
Donc , à qualité comparable, x264, même pour du SD, est plus performant que xvid (principalement car le tps d'encodage est celui d'1 seule passe).
Oui c'est possible de glisser un script avisynth dans m4ng...
si j'ai bien compris, ça démarre vdubmod, ce qui ne m'avance pas trop; autant démarrer vdub 1.10.14; je pensais à 1 script avs directement traité par le codec x264. De toute façon, j'ai 1 message d'erreur : pas de flux video :( (vdub, lui, le lit trés bien)
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

bah écoute, moi je n'ai pas de problème avec l'encodage d'un sccript avs dans m4ng... je charges mon script, je règle mes codecs vidéo et audio, puis le conteneur, et je lance... et j'ai bien ce que j'ai demandé à la fin...

Sache que de toute façon, en mode normal, m4ng génère lui-même un scritp avisynth pour faire l'encodage...

Si tu arrives à lire ton script avec graphstudio, alors il n'y a aucune raison que m4ng n'arrive pas à l'encoder...
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

Merci de ta réponse,

J'ai pas testé avec graphstudio; en revanche, en ouvrant directement vdubmod, l'avs est pris;
[lightbox]http://img11.hostingpics.net/thumbs/mini_513944vdub.jpg[/lightbox]

Mais bon, j'ai l'impression de très mal me faire comprendre; si l'avs est traité par virtualdubmod comme je crois le deviner, le format en sortie est obligatoirement de l'avi et donc si je demande à m4ng, un format de sortie tel que le mp4, calibré pour yt, je présage qu'il faudra un deuxième encodage ce qui doublera grosso modo, le tps d'encodage.

Pour aller au bout de mes arrières pensées, j'ai cru qu'il y avait un module d'injection directe, avs to x264, avs to xvid ... avec choix du container de sortie mp4/mkv.
L'idée du script contenant déjà tous les réglages, trim, crop, desentrelacement, resize, etc, directement traité par le codec sans l'intermédiaire d'aucun système de montage non-linéaire, (avec bien sûr du code) me semblait brillant

Vraiment désolé si je tombe complétement à côté
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Non Virtualdubmod n'est utilisé que si le codec vidéo est de l'xvid, divx... mais pas pour le x264... le script avisynth est alors directement envoyé au x264.exe...

Je ne comprend donc pas pourquoi m4ng n'accepte pas ton script en entrée... et c'est pourquoi je te demandais si tu pouvais nous en mettre ici une copie...

J'ai moi-même charger un script avisynth assez complexe dans m4ng... et j'ai bien eu ce que je demandais... un mkv avec du x264 et de l'aac... et Virtualdubmod n'est jamais intervenu...
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

Ok, ça s'éclaircit un peu,

Tout d'abord le script avs apparaissait complet ds le screenshot de mon 1er post :

Code : Tout sélectionner

Import("D:\PortableApps\AvsGen\templates\plugins\dss2trim.avsi")

## Source
v = dss2("Salut les Terriens.ts", fps=25)
a = DirectShowSource("Salut les Terriens.ts", video=False)
AudioDub(v,a)
#dss2trim("Salut les Terriens.ts")  # Trim de sécurité dss2
#trim(

vid=LanczosResize(last,640,360).ConvertToRGB32().fadein(20).fadeout(15)
logo=CoronaSequence("D:\vid\Vdublogo\anim\i*.bmp",sort=2).ConvertToRGB32.ColorKeyMask($4d4d4d,$000000).fadeio(10)
fixe=Imagesource("D:\vid\Vdublogo\anim\image0000.bmp",end=1200).convertfps(25).ConvertToRGB32
logo=logo+fixe
logo=ColorKeyMask(logo,$4d4d4d,$000000)
#logo=fadeout(logo,20)
logo=loop(logo)
# place the image into the upper right corner of the video
ovl=Layer(vid,logo,"add",131,370,0)

return ovl
Voici pourquoi, j'ai cru que vdubmod était sollicité : en glissant la 1ère fois mon avs ds m4ng, j'ai eu les messages de validation de licence de virtualdubmod que je n'avais jamais encore ouvert; le message d'erreur est survenu ensuite.

Curieux tout de même car je suppose que le choix de virtualdubmod ou de l'encodeur x264, se fait aprés validation par l'utilisateur. Bon peut-être y avait-il trace d'un test précédent avec xvid. Ça reste un détail.

Peut-être un pb de réglage de ffdshow, de splitter ou autre; c'est vrai que je ne suis pas très à l'aise avec l'outil codec tweak tool (je me suis juste assuré que les filtres microsoft sont désactivés au profit de ffdshow)
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Ok... et si tu glisses ce script dans m4ng il te dit quoi ?
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

message d'erreur : cette source ne contient pas de piste vidéo cf :
http://www.hostingpics.net/viewer.php?id=513944vdub.jpg
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Ta dll de directshowsource2 se trouve où ?

Peux-tu ouvrir graphstudio qui se trouve dans le dossier system de m4ng, et y glisser ton script... et poster l'image du graph... et une fois ce script chargé dans graphstudio, lance la lecture pour voir si le videorenderer de windows lit ton fichier...
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

Re-

mes dlls sont ds C:\Program Files (x86)\AviSynth 2.5\plugins

[lightbox]http://img15.hostingpics.net/thumbs/mini_194883Slt.png[/lightbox]

la lecture ds graphstudio se fait correctement
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Ok...

Alors charges ce script dans m4ng... va dans la prévisualisation, éventuellement tu fais une capture de ce qui sera écrit comme message d'erreur... puis tu cliques sur éditer le script...

Si dans le message d'erreur, il est fait référence à un ligne en particulier dis-nous ce que contient cette ligne...

Ensuite, tu remplaces le contenu du script m4ng pas ton script, tu enregistres, tu fermes le bloc note, et tu nous dis ce que donne la prévisualisation...

Espérant que je suis clair...
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

Grrr

Là en effet, c'est plus très clair : en fait, je patauge complètement;

En introduisant mon script ds m4ng, j'ai après une dizaine de secondes, ce fameux message d'erreur : "cette source ne contient pas de piste vidéo ..."

Dés l'instant ou je valide OK ce message d'erreur, tout devient grisé et vierge; la suite de tes instructions et notamment l'accès à la prévisualisation, n'a pour moi plus le moindre sens.
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Bon bah on va essayé autrement...

Tu charges n'importe quelle vidéo dans m4ng (pas un ts de préférence sinon dgavcdecode va se mettre en route... un avi serait bien...)...

Ensuite tu vas dans la prévisualisation (bouton TV), tu cliques sur script AVS puis "Editer et modifier le script"... tu remplaces tout le contenu du bloc note pas ton script puis enregistrer et fermer...

Et dis nous si la prévisualisation rend bien ton script...
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

Re-,

Ouf, j'y suis enfin parvenu. Il fallait absolument coller le chemin complet de la source puisque l'avi et l'avs ne sont pas ds le même répertoire.

Qui plus est, une fois le script Am4ng.avs modifié, le sauver n'est pas suffisant : si on ne referme pas la fenêtre on reste planté devant son écran à vainement attendre une réaction de m4ng

Donc finalement, oui, ça marche.

EDIT : curieusement en activant le bouton mpc-hc, le script n'est pas rendu. A ma connaissance mpc-hc sait traiter les scripts avs
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

J'avais bien noté, tu enregistres puis tu fermes...

Par contre, ça ne nous dis pas vraiment pourquoi quand tu charges directement ton avs dans m4ng ça plante...

Tu pourrais m'envoyer les dll que tu utilises pour ton script que j'essaie de reproduire un script identique...

Si j'ai bien vu tu as directshowsource2 et sans doute une autre pour le coronasequence... et peut-être encore d'autres...
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Je n'avais pas vu ton edit... Oui il le peut effectivement... mais je ne sais pas si son utilisation dans m4ng le permet...

MPC-HC dans m4ng est là pour ceux qui utilisent le mode autonome, parce que justement, ils ont un problème avec les directshow, etc... MPC est alors présent pour une prévisualisation de la source, et c'est ffmpeg qui encode sans passer par avisynth... Dans ton cas, je ne vois pas l'intérêt d'utiliser la prvisualisation par MPC-HC
Avatar du membre
Underground78
Administrateur
Administrateur
Messages : 11272
Enregistré le : mar. 06 févr., 2007 21:54
Localisation : France
Contact :

Message par Underground78 »

hipe_39 a écrit :EDIT : curieusement en activant le bouton mpc-hc, le script n'est pas rendu. A ma connaissance mpc-hc sait traiter les scripts avs
Essaie de désactiver la prise en charge des scripts AviSynth dans les options (Options > Filtres internes). Il est possible que tout ça soit un peu trop récursif pour que MPC-HC s'en sorte.
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

Bon,

dss2 isolé et sans dll de fioriture pose le même pb :

Code : Tout sélectionner

v = dss2("D:\vid\tracteur.mpg", fps=25)
a = DirectShowSource("D:\vid\tracteur.mpg", video=False)
AudioDub(v,a).ConvertToRGB32()
>> message d'erreur

dss2 = avss.dll http://cjoint.com/?DIbwn2Xp0iR
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Euh... je n'ai pas encore testé... mais je crois que je viens de comprendre grace à ce que tu as écris un peu plus haut...

Je n'avais pas remarqué que dans ton script, le chemin vers ta source n'était pas complet mais qu'il y avait uniquement le nom du .ts...

Le problème doit donc venir de là... Si tu mets le chemin complet derrière ton v=dss2 et derrière le a=directshowsource, je pense que tu pourras chargé ton script dans m4ng sans avoir à aller dans la prévisualisation pour éditer le scritp de m4ng...

A essayer donc... si ce n'est déjà fait...
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

hélas déjà testé : regarde mon dernier script, les chemins sont mentionnés :(
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Bah écoute, moi je viens de testé... le script se charge bien visiblement... mon problème à la prévisualisation c'est concernant corona... il me dit que je n'ai pas de fonction de ce nom... sans doute une dll que je n'ai pas ici...
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

Pas fameux tout ça.

En fait j'ai toujours la même erreur quelque soit le script :

Code : Tout sélectionner

AVISource("D:\vid\test 1.avi")
Avatar du membre
Subbat
Administrateur
Administrateur
Messages : 8836
Enregistré le : jeu. 11 déc., 2008 20:12
Localisation : Quelque part... dans le centre de la France...

Message par Subbat »

Moi si je drag&drop le script ci-après, m4ng l'accepte... et après télécharger la dll imagesequence... j'ai le rendu dans la preview...

Code : Tout sélectionner

## Source
v = dss2("Z:\Data_user\sebastien\Videos\TEST_montage\2010-07 - 0001.M2TS", fps=25)
a = DirectShowSource("Z:\Data_user\sebastien\Videos\TEST_montage\2010-07 - 0001.M2TS", video=False)
AudioDub(v,a)
#dss2trim("Salut les Terriens.ts")  # Trim de sécurité dss2
#trim(

vid=LanczosResize(last,640,360).ConvertToRGB32().fadein(20).fadeout(15)
logo=CoronaSequence("Z:\Data_user\sebastien\Images\Photo_titi\200*.JPG",sort=2).ConvertToRGB32.ColorKeyMask($4d4d4d,$000000).fadeio(10)
fixe=Imagesource("Z:\Data_user\sebastien\Images\Photo_titi\20091231 (16).JPG",end=1200).convertfps(25).ConvertToRGB32
logo=logo+fixe
logo=ColorKeyMask(logo,$4d4d4d,$000000)
#logo=fadeout(logo,20)
logo=loop(logo)
# place the image into the upper right corner of the video
ovl=Layer(vid,logo,"add",131,370,0)

return ovl	
hipe_39
Messages : 24
Enregistré le : lun. 25 févr., 2013 13:09

Message par hipe_39 »

Bon tout est dit, j'ai dû mal installer un truc ou mal paramétrer un codec via codec tweak tool

Peut-être même manque-t-il un élément de la suite m4ng :
j'ai pris juste le pack codec en plus ...

Vu que j'ai pas encore testé v5, autant que je reparte à 0 avec la beta; je ferai de nouveaux tests demain
Répondre