6 votes

Comment automatiser complètement la conversion vidéo en format mp4, compatible avec iTunes?

Je cherche à mettre en place une solution entièrement automatisée qui récupérera des fichiers vidéo d'un répertoire entrant, les traitera et mettra le résultat dans le répertoire spécial "Automatically Add to iTunes" d'iTunes.

Avant de commencer à proposer différents produits, veuillez lire les exigences :

  • Interface en ligne de commande, pour pouvoir l'utiliser avec un cron
  • Faire passer à travers les flux vidéo et audio si la source est déjà compatible avec le format cible
  • Télécharger des sous-titres à partir d'un service externe (optionnel)
  • Intégrer des fichiers SRT existants dans la vidéo de sortie
  • Corriger les métadonnées à partir d'un service externe (optionnel)

Initialement, je dirais que Handbrake devrait être capable de le faire, mais j'ai découvert que handbrake ne fera jamais passer à travers la vidéo (c'est une déclaration que j'ai obtenue de l'auteur).

4voto

chillin Points 2767

z264

z264 examinera tous les fichiers, mais ne touchera que les fichiers vidéo avi, flv, mpg, mpeg, wmv, vob, mkv et mp4, en copiant les flux vidéo et audio et en les rembobinant si possible, transcendant uniquement l'audio si nécessaire, et transcendant seulement ce qui est nécessaire en matière de vidéo, pour vous laisser avec des fichiers mp4 conviviaux pour iTunes, optimisés pour les atomes, en laissant les originaux dans votre corbeille. Il prend des décisions raisonnablement intelligentes pour vous sur la manière de transcender les fichiers en fonction de la façon dont vous avez défini vos variables HandBrake (définies aux lignes 312-333).

vérifier les fichiers pour un encodage AVC et un conteneur flv, wmv ou mkv et les rebobiner dans un conteneur mp4, sinon, si ce n'est pas déjà un mp4, les transcoder en mp4 AVC

z264 a plusieurs dépendances (mediainfo, rmtrash, ffmpeg, SublerCLI et HandBrakeCLI)

  • copiez et collez la section d'installation binaire dans un nouveau script bash et utilisez-le pour télécharger et installer les dépendances dans /usr/local/bin/ (créez /usr/local et /usr/local/bin/ s'ils n'existent pas déjà)

  • créez un ramdisk de 2 Go appelé 'Two' en utilisant la commande dans la section ramdisk

    diskutil quiet erasevolume HFS+ 'Two' `hdiutil attach -nomount ram://4194304`
  • vérifiez les définitions de commande (emplacements des dépendances), et corrigez les emplacements (vers "/usr/local/bin/")

    changez la ligne 231 pour lire : mediainfo="/usr/local/bin/mediainfo"
    changez la ligne 236 pour lire : rmtrash="/usr/local/bin/rmtrash"
    changez la ligne 238 pour lire : ffmpeg="/usr/local/bin/ffmpeg"
    changez la ligne 239 pour lire : SublerCLI="/usr/local/bin/SublerCLI"
    changez la ligne 262 pour lire : mediainfo="/usr/local/bin/mediainfo"
    changez la ligne 263 pour lire : rmtrash="/usr/local/bin/rmtrash"
    changez la ligne 265 pour lire : HandBrakeCLI="/usr/local/bin/HandBrakeCLI"
  • enregistrez sous le nom de z264 dans /usr/local/bin/

  • rendez-le exécutable

    sudo chmod +x /usr/local/bin/z264

  • utilisez Terminal pour appeler z264 sur un seul fichier, un répertoire de fichiers, ou appelez-le depuis un cron pour parcourir périodiquement des systèmes de fichiers entiers

    z264 directory.full.of.mixed.video.filetypes/*

problèmes mineurs : l'utilisateur doit être capable de lire, déboguer et utiliser bash. z264 ne compte pas encore combien de processus background_transcoder il démarre, ce qui signifie que s'il y a beaucoup de transcodages, il faudra un certain temps pour qu'ils se terminent, mais ils se termineront. Vous avez également besoin de beaucoup de mémoire (8 Go c'est bien). Les utilisateurs de Snow Leopard devront installer la commande purge des outils de développement xcode.

3voto

swineone Points 2031

Actuellement j'utilise Subler pour convertir les MKVs en MP4s et intégrer les sous-titres dans le processus, sans transcodage ni vidéo ni audio. Si j'ai besoin de transcoder le DTS pour que l'Apple TV le lise, j'utilise MP4Tools. Cependant, ces deux outils sont des interfaces graphiques, et je ne sais pas s'ils peuvent être appelés en ligne de commande. Je pense que votre meilleure option serait d'utiliser MKVToolNix (si vous souhaitez simplement changer le format) et ffmpeg (qui inclut des options de transcodage lorsque nécessaire).

2voto

Rob Points 7080

Je utilise HandBrake comme suggéré dans la question ci-dessus si le téléchargement n'est pas disponible en format MP4. (Je pense que je ne peux pas nommer le service que j'utilise car le téléchargement n'est pas légal dans tous les pays, mais en cherchant le mot clé "YIFY" pourrait aider à trouver des rips en MP4) Ensuite, j'utilise Subler pour ajouter un fichier SRT sans avoir à convertir à nouveau le MP4.

Et ensuite, pour obtenir les méta-données et copier vers iTunes, j'utilise iFlicks qui peut être téléchargé depuis l'App Store.

2voto

Sergio del Amo Points 825

Je pense que vous trouverez vos réponses dans ces deux posts :

Donc, pour résumer :

ffmpeg -i .mkv -f srt -i .srt -c:v copy -c:a aac -b:a 384k -c:s mov_text -strict -2 .mp4

1voto

Khanzor Points 2048

Essayez dans le package ffmpeg. Il peut résoudre, sinon tous, la plupart des problèmes.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X