Debian Debian-France Debian-Facile Debian-fr.org Debian-fr.xyz Debian ? Communautés

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#451 01-09-2019 01:41:59

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : Linux 5.13.10
(G)UI : openbox
Inscription : 26-08-2010

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Slyfox a écrit :

Bravo à toi aussi enicar !


Merci. Il me semble que j'ai toujours ton script que je n'ai jamais utilisé. Ça vaudrait peut-être
le coup de voir ce qui fonctionne ou pas. À toi de me dire.

Hors ligne

#452 01-09-2019 01:47:56

Slyfox
Membre
Distrib. : Debian Sid
Noyau : Linux 5.10.0-6-amd64
(G)UI : Mate 1.24.1
Inscription : 15-12-2013

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

enicar a écrit :


Remarque que ce décalage entre le début de la piste vidéo et la piste son est quelque chose
d'assez courant, mais général ça ne pose pas de problème.



Quand j'avais fait ce script qui ressemble à ce que vous voulez faire, j'avais aussi eu des problèmes de décalage vidéo audio.

La solution que j'avais trouvé était des riper le titre du DVD en vob et de le convertir vidéo et audio simultanément

Pour extraire en vob voici la commande que j'utilisais:

mplayer -dvd-device "$pathDevice" -dumpstream dvdnav://$i -dumpfile "$cheminVideo-Titre-$i.vob" 2>&1



et pour convertir le vob en mkv (x264 et aac) je faisais cela avec une commande "classique" avec FFmpeg (en utilisant les map du fichier vob pour les diverses stream vidéo, audio, sous-titre).

Lien du (vieux) script: https://debian-facile.org/utilisateurs: … :dvd6clone

NB:
Vu que cela fait longtemps que je n'ai retouché à ce script, il presque certain qu'il y a quelques bug mais peut-être qui pourra vous aider... en fait c'est juste pour le partage d'astuce (sens aucune prétention). wink

Dernière modification par Slyfox (01-09-2019 01:57:46)

Hors ligne

#453 01-09-2019 01:51:47

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : Linux 5.13.10
(G)UI : openbox
Inscription : 26-08-2010

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Voilà la solution que je propose pour utiliser idet basée sur ce
que tu avais montré post #437 :


INTERLEAVED_FRAMES=$(ffmpeg -filter:v idet -frames:v 200 -an -f rawvideo \
             -y /dev/null -i "$FOLDER/$i-$TITLE.vob" 2>&1 | \
          awk '/(Single|Multi) frame detection/ {sum += $8+$10}
              END { print sum }'
)

if [[ "$INTERLEAVED_FRAMES" != 0 ]]; then
    DIF='-filter:v yadif=0:-1:0'
else
    DIF=
fi
 


Cette détectetion est à placer juste après la création du vob, et donc
avant les différents tests pour savoir dans quel cas on se trouve.
Pour utiliser la variable « DIF », il suffit de la placer
devant le -y des commandes ffmpeg, en utilisant


$DIF -y…
 


C'est tout.

J'ai mis 200 frames pour le test, ça peut être changé bien sûr.
Fais à ta guise.
Je pense que la solution qui me plaît le mieux et de faire faire tout
cela à yadif avec :


-filter:v yadif=mode=send_frame:parity=auto:deint=interlaced
 


que je t'avais déjà proposé.

Hors ligne

#454 01-09-2019 02:02:20

Slyfox
Membre
Distrib. : Debian Sid
Noyau : Linux 5.10.0-6-amd64
(G)UI : Mate 1.24.1
Inscription : 15-12-2013

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Slyfox a écrit :


Merci. Il me semble que j'ai toujours ton script que je n'ai jamais utilisé. Ça vaudrait peut-être
le coup de voir ce qui fonctionne ou pas. À toi de me dire.



Honnêtement oui cela vaudrait la peine, je vais voir si j'ai le temps de le faire... (mais quand ça je ne sais pas, je suis bien occupé ces temps) roll

Hors ligne

#455 01-09-2019 08:49:38

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

enicar a écrit :

@golgot200 donc le problème que tu as exposé post #429 était du à ce décalage entre
le son et la vidéo, c'est ça ?

Parce que là je ne comprends plus ce que tu cherches à faire https://debian-facile.org/img/smilies/x … chhead.gif

Remarque que ce décalage entre le début de la piste vidéo et la piste son est quelque chose
d'assez courant, mais en général ça ne pose pas de problème.



On ne peut pas dire, je pense, que c'est un décalage. ffmpeg analyse les bandes audios dans le fichier et en trouve une "sans audio"

https://trac.ffmpeg.org/ticket/386

Je retiens ça :


 il se peut qu'il n'y ait pas d'audio parce que le flux audio peut apparaître plus tard dans le fichier (votre testclip ne fait que ~1MB de long, l'audio peut commencer à 6MB).
 



Exemple : le dump


Playing dvd://09.
There are 38 titles on this DVD.
There are 1 angles in this DVD title.

libdvdread: Attempting to retrieve all CSS keys
libdvdread: This can take a _long_ time, please be patient

libdvdread: Get key for /VIDEO_TS/VIDEO_TS.VOB at 0x00000141
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_01_0.VOB at 0x000004d9
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_01_1.VOB at 0x00013dd3
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_02_0.VOB at 0x001ea49e
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_02_1.VOB at 0x001ea4dc
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_03_0.VOB at 0x002de1ac
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_03_1.VOB at 0x002de22b
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_04_0.VOB at 0x0032591c
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_04_1.VOB at 0x0032595b
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_05_0.VOB at 0x0032efbe
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_05_1.VOB at 0x0032efc3
libdvdread: Elapsed time 0
libdvdread: Found 5 VTS's
libdvdread: Elapsed time 0
audio stream: 0 format: ac3 (stereo) language: en aid: 128.
audio stream: 1 format: ac3 (stereo) language: fr aid: 129.
audio stream: 2 format: ac3 (stereo) language: it aid: 130.
audio stream: 3 format: ac3 (stereo) language: en aid: 131.
number of audio channels on disk: 4.
subtitle ( sid ): 0 language: en
subtitle ( sid ): 1 language: fr
subtitle ( sid ): 2 language: it
subtitle ( sid ): 3 language: fr
subtitle ( sid ): 4 language: it
subtitle ( sid ): 5 language: unknown
number of subtitles on disk: 6
dump: 55529472 bytes written
 



L'analyse :


[mpeg @ 0x55d1b3352380] max_analyze_duration 5000000 reached at 5000000 microseconds st:0
Input #0, mpeg, from '/home/patrick/Desktop/LADY_AND_THE_TRAMP2/9-LADY_AND_THE_TRAMP2.vob':
  Duration: 00:00:09.36, start: 0.287267, bitrate: 97554 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), 1 reference frame, yuv420p(tv, top first, left), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:1[0x20]: Subtitle: dvd_subtitle
    Stream #0:2[0x21]: Subtitle: dvd_subtitle
    Stream #0:3[0x22]: Subtitle: dvd_subtitle
    Stream #0:4[0x23]: Subtitle: dvd_subtitle
    Stream #0:5[0x24]: Subtitle: dvd_subtitle
    Stream #0:6[0x25]: Subtitle: dvd_subtitle
    Stream #0:7[0x80]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    Stream #0:8[0x81]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    Stream #0:9[0x82]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
Stream map 'i:0x83' matches no streams.
To ignore this, add a trailing '?' to the map.
[AVIOContext @ 0x55d1b335b300] Statistics: 3231888 bytes read, 2 seeks
 



Donc:


Stream map 'i:0x83' matches no streams.
 



Ce qui amène à :

Erreur : Le fichier « /home/patrick/Desktop/LADY_AND_THE_TRAMP2/9-LADY_AND_THE_TRAMP2.mkv » ne peut pas être ouvert en lecture : open file error.



logique.


Avec ffprobe sur le fichier :


ffprobe 9.vob
 




[mpeg @ 0x561aac1a4580] Could not find codec parameters for stream 10 (Audio: ac3, 0 channels): unspecified sample format
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mpeg, from '9.vob':
  Duration: 00:01:28.06, start: 0.287267, bitrate: 27412 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top first), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:1[0x20]: Subtitle: dvd_subtitle
    Stream #0:2[0x21]: Subtitle: dvd_subtitle
    Stream #0:3[0x22]: Subtitle: dvd_subtitle
    Stream #0:4[0x23]: Subtitle: dvd_subtitle
    Stream #0:5[0x24]: Subtitle: dvd_subtitle
    Stream #0:6[0x25]: Subtitle: dvd_subtitle
    Stream #0:7[0x80]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    Stream #0:8[0x81]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    Stream #0:9[0x82]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    Stream #0:10[0x83]: Audio: ac3, 0 channels

 




Tiens, mieux, sur un DVD " TELEPHONE Public, avec le groupe TELEPHONE", j'ai un reportage de 45 minutes avec aucune bande son. C'est pas beau ça ? Même Handbrake le signal big_smile
Regarde un peu pour ce titre :

Au dump on a une info sur l'audio:


audio stream: 0 format: ac3 (stereo) language: fr aid: 128.
number of audio channels on disk: 1.
number of subtitles on disk: 0
dump: 47464448 bytes written (~5.3%)
 



et l'analyse pas d'audio :


Input #0, mpeg, from '2.vob':
  Duration: 00:01:10.24, start: 0.367267, bitrate: 5554 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top first), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
[patrick@PC1 Desktop]$
 

Dernière modification par golgot200 (01-09-2019 11:07:44)

Hors ligne

#456 01-09-2019 09:02:06

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Slyfox a écrit :

enicar a écrit :


Remarque que ce décalage entre le début de la piste vidéo et la piste son est quelque chose
d'assez courant, mais général ça ne pose pas de problème.



Quand j'avais fait ce script qui ressemble à ce que vous voulez faire, j'avais aussi eu des problèmes de décalage vidéo audio.

La solution que j'avais trouvé était des riper le titre du DVD en vob et de le convertir vidéo et audio simultanément

Pour extraire en vob voici la commande que j'utilisais:

mplayer -dvd-device "$pathDevice" -dumpstream dvdnav://$i -dumpfile "$cheminVideo-Titre-$i.vob" 2>&1



et pour convertir le vob en mkv (x264 et aac) je faisais cela avec une commande "classique" avec FFmpeg (en utilisant les map du fichier vob pour les diverses stream vidéo, audio, sous-titre).

Lien du (vieux) script: https://debian-facile.org/utilisateurs: … :dvd6clone

NB:
Vu que cela fait longtemps que je n'ai retouché à ce script, il presque certain qu'il y a quelques bug mais peut-être qui pourra vous aider... en fait c'est juste pour le partage d'astuce (sens aucune prétention). wink



On rip bien le VOB entier dans ce script. Une fois le VOB en dur, on récupère les infos sur le DVD "lecteur" que l'on ré-injecte pour "taguer" les bandes audio.
Le décalage que tu parles, je pense, c'est le rip de la vidéo et ensuite d'éventuelle bandes audios que tu multiplexera ensuite. C'est bien cela ?

Hors ligne

#457 01-09-2019 09:14:19

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

@enicar

Ton post 453, je regarde ça après que je me sois occupé du "0 channels" et du "NO audio"
C'est plus perso, on n'y mettra pas dans ce travail.
La solution que tu proposes sur ton post 453 me plait bien. smile

Hors ligne

#458 01-09-2019 11:24:06

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Pour en revenir à ce channel 0, j'ai visionné ce vob qui a une durée de 1 minutes 30 s (il est complet, c'est une annonce de film).

Ce clip commence bien au compteur de temps à 0 seconde par une intro "sans son audible" pendant 5 secondes environ, et c'est là que c'est bizarre : le compteur se remet à zéro quand le film annonce débute avec le son sur ce même morceau.

Dernière modification par golgot200 (01-09-2019 11:27:06)

Hors ligne

#459 01-09-2019 12:15:12

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

@enicar

Post 453

Testé et ça fonctionne. smile

Dans le terminal on voit bien si yadif est utilisé ou pas.

( je n'ai pas testé -filter:v yadif=mode=send_frame:parity=auto:deint=interlaced )

Hors ligne

#460 02-09-2019 15:10:32

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Bonjour,

pour ce problème de channels 0, Slyfox, sans le vouloir, m'à mis un peu sur la voie.
Sur ce script en rip tout le vob sur l'ordi, puis en encode directement les streams audios dans celui-ci. Dans ces streams si on a le malheur de tomber sur un channel 0, et ben ça passe pas. J'ai essayé une fois le dump effectué, de démultipler l'audio de mon choix et de remultiplexer tout ça, et là ça passe. Je continue les tests, mais je pense que c'est ça .... et là ... ça me fait bien ch..... hmm

Dernière modification par golgot200 (02-09-2019 15:11:02)

Hors ligne

#461 02-09-2019 15:25:02

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : Linux 5.13.10
(G)UI : openbox
Inscription : 26-08-2010

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

golgot200 a écrit :

ça me fait bien ch.


C'est sûr, il va falloir refaire une bonne partie du script. Ceci dit c'est souvent
comme ça quand on commence à écrire un truc un peu gros. Et puis un projet
il faut souvent le ré-écrire.

Hors ligne

#462 02-09-2019 19:41:48

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Oui mais je crois qu'il sera plus simple en faite ( 80 lignes dans le script ) et j'arrive à sortir tout mes DVDs hors Bandes PCM

Ce satané Disney, c'est gagné. Les 14 titres sont présents et OK.


├── [267M]  12-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [186M]  15-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [180M]  18-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [1,3G]  1-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [330M]  21-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [ 37M]  24-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [ 32M]  27-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [ 23M]  30-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [ 38M]  33-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [ 28M]  36-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [ 30M]  37-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [ 30M]  38-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [4,7M]  3-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
├── [132M]  9-FINAL+CHAPTERS-LADY_AND_THE_TRAMP2.mkv
└── [5,0K]  AID2

 2.6G used in 0 directories, 15 files
 




Juste un truc aussi. Sur un ou deux titres:  4 bandes audios fr, de, it, en, déclaré mais une seule est audible big_smile

Dernière modification par golgot200 (02-09-2019 19:42:10)

Hors ligne

#463 05-09-2019 19:42:19

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

@enicar

bonsoir, j'ai réussi à régler le problème du Channel 0 sur certains DVD-Vidéo. Il faut donc en passer par l'extraction des streams audio. Mais maintenant, pour ne pas trop de donner de travail après pour dégribouiller tout ça, j'ai essayé les fonctions.
Mais là ....... je peine sur un truc.

La fonction qui va bien :


extract_all_audios_ac3 () {
    local output="$2"
    for n in $AIDS_AC3; do
        mplayer -endpos 120 -identify -dvd-device "$DEVICE" dvd://$i \
                 -ni -aid $n \
                 -dumpaudio -dumpfile "$FOLDER/$n-$TITLE.ac3"
    done            
           

}
 



Dans la partie du script principale j'ai :



    ## ENCODAGE
    ## GPU
    ## FILMS
    ## AC3 & DTS & MPEG1
    ## SOUS-TITRAGE(S) VF
    if [[ "$COUNT_LPCM" -eq "0" ]] && \
        [[ "$COUNT_AC3_DTS_MPEG1" -ge "1" ]] && \
        [[ "$COUNT_SID_FR" -ge "1" ]]
    then
        ffmpeg -hwaccel auto -c:v mpeg2_cuvid -i "$FOLDER/$i-$TITLE.vob" \
            -map 0:v -metadata title="$TITLE" \
            -c:v h264_nvenc -preset slow -profile:v high -level 4.2 \
            -loglevel repeat+verbose \
            -an -movflags +faststart -qmin 18 -qmax 23 \
AJOUT           $DIF -y "$FOLDER/$i-$TITLE.mkv"
QUI VA--> extract_all_audios_ac3 "$i" "$FOLDER/$n-$TITLE.ac3"
BIEN



------> Ici, je dois trouver "$FOLDER/$i-$TITLE.mkv" sans audio que je dois multiplexer avec les $n-$TITLE.ac3" qui ont bien été crée dans le dossier. Je précise aussi que $i-$TITLE.mkv" est bien présent dans le dossier. Et bien, il ne trouve pas ce mkv. J'ai cherché mais pas moyen :/




            rm -f "$FOLDER/$i-$TITLE.vob"


    ## ENCODAGE
    ## GPU
    ## CONCERTS LIVE
    ## LPCM (ON GARDE QUE LA PISTE LPCM)
    ## PAS DE SOUS-TITRAGE



La commande serait :


mkvmerge -o "$FOLDER/$i-MIX-$TITLE.mkv" "$FOLDER/$i-$TITLE.mkv" $FOLDER/*.ac3
 



Je dois pas passer à côté smile

Dernière modification par golgot200 (05-09-2019 19:50:23)

Hors ligne

#464 05-09-2019 20:02:43

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

EDIT : Attend, je pense que j'ai trouvé. Je vérifie .....
EDIT2 : c'est bon, ça fonctionne pour l'instant smile

Dernière modification par golgot200 (05-09-2019 21:11:50)

Hors ligne

#465 06-09-2019 00:19:19

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Une commande que je garde sous le coude pour encoder le LPCM ripper en WAV :


for n in $AID_LPCM; do mplayer -endpos 180 -benchmark -vc null -vo null -ao pcm:fast:file=$n-$TITLE.wav -identify -dvd-device "$DEVICE" dvd://$i -ni -aid $n
 

Hors ligne

#466 06-09-2019 00:22:50

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

@enicar

Quelle différence y a t'il entre:


$FOLDER/*.ac3
 



qui fonctionne dans le script et ça :


"$FOLDER/*.ac3"
 



qui ne fonctioone pas.

?

Hors ligne

#467 06-09-2019 06:06:21

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : Linux 5.13.10
(G)UI : openbox
Inscription : 26-08-2010

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

golgot200 a écrit :

@enicar

Quelle différence y a t'il entre:


$FOLDER/*.ac3
 



qui fonctionne dans le script et ça :


"$FOLDER/*.ac3"
 



qui ne fonctioone pas.

?


Entre les « " », l'expansion des motif du shell n'est pas fait. Donc ça ne peut pas
marcher. La bonne façon d'écrire est :


"$FOLDER"/*.ac3
 

Hors ligne

#468 06-09-2019 07:40:29

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : Linux 5.13.10
(G)UI : openbox
Inscription : 26-08-2010

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

golgot200 a écrit :

@enicar

bonsoir, j'ai réussi à régler le problème du Channel 0 sur certains DVD-Vidéo. Il faut donc en passer par l'extraction des streams audio. Mais maintenant, pour ne pas trop de donner de travail après pour dégribouiller tout ça, j'ai essayé les fonctions.
Mais là ....... je peine sur un truc.

La fonction qui va bien :


extract_all_audios_ac3 () {
    local output="$2"
    for n in $AIDS_AC3; do
        mplayer -endpos 120 -identify -dvd-device "$DEVICE" dvd://$i \
                 -ni -aid $n \
                 -dumpaudio -dumpfile "$FOLDER/$n-$TITLE.ac3"
    done


}
 



Dans la partie du script principale j'ai :



    ## ENCODAGE
    ## GPU
    ## FILMS
    ## AC3 & DTS & MPEG1
    ## SOUS-TITRAGE(S) VF
    if [[ "$COUNT_LPCM" -eq "0" ]] && \
        [[ "$COUNT_AC3_DTS_MPEG1" -ge "1" ]] && \
        [[ "$COUNT_SID_FR" -ge "1" ]]
    then
        ffmpeg -hwaccel auto -c:v mpeg2_cuvid -i "$FOLDER/$i-$TITLE.vob" \
            -map 0:v -metadata title="$TITLE" \
            -c:v h264_nvenc -preset slow -profile:v high -level 4.2 \
            -loglevel repeat+verbose \
            -an -movflags +faststart -qmin 18 -qmax 23 \
AJOUT           $DIF -y "$FOLDER/$i-$TITLE.mkv"
QUI VA--> extract_all_audios_ac3 "$i" "$FOLDER/$n-$TITLE.ac3"
BIEN



------> Ici, je dois trouver "$FOLDER/$i-$TITLE.mkv" sans audio que je dois multiplexer avec les $n-$TITLE.ac3" qui ont bien été crée dans le dossier. Je précise aussi que $i-$TITLE.mkv" est bien présent dans le dossier. Et bien, il ne trouve pas ce mkv. J'ai cherché mais pas moyen :/




            rm -f "$FOLDER/$i-$TITLE.vob"


    ## ENCODAGE
    ## GPU
    ## CONCERTS LIVE
    ## LPCM (ON GARDE QUE LA PISTE LPCM)
    ## PAS DE SOUS-TITRAGE



La commande serait :


mkvmerge -o "$FOLDER/$i-MIX-$TITLE.mkv" "$FOLDER/$i-$TITLE.mkv" $FOLDER/*.ac3
 



Je dois pas passer à côté smile



Je ne sais pas si ça fonctionne ou pas, cependant j'ai quelques suggestions.
Dans la fonction extract_all_audios_ac3 :


extract_all_audios_ac3 () {
    local output="$2"
    for n in $AIDS_AC3; do
        mplayer -endpos 120 -identify -dvd-device "$DEVICE" dvd://"$1" \
                 -ni -aid "$n" \
                 -dumpaudio -dumpfile "$output"
    done
}
 


J'ai juste utilisé la variable « output » et mis « $1 » à la place de
« $i ». C'est pour être consitant puisque quand tu l'appelles tu fais :


extract_all_audios_ac3 "$i" "$FOLDER/$n-$TITLE.ac3"
 


Aussi avant cette commande tu devrais insérer une ligne vide pour
qu'on y voit clair, la commande précédente étant écrite sur
plusieurs lignes.

Hors ligne

#469 06-09-2019 11:41:30

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Merci enicar smile

Dis moi, je trouve dommage sur un RIP/Encodage de DVD de concert d'effacer la bande audio PCM une fois le tout multiplexé. On pourrait la garder non ?
Je sais que beaucoup de personnes cherchent à extraire une bande audio de ce type.

Dernière modification par golgot200 (06-09-2019 11:42:05)

Hors ligne

#470 06-09-2019 11:45:56

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : Linux 5.13.10
(G)UI : openbox
Inscription : 26-08-2010

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

golgot200 a écrit :

On pourrait la garder non ?


Oui, on peut la garder pour la convertir en flac par exemple ou en opus qui
a très bon rapport qualité/poids.

Hors ligne

#471 06-09-2019 12:23:26

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

OK.

Mais le format, l'utilisateur fera ce qu'il voudra sur ce fichier wink

Là, en ce moment, j'ai la tête qui boue. big_smile ..... et j'en vois pas le bout out.gif

Dernière modification par golgot200 (06-09-2019 12:23:42)

Hors ligne

#472 06-09-2019 12:29:28

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : Linux 5.13.10
(G)UI : openbox
Inscription : 26-08-2010

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

golgot200 a écrit :

Mais le format, l'utilisateur fera ce qu'il voudra sur ce fichier


euh… je ne sais pas. Tu comptes la laisser en ac3 ? Dans quel type de conteneur ?

Dernière modification par enicar (06-09-2019 12:33:07)

Hors ligne

#473 06-09-2019 12:45:43

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Non non, ce n'est pas un fichier ac3.
c'est un fichier LPCM "pure" que j'ai dumper avec mplayer, si l'occasion se présente, avec l'option -ao pcm:fast et muxer au mkv sans audio.
Je veux quand c'est un dvd de concert avec un stream LPCM, le garder en priorité sans le triturer.

Dernière modification par golgot200 (06-09-2019 12:48:18)

Hors ligne

#474 06-09-2019 13:31:40

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

Bien tout fonctionne tongue

Juste une recherche à faire sur certains titres avec ffmpeg et ce message a rallonge sans incidence.


*** dropping frame 0 from stream 0 at ts -2
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
[mpeg2_cuvid @ 0x55b28be4a540] Formats: Original: cuda | HW: cuda | SW: nv12
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
 

Hors ligne

#475 07-09-2019 09:30:54

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.14.12-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : Script: FFMPEG : Ripper et Encoder ses DVD pour archivage (SUBFR,etc)

golgot200 a écrit :

Bien tout fonctionne tongue

Juste une recherche à faire sur certains titres avec ffmpeg et ce message a rallonge sans incidence.


*** dropping frame 0 from stream 0 at ts -2
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
[mpeg2_cuvid @ 0x55b28be4a540] Formats: Original: cuda | HW: cuda | SW: nv12
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
Past duration 0.999992 too large
 



https://video.stackexchange.com/questio … riable-fps

ffmpeg -hwaccel auto -c:v mpeg2_cuvid -i


Past duration 0.999992 too large
[mpeg2_cuvid @ 0x55b28be4a540] Formats: Original: cuda | HW: cuda | SW: nv12
Past duration 0.999992 too large



ajout de -r 25

ffmpeg -hwaccel auto -c:v mpeg2_cuvid -r 25 -i



[mpeg2_cuvid @ 0x55dadb3e5540] Formats: Original: cuda | HW: cuda | SW: nv12
[mpeg2_cuvid @ 0x55dadb3e5540] Formats: Original: cuda | HW: cuda | SW: nv12
[mpeg2_cuvid @ 0x55dadb3e5540] Formats: Original: cuda | HW: cuda | SW: nv12
[mpeg2_cuvid @ 0x55dadb3e5540] Formats: Original: cuda | HW: cuda | SW: nv12
 



EDIT:


J'ai peur quand mettant cet option, une désynchro se fasse. Je pourrais enlever -loglevel repeat+verbose" dans ma commande pour ne pas voir cette info qui est en couleur verte (sans incidence) ou bien ajouter l'option "-async 1 -vsync 1" qui évite la désynchro et en plus me supprime ce message pour m'amener à :

[mpeg2_cuvid @ 0x55dadb3e5540] Formats: Original: cuda | HW: cuda | SW: nv12
[mpeg2_cuvid @ 0x55dadb3e5540] Formats: Original: cuda | HW: cuda | SW: nv12
[mpeg2_cuvid @ 0x55dadb3e5540] Formats: Original: cuda | HW: cuda | SW: nv12
[mpeg2_cuvid @ 0x55dadb3e5540] Formats: Original: cuda | HW: cuda | SW: nv12
 



je vais choisir cette dernière option.

Dernière modification par golgot200 (07-09-2019 09:57:26)

Hors ligne

Pied de page des forums