Pour extraire le .VOB du titre 2, chapitre 3
Notez que '-chapitre 3' et '-chapter 3-' copiera du chapitre 3 à la fin, et si le numéro de chapitre que vous spécifiez n'est pas valide, l'option est ignorée et copiera donc le titre complet.
# physical DVD
mplayer dvd://2 -chapter 3-3 -dumpstream -dumpfile ~/3.VOB
# DVD .iso image
mplayer dvd://2 -dvd-device "$dvd_iso" -chapter 3-3 -dumpstream -dumpfile ~/3.VOB
Vous pouvez utiliser lsdvd
pour répertorier le titre, le chapitre, la cellule, l'audio, la vidéo, etc. pour un DVD physique. Cependant, il ne semble pas (?) Avoir un moyen de traiter a .iso
. Vous pouvez monter un .iso , si besoin est.
# count Titles, and count Cells per title.
# eg. ${cell[1]} is the Count of Cells for the first title
# ${cell[titles]} is the Count of Cells for the last title
eval $(lsdvd | sed -n 's/Title: \([0-9]\+\), .* Chapters: \([0-9]\+\), Cells: .*/cells[$((10#\1))]=$((10#\2));/p')
titles=${#cells[@]}
title_num=2
from_cell=1
to_cell=${cell[title_num]}
dvdxchap
, d'autre part, peut traiter un .iso
, mais il ne répertorie pas les informations de titre. Vous pouvez cependant spécifier le titre à partir duquel vous souhaitez obtenir des informations sur le chapitre.
title_num=2
from_cell=1
# physical DVD
to_cell="$(dvdxchap -t $title_num /dev/dvd | sed -n 's/^CHAPTER\([0-9]\+\).*/\1/p' | sed -n '$p')"
# DVD .iso image
to_cell="$(dvdxchap -t $title_num "$dvd_iso"| sed -n 's/^CHAPTER\([0-9]\+\).*/\1/p' | sed -n '$p')"
Lorsque vous connaissez le numéro de titre souhaité et que vous connaissez le nombre de cellules, vous pouvez les vider en boucle:
# physical DVD
for ((c=$from_cell; c<$to_cell; c++)) ;do
mplayer dvd://$title_num -chapter $c-$c -dumpstream -dumpfile ~/$c.VOB
done
# DVD .iso image
for ((c=$from_cell; c<$to_cell; c++)) ;do
mplayer dvd://$title_num -dvd-device "$dvd_iso" -chapter $c-$c -dumpstream -dumpfile ~/$c.VOB
done
dvdxchap
fait partie duogmtools
package.En tant que script utilisant
lsdvd
Python etffmpeg
pour extraire les chapitres d'un DVD dans le répertoire courant (extract-chapters.sh
):Usage:
la source
lsdvd
Python, etffmpeg
parce que tous ceux-ci sont venus dans les référentiels OSS de la distribution; d' autres outils proviennent de référentiels tiers (par exempledvdbackup
,makemkv
, etc.).