06 February 2024

Cinema Guard

Cinema Guard removes swear words from any media file.

*Note: 64-Bit Windows operating system required.

Screenshot(s):



Downloads:

Additional notes:
  1. Download Cinema Guard (Cuda) for Nvidia GPUs or Cinema Guard (No Cuda) for other GPUs.
  2. Generating subtitles using your CPU is very slow. Download or extract existing subtitles instead if you don't have the time or patience.
  3. For inexperienced users, it's recommended not to modify the settings. For advanced users, feel free to experiment with different settings and provide feedback if you discover better configurations.
  4. If a custom swear word disappears after saving, it simply means that the associated checkbox has been checked, meaning the word will still be muted.
  5. Use Subloader to quickly download subtitles for media files: Download. If you create an account you can download up to 20 subtitles per day.
  6. Advanced users might be able to experiment with ZLUDA, which could allow GPUs other than NVIDIA to utilize the subtitle generation feature.

67 comments:

  1. Ian - Thanks for working on the new Cinema Guard.
    Issues -

    First, Cinema Guard (Cuda) is being flagged by Windows 11 Security.
    "Microsoft Defender SmartScreen prevented an unrecognized app from starting. Running this app might put your PC at risk."
    If you run it anyway it appears to work correctly.

    Second - You cannot save the settings until you first open and then close the program. After the initial open/close step then you can then save the settings.

    For a video file that you have the accompanying same-named srt file it runs correctly. I do miss the Peek option or the option to pick a specific srt file with a different name to use with a video file as in Profanity Remover 2.

    Third - I tried using it on a video without the srt file to see how the linked whisper-faster works. I left everything on default. It initially seems to run ok. It downloads the one time model and then begins apparently generating the subtitle but it never changes from 0%. After 1/2 hour with 0% I stopped the process. You get the stop confirmation warning and then a log screen that you cannot scroll through to find the problem. You basically see error occurred. Please restart the program and lines down to 14%. You cannot copy / past to provide info.

    So I thought maybe I would try running it with Administrator rights, If you run it under Administrator Windows Security stops the operation because of a virus. It flags Cinema Guard.exe as having Trojan:Win32/Bearfoos.A!ml. So it is either disabled or removed.

    If you reboot your PC, restore Cinema Guard.exe, and again run with Administrator rights but allow the program to run disregarding the virus warning, the program will still not get pass 0%.

    So too many problems and miss the peek / specific srt file option.
    I will be going back to Profanity Remover 2 but may try Cinema Guard again in the future.

    Thanks again for continuing this work.

    Welles...

    ReplyDelete
    Replies
    1. Hi Welles,

      The SmartScreen notification will eventually go away as time goes on, it's a reputation-based system.

      The settings window issue is now fixed.

      I have added the peek functionality back in (just drag and drop a srt file into Cinema Guard).

      I would almost advise against running Whisper without a Nvidia GPU. It's very slow, even on very fast CPUs
      If an error occurs now, it will be logged under the file "Exceptions.log".

      I just ran a VT scan: https://www.virustotal.com/gui/file/c73ec24ff311decfa551b92a5981deeb3896efdbdbaa7fd2cde89ea89445cf2b?nocache=1
      Seems like Microsoft is identifying whisper-faster as "Program:Win32/Wacapew.C!ml" which is a child process of Cinema Guard.

      Thanks for highlighting the issues!

      Delete
  2. i can't get it to work. says that it has to download a base, and i've left it for hours and it just sits at generating subtitles 0%

    ReplyDelete
  3. Cinema Guard is AMAZING! AI Swear Filter that ONLY filters the exact part of the swear word. One has to create one word subtitles for this to happen, but the big initial download and then the wait for the subtitle to generate is totally worth it. It's the most accurate filter in the entire world! My only regret is that I do not have the original audio for the previous stuff I filtered with Movie Profanity Remover, because I would filter them again with Cinema Guard. It's way more accurate!!

    ReplyDelete
  4. How does the application decide whether to do one word edit or full sentence edit? I don't see a box to "check" for that....

    ReplyDelete
  5. Malwarbytes flags this as a MachineLearning Malware

    ReplyDelete
    Replies
    1. I've heard of numerous antivirus engines flagging Cinema Guard as positive.
      Not sure why, but I'll submit the file to the appropriate vendors at some point.

      Delete
  6. I'm getting this error while trying to run the application for a movie using AI subtitles
    "Error occured. Please restart the program and try again.
    Details: Could not file C:\****.srt. Void WinIOError (Int32, System.String)

    Any help?

    ReplyDelete
    Replies
    1. Please send me an email: inieuwoudt1pc@gmail.com

      Delete
  7. Hello and thank you for the software. I am having trouble adding more words to the box. It seems to only save the one when I add a few additional words to block. Is reads: additional (split with new line). How do I get it to save more than 1 word in that box?

    ReplyDelete
    Replies
    1. Hi, happy you like it.
      It does save the word(s). You should see that a checkbox containing the word(s) is now checked, hence the reason it was removed from the additional swear words list.

      Delete
    2. Hi Ian.
      First off thank you for making this wonderful program available !!!
      I loved the original & currently testing the new version.
      Then sorry I don't understand. What do you mean with "You should see that a checkbox containing the word(s) is now checked " with adding new words ? I'm adding new words but no additional checkboxe's appear ?
      The new words remain within the add words box area where you type it in by full sentences, but they disappear in the single word add area. I have no idea if new words are added or not ?
      Maybe just my stupidity, but please inform.

      All the best & Rgds

      Delete
    3. Hi!
      I'm happy you like it.
      If a word disappears from the textbox, it's already a part of a checked checkbox. No need to do anything further.

      Best regards

      Delete
  8. Is the only way to get a one-word edit is to use the AI subtitle creation? Or is there some way to do it with a provided subtitle?

    ReplyDelete
    Replies
    1. I don't know of any other software that can create a one word subtitles file. If you would like to modify the subtitles first, right click on the queued media and select [Generate Subtitles] - just ensure your settings is set to One Word or Both. You can modify it first and then use it to censor the media file

      Delete
  9. Thank you so much for this software!! Cinema guard is much more accurate at filtering at the correct time than Movie Profanity remover 2.0 which I loved as well. I've noticed that Cinema guard will fail to catch some swear words when they are muttered under someone's breath. It's like there is a minimum decibel threshold before words are detected. Is there a setting to adjust that?

    ReplyDelete
    Replies
    1. I'm happy you like it! Unfortunately I'm not aware of any parameter that can specify a minimum decibel threshold. This is a limitation of the model(s) that are available, for now at least.

      Delete
  10. What audio formats are supported? For example, would this work with an .MKV Blu-ray rip with either Dolby TrueHD or DTS-HD MA?

    ReplyDelete
    Replies
    1. Both should be supported. You can find more information about ffmpeg here:
      https://ffmpeg.org/faq.html

      Delete
  11. Single word censoring doesn't seem to be working. It will work with single sentence censoring, however.

    ReplyDelete
    Replies
    1. Please provide more information about what is happening.

      Delete
    2. Ah, I figured it out. If I switch to .MKV, "Embed Subtitles" is initially grayed out. However, if uncheck and recheck the checkbox for "Create Subtitles," "Embed Subtitles" is then available. Since (I assume) .MKV subtitle embedding isn't yet supported, it fails. So the bug is blocking "Embed Subtitles" can be enabled and cause a conversion to fail following the steps outlined above.

      Delete
    3. As of the time I've developed that part of the application, embedding subtitles in a MKV files wasn't possible. If you want to embed subtitles you will have to use MP4 as your output type.

      Delete
    4. Cool! I understand that and have no problems adding the subtitle after the fact with MKVToolNix or similar. I am just pointing out that the application, when selecting .MKV, can be made to falsely show that it can embed subtitles by toggling the "Create Subtitles" option on-off-on. When you do that, then the option for "Embed Subtitles" is no longer grayed out despite it being set to a .MKV file output.

      Delete
  12. Love this...thank you for your hard work in making this possible. Only suggestion I would add is being able to generate the subtitle files without running the video removal and also being able to "peek" as in the old version into where or how many words should be removed. Its sometimes helpful to double check and make sure it's all out. Thank you again!

    ReplyDelete
    Replies
    1. When you right click on the video file (inside Cinema Guard), there will be an option to generate subtitles.
      You can drag and drop a srt file onto Cinema Guard and it will show the peek window.
      I'm glad you like it!

      Delete
  13. Hi mate, I might have missed instructions somewhere, but wondering how you can configure which words you want removed? Is it flexible enough for me to adjust what I want to be considered as offensive words?

    ReplyDelete
    Replies
    1. Hi!

      You can add your own custom words by navigating to Settings -> Filter -> Words -> Select
      Add your own words in the textbox.
      If the word is already a part of one of the checkboxes (that has been checked), it will be removed from the textbox, but still be muted.

      Delete
  14. Okay, just tested out the program for the first time with my Asus 3080 16GB card and it works great. The length of time wasn't too bad and I can easily queue things up tonight.

    One thing I miss from the old version is the option for only having the mute on the vocal audio tracks only and allowing the music and surrounding ambient noise still there. This feels a little cleaner and it's not so jarring. The only problem is that sometimes there will be 1 or 2 yelled profanities which do leak into the surround channels. Maybe if the list of words that were detected popped up and you could listen to a 5 second segment and toggle it one way or another. Or on the other hand, this could be automated using the same tech. A second pass of detection after only muting the vocal channels could be a decision gate on a specific word being muted from all audio channels.

    So if we already have an SRT in a separate file with accurate subtitles, or if it's included in the MKV, does this program take advantage of it? For instance, it could search through the SRT for word hits, and then only do a word level transcription of just that 30 second segment. This would greatly increase the speed if you already have a decent transcript.

    I noticed that in the generated transcript, sometimes when it was noisy it wouldn't quite pick it up. These are the times that the "official" transcripts help the most because you can't always clearly hear what they are saying.

    Also, any guidance on what the Beam Size option will do? I had it set to Large-v2 and Cuda device. If I change to custom there doesn't seem to be anything visually that changes.

    ReplyDelete
    Replies
    1. Great to hear!

      The reason I have disabled the 'mute vocals only' option for now is due to the leaks into the other channels.
      My plan was to check the decibel levels and mute everything if the background audio levels are too low. It's still something I'll have to experiment with.

      Your solution might also be sufficient, and could possibly be better.

      If you click on the beam size label it will take you to this article:
      https://web.engr.oregonstate.edu/~huanlian/papers/optimal_beam_search.pdf

      Thanks for your input!

      Delete
  15. Hey Ian. Is there a way to set the destination audio format to match the source or at least for it to remain lossless? I ask since it converted the lossless Dolby TrueHD/Atmos audio in an .MKV remux of one of my UHD Blu-rays into lossy Vorbis when I would have really preferred it to remain lossless.

    ReplyDelete
    Replies
    1. Hi! Please send me an email - inieuwoudt1pc@gmail.com

      Delete
  16. Hi Ian,
    I was so excited to come across your program. I've been wanting to find a quick way to censor my movie collection for the longest time and I think this is exactly what I've been looking for. Unfortunately, I'm also stuck on the 0% when generating subtitles. Would you mind helping me troubleshoot? TIA

    ReplyDelete
    Replies
    1. Hi,
      What Graphics card do you have in your system?

      Delete
  17. Hi thank you so much for this program! I was wondering if we can provide our own version of ffmpeg like the Movie Profanity Remover? I tried just replacing the ffmpeg.exe from the extracted archive but that does not seem to work.

    ReplyDelete
    Replies
    1. Hi, replacing ffmpeg.exe should work. What exactly is not working?

      Delete
    2. whenever I replace the ffmpeg.exe with any version from https://www.gyan.dev/ffmpeg/builds/ and press censor the program will finish processing quickly and say its done but the output is invalid it has a filesize of 0.

      Delete
    3. The newer ffmpeg builds deprecated some functions. At some point I'll upgrade the program to use the latest version of ffmpeg.

      Delete
  18. I tried replacing the ffmpeg.exe with a stable one available at https://www.gyan.dev/ffmpeg/builds/ and Cinema Guard will not produce a valid output just a file of 0 bytes.

    ReplyDelete
    Replies
    1. Can you test it on a video file that you know works with the ffmpeg.exe in my release?
      It does sound like an encoding issue.

      Delete
  19. Just wanted to jump in and tell you how much I appreciate you coming back to this program!

    I was still using Mute Profanity Remover 2.0 until I saw you updated this new version. I haven't had much of a chance to verify my first conversion but it converted very easy. Just a minor hiccup, it didn't like my source mkv, so I ran it through after converting to an mp4. I figured I could try and figure out that issue later.

    I was actually using Whisper Time Stamped to generate single word subtitle files and plugging them into your original app. I found that the best way to verify a good clean removal is to actually have a ripped subtitle file and an AI generated version. I would look for any missing profanities in the segments from the subtitle file which the AI could not catch. Might be a nice way of still using a subtitle file to help eliminate the mumbled or misunderstood profanities in your program.

    Thanks again for building this!

    ReplyDelete
  20. Is there a duration limit on videos? I'm trying to censor a 10 hour long video, and it generates the subtitles just fine, but it doesn't censor the video/produce the censored video file.

    Even when I right click > select subtitles > select the one-word subs > click Censor --- it goes from "Ready" to "Censoring Subtitles" to "Done" all within seconds without ever censoring the video.

    I've been testing it with shorter videos with amazing success, but this video it refuses to work with.

    ReplyDelete
    Replies
    1. There is not duration limit on videos.
      I've never tried anything longer than 4 hours.

      That does however sound like an encoding issue to me.
      What you can do is convert it using ffmpeg to mp4 or mkv (even if it's already) and make sure you don't just copy the stream. This will take some time.

      Once you're done with that, rerun it in Cinema Guard.

      Delete
  21. This update is amazing!! Hey, is there a way I can end the file name of the Subtitle like I can with the MP4 of MKV. I would like to add the language to the sub via the interface. I.E. SL.eng.srt

    ReplyDelete
    Replies
    1. Thank you. And unfortunately Cinema Guard is not capable of doing that.

      Delete
    2. All good. Still, amazing update and we are grateful for this blessing!

      Delete
  22. Love your work since UV Media Player.
    Instead of using ***** to hide the swear words, can we have the option to hide them with blanks? That way, I don't even need to know that there was a swear word there.

    Like to confirm that cinema guard ai generates the subtitles from the media file and then proceeds to mute and outputs the new media file with embedded subtitles as well?
    I noticed a oneword.srt file being generated. What is that for?

    ReplyDelete
    Replies
    1. Thanks!

      Yes, I'll add an option to specify your own custom character soon (which you can leave blank).

      The one word subtitles is used for very precise muting as Whisper (the AI) is able to detect what time the word start and ends.

      Delete
  23. Another amazing product. Ian, got to hand it to you man. This is quite the upgrade from Movie Profanity Remover 2.0. The last few years I take your edited audio and mux it back into my original movie file, but make your audio and my custom subtitle srt files the default. I keep the original audio track in the mkv just in case I need it to make a better copy in the future with enhancements to your tool. It works great. Thank you for not only the hard work, but being willing to share it with us. How can we contribute to the project? ~Josh

    ReplyDelete
    Replies
    1. Hi Josh, thank you!

      I wish I'd thought of it sooner, but I'm going to add in an option to keep the original audio for the same reason you just mentioned.

      There is a donate link under More (Top left corner) for those who want to contribute, thanks!

      Delete
  24. This really is a life changer. It allowed me to listen to the mmolitrpg genre of audiobooks without the language which usually comes with the culture. There was one thing I noticed though sometimes it seemed to miss certain words. At first, I thought it was perhaps the accent that the narrator said it in. It got confused and did not write it down correctly. So, then I listened carefully for the words it missed, noted the time, and went and search for the words in the subtitles. What I thought I could do was manually write in the correct words so it would catch them. What was my surprise when I found that set on medium 1.53 gb it had gotten the words correctly after all. I did this on another audiobook and started sensing a pattern. The only words it would miss would be words that had exclamation points or some other kind of punctuation. I went back in and wrote out a copy of all the previous curse words but add in an exclamation point to all of the duplicates. I sifted in an audiobook chunk and went to the parts that had the missed curse words. It worked like a charm and caught all of them. So a word to wise of who have just gotten or perhaps have this for a long time wondering why it does not seem to always work you need to put in duplicate copies of all the curse words with punctation added. I hope this helps:)

    ReplyDelete
    Replies
    1. Hi, thanks for sharing this!
      Please send me an email [inieuwoudt1pc@gmail.com] so that we can resolve this as punctuation is not supposed to have an effect on the detection.

      Delete
  25. That is awesome! I wouldn't have thought of asking for that, but that is what I was doing before too.

    ReplyDelete
  26. Ian, I noticed the subtitles are British English spellings. Any way to substitute them with American English spellings? Thank you.

    ReplyDelete
    Replies
    1. Unfortunately not. You're welcome to dig and let me know if you find something:
      https://github.com/openai/whisper

      Delete
  27. Ian, do you have any release notes posted for each version of your tool?

    ReplyDelete
    Replies
    1. I don't yet. I might add this in the future.

      Delete
  28. Would it be possible to just download the updated exe file instead of the 887MB file?

    ReplyDelete
    Replies
    1. Just download the (No Cuda) version and replace the exe file.
      Everything else remains the same.

      Delete
    2. Thank you Ian for that information.

      Delete
  29. I just wanted to comment that this software is amazing for removing profanity from videos. Works like a charm!

    ReplyDelete
  30. Ian, this is fantastic, thank you very much.
    However, I'm having some difficulty with custom words, trying to get it to mute "butthead" on "Back to the Future "(around 00:13:50). The subtitles is censored with ******** and I can hear the sound being muted, but the muting is being done a few seconds after the word has actually been uttered in the audio. I'm guessing this is because the algo couldn't find it on the audio and tried guess its position based on the timing of the subtitles.

    Is there anything I can do to improve this?

    Many thanks in advance!

    ReplyDelete
    Replies
    1. Hi Hugo, this is a known issue with Whisper. It can happen sometimes.
      My recommendation (for this instance) would be to download subtitles and use them instead.

      Delete
  31. Amazing job How can I support you ? please email me Radudon1991@gmail.com

    ReplyDelete