Comment empêcher HDHomeRun d'enregistrer des émissions

Cette solution laisse en place un « stub » de 100 Ko à la place de la vidéo HDHomeRun d’origine, contenant uniquement les métadonnées initiales, afin qu’HDHR la reconnaisse et n’enregistre pas à nouveau l’émission


Étape 1 : Télécharger les fichiers nécessaires

  1. Créez un dossier nommé C:\PartCopy
  2. Téléchargez les 2 fichiers suivants et placez-les dans le dossier ci-dessus

Étape 2 : Modifier d’abord votre profil pour y inclure ceci :

PostCustomCommandPath=C:\PartCopy\MakeStub.bat
PostCustomCommandParameters="%sourcefile%" 0d 100000d
PostCustomCommandHangPeriod=600
PostCustomCommandCritical=true
PostCustomCommandUISession=false
PostCustomCommandShowWindow=false
PostCustomCommandExitCodeCheck=false

Le 0d indique de commencer à la position 0 (décimal) et 100000d signifie copier les 100 premiers Ko (décimal)

Étape 3 (Optionnel) : Archiver au lieu de supprimer le fichier original

Le script MakeStub.bat va supprimer le fichier original et le remplacer par un stub. Si vous souhaitez archiver le fichier original au lieu de le supprimer, éditez le fichier batch (MakeStub.bat) et remplacez la ligne

del %1

par

move %1 "C:\ArchivedFiles"

Cela déplacera le fichier original dans le dossier C:\ArchivedFiles; vous pouvez changer le nom du dossier selon vos besoins.

Cela n’a pas fonctionné pour moi. Voici un extrait de mon code d’erreur et de mon profil

2017-07-09T23:40:56 MCEBuddy.Transcode.CustomCommand → Custom command parameters read →

PostCustomCommandPath = c:\partcopy\partcopy.exe 
PostCustomCommandParameters = "%sourcefile%" "%originalfilepath%\%originalfilename%.%originalext%" 0d 100000d 
PostCustomCommandHangPeriod = 600 
PostCustomCommandCritical = True 
PostCustomCommandUISession = False 
PostCustomCommandShowWindow = False 
PostCustomCommandExitCodeCheck = False
2017-07-09T23:40:56 MCEBuddy.Transcode.CustomCommand --> About to run custom command with parameters: 
PostCustomCommandPath = c:\partcopy\partcopy.exe 
PostCustomCommandParameters = "\\WDMYCLOUD\HDHomeRun\Orphan Black\Orphan Black S05E05 20170708 [20170709-0200].mpg" "\\WDMYCLOUD\HDHomeRun\Orphan Black\Orphan Black S05E05 20170708 [20170709-0200].mpg" 0d 100000d 
PostCustomCommandHangPeriod = 600 
PostCustomCommandCritical = True 
PostCustomCommandUISession = False 
PostCustomCommandShowWindow = False 
PostCustomCommandExitCodeCheck = False
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base --> Launching process c:\partcopy\partcopy.exe
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base --> Process arguments "\\WDMYCLOUD\HDHomeRun\Orphan Black\Orphan Black S05E05 20170708 [20170709-0200].mpg" "\\WDMYCLOUD\HDHomeRun\Orphan Black\Orphan Black S05E05 20170708 [20170709-0200].mpg" 0d 100000d
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base --> UI Session Admin Process : False
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base --> Setting process priority to Normal
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  P a r t C o p y   -   V e r s i o n   1 . 1 2   R e l e a s e   1   B u i l d   3 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  C o p y r i g h t   ( C )   2 0 0 5 - 2 0 1 4   J o h n   B u o r o ,   V i r t u a l O b j e c t i v e s . 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  A l l   R i g h t s   R e s e r v e d . 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  T h i s   p r o g r a m   i s   F r e e w a r e   a n d   m u s t   n o t   b e   d i s t r i b u t e d   o r   s o l d   f o r   p r o f i t . 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  U s i n g   C o m m a n d - L i n e   P a r a m e t e r s 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  S o u r c e   F i l e   =   \\ \\ W D M Y C L O U D \\ H D H o m e R u n \\ O r p h a n   B l a c k \\ O r p h a n   B l a c k   S 0 5 E 0 5   2 0 1 7 0 7 0 8   [ 2 0 1 7 0 7 0 9 - 0 2 0 0 ] . m p g 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  D e s t i n a t i o n   F i l e   =   \\ \\ W D M Y C L O U D \\ H D H o m e R u n \\ O r p h a n   B l a c k \\ O r p h a n   B l a c k   S 0 5 E 0 5   2 0 1 7 0 7 0 8   [ 2 0 1 7 0 7 0 9 - 0 2 0 0 ] . m p g 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  E R R O R :   S o u r c e   a n d   d e s t i n a t i o n   f i l e s   c a n n o t   b e   t h e   s a m e ! 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  S t a r t   P o s i t i o n   =   0 d 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  O f f s e t   L e n g t h   =   1 0 0 0 0 0 d 
2017-07-09T23:40:56 MCEBuddy.AppWrapper.Base -->  
--> Process exited with code 1

mon profil

[HDHomeRun H.264 high quality]
Description=Use this to remove the commercials and convert the source video into a SiliconDust HDHomeRun compatible MPG file with (H.264/AC3) video/audio.
order=handbrake,ffmpeg 
ffmpeg-general=-threads 0 
ffmpeg-video=-ss 3 -vf yadif=0:-1:1,hqdn3d -vcodec libx264 -b 1800k -x264opts me=hex:trellis=2:subq=8:partitions=all:8x8dct=1:ref=5:rc-lookahead=50:keyint=25:min-keyint=20:bframes=3:weightb=1:level=4.0:b-pyramid=normal:direct=auto:mixed-refs=1:deblock=-1,-1:no-fast-pskip=1:no-dct-decimate=1:b-adapt=2:threads=auto -map 0:v -sn
ffmpeg-audio=-acodec ac3 -ab 192k -map 0:a 
ffmpeg-audioac3=-acodec ac3 -ab 384K -map 0:a 
ffmpeg-ext=.ts 
ffmpeg-audiodelay=skip 
handbrake-general=--decomb --denoise="weak" --loose-anamorphic --verbose=2 -T -f mp4 -O
handbrake-video=--start-at duration:3 -e x264 -b 1800 -x me=hex:trellis=2:subq=8:partitions=all:8x8dct:ref=5:rc-lookahead=50:keyint=25:keyint-min=20:bframes=3:weight-b:level-idc=40:b-pyramid=normal:direct-pred=auto:mixed-refs:deblock=-1,-1:nofast-pskip:nodct-decimate:b-adapt=2:threads=auto
handbrake-audio=-E ffac3 -R auto -B 192 -D 0 -a 1,2,3,4,5 
handbrake-audioac3=-E ffac3 -R auto -B 384 -D 0 -a 1,2,3,4,5 
handbrake-ext=.mp4 
handbrake-remuxto=.ts 
handbrake-audiodelay=skip 
PreConversionCommercialRemover=true 
RenameExt=.mpg
PostCustomCommandPath=C:\PartCopy\PartCopy.exe
PostCustomCommandParameters=""%sourcefile%" "%originalfilepath%\%originalfilename%.%originalext%" 0d 100000d"
PostCustomCommandHangPeriod=600
PostCustomCommandCritical=true
PostCustomCommandUISession=false
PostCustomCommandShowWindow=false
PostCustomCommandExitCodeCheck=false

Veuillez encadrer le contenu avec des guillemets de code ``` ou marquez-le comme texte préformaté afin de préserver les caractères et de le rendre plus lisible (modifiez votre message pour l’instant).

Je vais tenter une supposition ici et dire que vous avez activé l’une de ces options :

Soit Skip copying original files ou Skip remuxing files

Si c’est le cas, assurez-vous qu’AUCUNE de ces options n’est cochée ; c’est probablement la raison de l’échec, car lorsque vous ne copiez pas, le \"%sourcefile% est identique à %originalfilepath%\\%originalfilename%.%originalext%, ce que PartCopy refuse car source et destination sont identiques. Si vous cochez l’une de ces options, vous rencontrerez ce problème. Décochez-les et cela fonctionnera.

Notez également que votre PostCustomCommandParameters manque de guillemets doubles ("), l’ensemble des paramètres étant entouré de guillemets doubles :

PostCustomCommandParameters="\"%sourcefile%\" \"%originalfilepath%\\%originalfilename%.%originalext%\" 0d 100000d"

J’ai vérifié. Les deux cases ignorées sont décochées.

J’ai bien les paramètres suivants dans mes réglages Expert de l’emplacement de surveillance :

  • Archiver le fichier original coché
  • Supprimer le fichier original décoché
  • Dossier d’archivage désigné
  • Dossier d’exclusion vide
  • Âge minimum avant traitement : 1 minute
  • Surveiller les vidéos converties coché
  • Resurveiller les vidéos enregistrées coché

L’un de ces paramètres pourrait-il causer le problème ?

Peu probable. Pouvez-vous joindre votre journal de conversion ?

Vous avez raison, je viens de vérifier, ce problème se produit bien avec les dernières versions. Pour résoudre ce problème, nous aurons besoin d’un fichier batch pour écraser le fichier original. J’ai créé un fichier batch et mis à jour les instructions dans le premier message. Essayez-le, cela devrait fonctionner maintenant.

Il semble qu’il crée maintenant le fichier, mais il semble supprimer le fichier original (sans l’archiver) puis déplacer le fichier de 10k vers mon dossier d’archives.

Oui, c’est exact. Ce script écrasera le fichier original. Si vous préférez archiver plutôt que supprimer, modifiez simplement le fichier batch pour déplacer l’original vers un dossier d’archivage au lieu de le supprimer.

Voici un exemple de fichier batch (remplacez le contenu de MakeStub.bat) qui peut être utilisé pour archiver l’original au lieu de le supprimer et laisser le stub derrière

PartCopy %1 %1.tmp %2 %3
move %1 C:\\ArchivedFiles
move %1.tmp %1

J’ai mis à jour les instructions originales pour refléter cela.

Fonctionne à merveille. Merci!

Ensuite, je dois expérimenter la création d’un profil qui ne génère que le fichier de 100k pour remplir tous mes anciens enregistrements.

C’est simple. Utilisez l’option Rename only dans la tâche de conversion et utilisez le même profil avec la commande personnalisée. Peu importe le profil utilisé car lorsque vous activez le renommage uniquement, il ne renomme pas recode mais à la fin la commande personnalisée s’exécutera toujours créant vos 100k stubs. Assurez-vous que la détection commerciale est désactivée.

Est-ce toujours la méthode préférée pour empêcher le HDHomerun d’enregistrer à nouveau les émissions ? J’ai converti tous mes enregistrements en utilisant le profil HDHR H.265 et je les ai déplacés dans un autre dossier et archivé les anciens fichiers.

Oui, c’est toujours le meilleur moyen d’empêcher l’enregistrement.