Possible de le faire maintenant ? Supprimer le texte EIA_608 du fichier

Je fais tourner MCEBuddy depuis un moment, ça marche super. Je l’utilise pour traiter tous mes enregistrements Plex DVR, en extraire les sous-titres codés et les remuxer dans un fichier MKV final. Ça a parfaitement fonctionné pendant des années. CEPENDANT, la dernière version de Plex prend désormais en charge les sous-titres EIA_608, et ils apparaissent comme sous-titres « Inconnus » sur tous mes enregistrements, car je NE réencode PAS la vidéo, je fais juste un remux. Donc maintenant les sous-titres EIA : A) ont l’air horrible, mais B) empêchent le fichier srt d’être sélectionné et lu automatiquement comme c’était le cas avant. Puisque j’ai des personnes malentendantes à la maison, avoir les sous-titres toujours activés automatiquement est indispensable. Sans parler du fait que l’affichage des sous-titres EIA est exécrable comparé aux jolis sous-titres srt.

Après quelques recherches, j’ai découvert qu’ffmpeg PEUT retirer le texte EIA_608 du fichier ts (ou mkv)… avec cette commande :
ffmpeg -i input.mkv -codec copy -bsf:v “filter_units=remove_types=6” output.mkv

Je l’ai testée, elle fait exactement ce qu’il faut. Voici donc la demande de fonctionnalité, ou la question : y a-t-il un moyen de le faire maintenant ?

Donnez-moi l’option d’exécuter cette commande ffmpeg APRÈS que vous ayez extrait les sous-titres dans un fichier srt, PUIS remuxer en mkv et réintégrer les sous-titres.

Possible maintenant ?

Prévu bientôt ?

Merci d’avance pour votre aide.

Eh bien, j’ai répondu à ma propre question. Avec un peu de bidouillage, j’ai fini par écrire un fichier bat qui fait cela en post-traitement.
Cela prend simplement le fichier mkv produit par MCEbuddy et le passe à nouveau par ffmpeg pour supprimer les sous-titres EIA_608 avant que Plex ne les voie. La vie est belle à nouveau.

Si quelqu’un veut une copie de mon script, faites-le moi savoir et je vous l’enverrai.

N’hésitez pas à publier le fichier ici (vous pouvez utiliser des crochets de code)

Avez-vous envisagé d’inclure votre paramètre -bsf:v "filter_units=remove_types=6" dans le profil ? Ne serait-ce pas plus simple ?

On dirait que oui, mais dans mes tests, retirer les sous-titres EIA lors de la conversion d’un fichier TS vers mkv n’a pas fonctionné, alors que cela a parfaitement marché en passant de mkv à mkv. Il existe peut-être un moyen de le faire dès la conversion initiale, mais je savais comment procéder ainsi et je ne voulais pas y passer plus de temps.

Voici le code pertinent pour quiconque veut se débarrasser de ces ennuyeux sous-titres EIA_608, en attendant que Plex et CCextractor se mettent d’accord :

Ajoutez ceci à votre profile.conf utilisé pour traiter les fichiers :

CustomCommandPath=C:\Windows\System32\cmd.exe
CustomCommandParameters="/c C:\ccextractor\RemoveSubs\RemoveSubs.bat \"%convertedfile%\" \"%srtfile%\" "
CustomCommandHangPeriod=100
CustomCommandCritical=true
CustomCommandUISession=false
CustomCommandShowWindow=false

et voici mon script (ajustez les chemins selon vos besoins) ; je supprime aussi le fichier .srt puisqu’il a été fusionné dans mon fichier mkv (selon mes paramètres) :

@echo off

For %%A in (%1) do (
    Set Folder=%%~dpA
    Set InputFileName=%%~nA
)

del /q %2

IF %ERRORLEVEL% EQU 0 (
 ECHO Delete Of SRT File %2 Successfull
)

C:\Progra~1\MCEBuddy2x\ffmpeg\ffmpeg.exe -i %1 -codec copy -bsf:v "filter_units=remove_types=6" G:\BuddyTemp\working0\NoSubsOutput.mkv

IF %ERRORLEVEL% EQU 0 (GOTO :SUCCESS) ELSE (GOTO :FAIL)

:SUCCESS
 ECHO Removal Of EIA_608 Subs From %1 Was Successfull

del /q %1
IF %ERRORLEVEL% EQU 0 (
 ECHO Delete Of Original MKV Successfull
)
ECHO %InputFileName%

ren "G:\BuddyTemp\working0\NoSubsOutput.mkv" "%InputFileName%.mkv"

IF %ERRORLEVEL% EQU 0 (
 ECHO Rename of New MKV without EIA subs was Successfull
)

EXIT
:FAIL
 ECHO Something Went Wrong With Removal Of EIA Subs. 
EXIT /B %ERRORLEVEL%