Puis-je contrôler l'ordre de traitement des tâches liées

J’ai récemment modifié ma configuration et j’ai tout divisé/combiné en 3 tâches. J’ai la tâche 1 liée au profil HVEC MP4 qui s’occupe des découpes/conversions mais ne gère pas le renommage/métadonnées.

La tâche 1 dépose le résultat dans un autre dossier où j’ai une tâche qui surveille les séries TV et une autre qui surveille les films. Ces deux tâches font un renommage personnalisé et la recherche de métadonnées, sans conversion.

Pour simplifier la question, disons que la tâche 1 traite d’abord le fichier puis la tâche 2 le récupère pour finaliser le traitement.
J’ai configuré la tâche 2 pour insérer en haut de la liste, mais quand je dépose plusieurs éléments, j’aimerais qu’ils soient traités comme :
Tâche 1
Tâche 2
Tâche 1
Tâche 2, etc.

Au lieu de cela, comme tous les éléments sont récupérés au départ, ça donne :
Tâche 1 - Fichier 1
Tâche 1 - Fichier 2
Tâche 2 - Fichier 1
Tâche 1 - Fichier 3
Tâche 2 - Fichier 2

J’essaie de trouver un moyen d’introduire un délai avant que la tâche 1 ne commence pour donner à la tâche 2 une chance de voir le fichier inséré en haut.
J’espère que c’est clair, mais le but est de ne pas attendre que le fichier 2 termine sa longue conversion avant que le fichier 1 ne soit terminé.
Je me suis dit que si je pouvais introduire une sorte de délai après chaque tâche, ça donnerait le temps au scan de détecter le nouveau fichier, mais la seule chose à laquelle j’ai pensé était un délai dans la tâche de post-traitement, mais ça ne semble pas fonctionner.

Vous pouvez simplement intégrer l’action Task1 (transcodage) dans les deux tâches de renommage. C’est ce que je fais.

J’ai des tâches séparées pour les Films, les Séries, le Sport et les Spéciaux (les 4 types que MCEBuddy peut détecter), chacune avec des dossiers de renommage/de destination différents.

Astuce : cochez Spéciaux, car les émissions ne correspondant ni à un film ni à une série y seront classées. Il s’agit généralement de cas où les données du guide sont vagues ou se limitent au titre de l’émission. Certains sous-canaux qui diffusent d’anciennes rediffusions font cela, ainsi que les émissions PBS qui ne figurent habituellement ni dans TheTVDB ni dans MovieDB.

Assurez-vous qu’une seule tâche puisse s’exécuter pour le fichier d’entrée.

En plus de la sélection par type, j’ai des filtres par chaîne pour les sources de chaînes SD et HD, qui ont des valeurs de compression/qualité différentes.

J’ai débattu de cette question, mais j’ai séparé les actions de renommage (avec un dossier d’entrée différent) afin de pouvoir y déposer occasionnellement des fichiers directement : ils seront uniquement renommés et non retranscodés.
Je pourrais garder une copie séparée, mais il faudrait alors synchroniser deux paires. Donc deux tâches pour la TV (l’une avec transcodage) qui nécessitent les mêmes filtres de sélection et les mêmes règles de correction de métadonnées.
J’ai aussi des déclencheurs de post-traitement à maintenir à plusieurs endroits à la prochaine mise à jour, car ils ne sont pas conservés. Dans mon cas, le post-traitement comprend un renommage personnalisé avec des données disponibles pour le post-traitement, mais pas pour les règles de nommage.

Je ne pense pas qu’il existe un moyen de faire ce que vous voulez avec votre configuration. Les observateurs de répertoires s’exécutent en parallèle et se contentent d’ajouter des tâches aux files d’attente pour chaque tâche d’action. Les tâches s’exécutent également toutes en parallèle, au sens où une tâche n’a aucune information sur une autre. La seule façon de « chaîner » les choses est donc exactement celle que vous avez utilisée : un observateur sur Dossier1 déclenche Tâche1 et un observateur sur Dossier2 déclenche Tâche2, et la dernière chose que fait Tâche1 est de déposer le fichier dans Dossier2.

Soit vous ne déposez qu’un seul fichier à la fois dans le dossier de départ et vous bloquez tout nouveau dépôt jusqu’à ce que le fichier ait terminé d’être traité par la tâche finale, soit vous créez des dossiers séparés pour chaque « flux » avec des observateurs et des tâches dupliqués pour chacun. Cela semble être un vrai casse-tête à gérer. Ma suggestion est donc d’utilis un « planificateur » de traitement par lots qui surveille votre vrai dossier de dépôt des médias, ne déplace les fichiers qu’un par un dans le dossier de démarrage de MCE, et bloque jusqu’à ce que le fichier soit traité par les tâches. Cela devient délicat s’il y a jamais une défaillance dans les tâches et qu’il faut 1) détecter l’échec à n’importe quelle étape du traitement, et 2) déterminer le processus de récupération et de redémarrage pour ce fichier.

MCE Buddy n’est tout simplement pas conçu pour un flux de travail linéaire unique – surtout avec des CPU et GPU multi-cœurs et plusieurs moteurs MCE Buddy. Ce flux linéaire devra donc être régulé et géré par vous en dehors de MCE Buddy, je pense. C’est tout à fait faisable avec des fichiers marqueurs pour permettre à votre planificateur de « savoir » où en est un fichier et quel est l’état de MCE Buddy en surveillant les mêmes dossiers que MCE Buddy et en ajoutant des fichiers marqueurs en post-traitement pour informer votre planificateur externe de leur état.

C’est peut-être quelque chose que vous pouvez confier à un programmeur freelance ou à un étudiant en informatique comme projet. Peut-être quelque chose pour un lycéen ou un étudiant qui pense comme un ingénieur et comprend les machines à états. Essentiellement, vous utilisez des fichiers vides (ils existent ou non) comme marqueurs pour indiquer et sauvegarder l’état, en utilisant le système de fichiers comme « mémoire » de votre machine à états. C’est probablement au-delà d’un lycéen typique en cours « d’informatique et/ou programmation », mais on ne sait jamais tant qu’on ne demande pas autour de soi. Pour un programmeur freelance, il existe des sites de « gigs » qui mettent en relation programmeurs et personnes ayant besoin d’automatiser quelque chose.