Tutorial Encodage des enregistrements TNT en DivX à ma façon

Re: Tutorial Encodage des enregistrements TNT en DivX à ma façon

Messagepar cricri » 11 Jan 2009 11:12

Pour moi un fichier de PS pour programme stream ne contient qu'une seule chaine, donc un seul flux video, et bien sûr autant de flux audio qu'il y a de langues disponibles.
- Modérateur des forums de TVNT.net -
cricri
Les retraités de la Brigade
Les retraités de la Brigade
 
Messages: 4955
Inscription: 28 Mar 2006 15:27

Re: Tutorial Encodage des enregistrements TNT en DivX à ma façon

Messagepar barbar » 11 Jan 2009 15:06

exact, excusez-moi je voulais parler d'un fichier MPEG-TS en Multiplex.
barbar
 

Re: Tutorial Encodage des enregistrements TNT en DivX à ma façon

Messagepar kmf31 » 11 Jan 2009 16:48

Peut-etre si le fichier initial est effectivement en TS on peut le faire avec vlc et les bonnes options en lignes de commandes, de la meme maniere comme on enregistre deux chaines du meme multiplexe dans deux fichiers. Par exemple avec une ligne de commande genre:
vlc --programs=1537,1538 --color --ttl 12 --ts-es-id-pid dvb:// --dvb-frequency=730167000 --dvb-adapter=0 --dvb-bandwidth=8 --intf dummy --sout='#duplicate{dst=std{mux=ts,dst=$1,access=file},
select="program=1537",dst=std{mux=ts,dst=$2,access=file},
select="program=1538"}'


Cet exemple est pour enregistrer (a Toulouse Bonhoure pour la frequence) TF1 dans le fichier $1 et NRJ12 dans le fichier $2.

Je suppose si on avait avant enregistre l'ensemble de ca dans un seul fichier TS on pourrait modifier cette commande par:
vlc fichier_input.ts --intf dummy --sout='#duplicate{dst=std{mux=ts,dst=$1,access=file},
select="program=1537",dst=std{mux=ts,dst=$2,access=file},
select="program=1538"}'

mais je n'ai pas teste ca et il faudrait que le fichier contient toujours toutes les infos apropos de pid, program etc. (mais je crois avec TS c'est justement le cas !).

Par contre il est effectivement meme possible d'enregistrer plusieures chaines d'un multiplexe en PS dans un seul fichier (aussi avec certaines options de vlc) au lieu de TS. Seulement si on a fait ca je crois on a perdu des informations importantes dans le fichier (pid, programs, sous-titres etc.) et la ligne de commande pour demuxer risque de ne pas marcher. Il est possible que ce soit foutu si on a effectivement un tel fichier PS.
Donc il est bien possible de mettre deux flux video dans un seul fichier PS (ca m'est deja arrive par accident) mais une fois c'est fait c'est vraiment un fichier assez sale et malfoutu (tres "hors norme" si on veut). De preference il faut rester en TS et c'est apres avec le traitement video (avidemux ou projectX+mplex) etc. ou il faut passer en PS pour pouvoir graver apres sur les DVDs (ou creer de divx).

De facon generale je conseille de bien faire attention d'enregistrer des le debut dans de fichiers separes par flux video (avec la 1ere ligne de commande ci-dessus). Ca simplifie beaucoup de choses.

Si on a deja cree un TS a deux flux video on peut (peut-etre) encore separer mais c'est encore de boulot et si c'est meme en PS ca me semble foutu.


Pour info je suis en Linux avec vlc-0.8.6i (en Linux vlc marche depuis tres longtemps avec dvb-t, la TNT) mais je pense avec vlc-0.9.x ca devrait aussi fonctionner et dans ce cas aussi en Windows (support dvb-t de vlc en Windows depuis vlc-0.9.0). La 2eme ligne de commande pourrait en Windows peut-etre aussi marcher avec vlc-0.8.6x car ici il n'y a plus besoin d'avoir le support dvb-t mais seulement du support encapsulation-TS etc. ce qui est assez standard et bien etabli.
Modérateur des forums TVNT.net
---
Réception TNT depuis les deux émetteurs de Toulouse Lafilaire et Pech David
kmf31
Brigades du Tigre
Brigades du Tigre
 
Messages: 6128
Inscription: 27 Juin 2005 15:12

Re: Tutorial Encodage des enregistrements TNT en DivX à ma façon

Messagepar barbar » 12 Jan 2009 19:32

merci pour votre réponse !

par contre je ne comprend pas tout :

- sous Windows, comment lancer VLC avec une ligne de commande (mettre la ligne de commande dans la cible du raccourci ou lancer VLC avec un invité de commande ?)

- pouvez-vous me faire un exemple plus explicite car je ne comprend où il faut que je mettes le nom de mon fichier TS.

- savez-vous comment faire le démultiplexage avec Project-X ?

Merci à vous. :D
barbar
 

Re: Tutorial Encodage des enregistrements TNT en DivX à ma façon

Messagepar kmf31 » 13 Jan 2009 16:08

1.) il faut ouvrir une fenetre "dos" (aussi appele "l'invite de commande"):
http://www.aidewindows.net/utilitaires. ... andesmsdos
et taper la dedans les commandes. (Pour Vista je ne suis pas sur si et comment ca marche. Pour XP ou Win98 etc. faire comme decrit dans ce lien.)

2.) dans ma 2eme ligne commande de commande il faut remplacer:

fichier_input.ts par le nom du fichier TS (le fichier input) (c'est quand meme evident ?)

$1 par le nom du 1er fichier qu'on souhaite creer (pour le 1er flux video)

$2 par le nom du 2eme fichier qu'on souhaite creer (pour le 2eme flux video)

Dans l'exemple les deux fichiers crees seraient aussi en TS mais en remplacant "mux=ts" par "mux=ps" (a deux endroits !) on peut aussi generer de PS si on le souhaite.


3.) J'ai deja utilise projectX pour le demuxage en ficher.m2v et fichier.mp2 (et/ou fichier.ac3 s'il y a de pistes ac3). En principe c'est assez simple: charger son fichier TS de demarrarer le traitement avec "Quick Start" ou similiaire (par defaut projectX fait de demuxage).
Cependant je n'ai pas encore teste avec de fichiers contenant deux flux m2v (seulement avec un flux m2v mais plusieures pistes audios mp2 et ac3). Ca ne coute pas grand chose de tester avec un fichier en deux flux m2v. Peut-etre ca marche ??
Si ca marche il faut remuxer apres. Moi, je le fait avec mplex (aussi en ligne de commande et pas tres simple) et surtout s'il y a plusieures pistes audio il faut bien identifier quelle piste audio appartient a quelle piste video. Peut-etre en Windows il y a aussi autres softs (graphiques) pour remuxer ?? Mplex devrait exister pour tout systeme (Linux, Mac et Windows).
Modérateur des forums TVNT.net
---
Réception TNT depuis les deux émetteurs de Toulouse Lafilaire et Pech David
kmf31
Brigades du Tigre
Brigades du Tigre
 
Messages: 6128
Inscription: 27 Juin 2005 15:12

Re: Tutorial Encodage des enregistrements TNT en DivX à ma façon

Messagepar barbar » 13 Jan 2009 21:28

merci pour vos précisions.

mais je n'arrive toujours pas à avoir mes fichiers.

J'ai enregistré la TNT en Multiplex sur le multiplex R1 (France 2, France 3, France 5, Arte, LCP et la chaîne local) :
donc ça me fait 6 vidéos et 6 audios.

ce que j'ai fait :
- j'ai lancé cette ligne de commande dans cmd à la racine de VLC : vlc TSR1.ts --intf dummy --sout='#duplicate{dst=std{mux=ts,dst=Fr2.ts,access=file},select="program=1537",dst=std{mux=ts,dst=Fr3.ts,access=file},select="program=1538"}'

TSR1.ts est mon fichier Multiplexé, Fr2.ts et Fr3.ts sont mes 2 fichiers de sortie.

voici le message d'erreur :
[00000397] dummy interface: VLC media player - version 0.9.8a Grishenko - (c) 1996-2008 the VideoLAN team
[00000397] dummy interface:
Warning: if you can't access the GUI anymore, open a command-line window, go to the directory where you installed VLC and run "vlc -I qt"

[00000397] dummy interface: using the dummy interface module...
[00000408] stream_out_standard stream out error: no access _and_ no muxer (fatal error)
[00000407] main stream output error: stream chain failed for `standard{mux="",access="",dst="'#duplicate{dst=std{mux=ts,dst=Fr2.ts,access=file},select=program=1
537,dts=std{mux=ts,dst=Fr3.ts,access=file},select=program=1538}'"}'
[00000406] main input error: cannot start stream output instance, aborting

le 1537 et le 1538 dans l'expression "select="program=...." correspondent à quoi (un PID ?) et si c'est important comment savoir ce qu'il faut mettre ?

je vous remercie pour votre suivi !
barbar
 

Re: Tutorial Encodage des enregistrements TNT en DivX à ma façon

Messagepar kmf31 » 14 Jan 2009 00:46

le 1537 et le 1538 dans l'expression "select="program=...." correspondent à quoi (un PID ?) et si c'est important comment savoir ce qu'il faut mettre ?


Ce sont les numeros de programs et en effet ca depend de la chaine. Ces deux numeros etaient pour l'exemple TF1 et NRJ12.

A mon avis pour les chaines que tu cherches il faut mettre:

France 2 => 257
France 3 => 282
France 5 => 260
Arte => 261
LCP => 262
la chaîne local => 368

J'ai trouve ces numeros dans le fichier channels.conf que j'utilise (en Linux) et je pense ils doivent etre universels pour toute la France pour ce meme Multiplexe (contrairement a la frequence qui depend de l'emetteur). Je peux aussi donner les numeros pour les autres chaines de la TNT (en supposant qu'ils soient vraiment universels).

En principe avec la commande que j'ai propose tu peux sortir deux flux mais tu peux en principe facilement multiplier le nombre de bloques de types:

dst=std{mux=ts,dst=fichier.ts,access=file},
select="program=XXX",

autant que tu veux pour sortir toutes les chaines si tu veux.

Bien sur je ne peux pas garantir que ca va bien marcher, je ne l'ai jamais teste de cette maniere et en plus en Windows et avec une autre version de vlc c'est peut-etre different et certainement delicat. Si ca ne marche pas essaie de jouer avec les guillemets (de mettre en plus ou d'enlever, ils servent a proteger certains elements du text par rapport a la "shell", au moins en Linux, et l'usage exacte est aussi un peu delicat).

Si ca commence a devenir tres tres specifique un probleme d'usage vlc il y a aussi ce forum:
http://forum.videolan.org/
(en anglais) ou on pourrait trouver de l'aide plus specialisee. Notamment il y a un sujet pour l'usage de vlc-0.9.x avec dvb (c.-a-d. la TNT) en Windows.


PS: Pour ARTE il y a en principe deux pistes audio (donc meme 7 audios pour ce multiplexe) mais theoriquement la commande devrait les garder dans le fichier ts pour ARTE.


Edit: Les commandes sont a mettre sur une seule ligne dans la fenetre dos mais ici dans le forum ca coupe artificiellement les lignes et en plus j'ai ete oblige de couper en plus (pour ne pas cacher de choses). Donc il ne faut pas faire un copier-coller simple car ca va recopier les coupures lignes. Le mieux est de mettre/assembler la commande dans un fichier ascii sur une seule ligne tres longue (avec un editor comme notepad, blocknotes etc.) et de faire un copier-coller de ca. On peut aussi essayer avec un fichier.bat qu'on pourra directement executer comme script (c'est de toute facon plus pratique). Simplement mettre la commande dans un fichier.bat et apres taper le nom de ce fichier comme commande et ca va executer la commande dans le fichier.
Modérateur des forums TVNT.net
---
Réception TNT depuis les deux émetteurs de Toulouse Lafilaire et Pech David
kmf31
Brigades du Tigre
Brigades du Tigre
 
Messages: 6128
Inscription: 27 Juin 2005 15:12