Page 1 of 2

auto censor

Posted: 12 Jul 2007 08:54
by turhil
I'm new here and I don't know whether it was discussed here before, maybe I couldn't find the right keywords for the google search.

What I would like to see is the feature which eases censorship. The player will accept a censor file which list the segments to be skipped or muted, it can have a format like subtitle files.
e.g.
JUMP 1:12:01 - 1:12:23
MUTE 1:15:12 - 1:15:15
DIM 1:30:20 - 1:30:30

I think this would be a very beneficial feature for families and teachers who don't want their kids to see some mature or violance scenes.

If this is not already in the TODO list, can you add it? If not possible, I can volunteer for coding it.

Thanks

Re: auto censor

Posted: 12 Jul 2007 12:07
by Jean-Baptiste Kempf
You can add a trac ticket, but I really think no developer will work on that since it is not a prioritary feature. So your code is welcome :D

Re: auto censor

Posted: 17 Jul 2007 17:58
by dionoea
Same remark as jb. Note that this shouldn't be hard to code (as a control interface, which would enable to skip and mute audio easily (although the user could still counter skip or unmute the audio in the VLC interface)). You'd need to couple that with a video filter to enable dimming (which would also be easy to code). If you know how to code C and want to give it a try, feel free to ask questions on #videolan on irc.freenode.net .

Re: auto censor

Posted: 09 Dec 2007 20:59
by DGMurdockIII
i think this should be added

Re: auto censor

Posted: 19 Jan 2008 20:28
by LDiracDelta
I like this idea, but I think the censorship format isn't flexible enough. Conceptually, this idea of a censorship file is used to strip out sound or video or skip a section of video that a user deems unacceptable. Unacceptability can come in different categories and at different thresholds. One user could be offended by violence, another by language. The threshold for what is offensive can also be variable between users. I've seen parents aghast at a child saying "shut up" and other people who are only offended by the f-word. Additionally the format should allow sub-categories. If there were a category 's_e_x' it could have a sub-category 'rape' ( which might also be under 'violence' ). Users might have a general threshold for 's_e_x', but a particular abhorrence to depictions of 'rape', so a user could specify a lower acceptable threshold for scenes of rape within category 's_e_x/rape'. skip/mute/dim functions, basic censorship operations, would be associated with specific categories and sub-categories. If a censorship operation were associated with a child sub-category, then a threshold value set at the parent category would perform censorship operations on sub-categories that exceeded the parent threshold value. Categorizing and rating specific censorship operations should be optional in the format, but available.

I would like to propose this syntax ( and change "JUMP" to "SKIP" -- which seems more accurate ). Moreover the syntax scheme should be case-insensitive. Comments are allowed to the end of the line using '#'

Code: Select all

CENSORSHIP_OPERATION BEGIN_TIME '-' END_TIME (CATEGORY(/SUBCATEGORY)*:RATING)* ('#'.*)?
e.g.

Code: Select all

SKIP 1:12:01 - 1:12:23 violence/murder/decapitation:7.0 # george murders bob on staircase MUTE 1:15:12 - 1:15:15 s_e_x/inuendo:4 language/s_word:5 MUTE 1:15:19.2 - 1:15:19.7 language/f_word:8 # random f-word DIM 1:30:20 - 1:30:30
Additionally, you should be allowed to have overlapping censorship operations to enable different categorizations of the same time slice.

Re: auto censor

Posted: 19 Jan 2008 20:34
by LDiracDelta
Oh yes. And, in the grand tradition of bash and python, line continuation with '\' where '\' is the last non-whitespace character before the end of the line ( excluding comments).

Re: auto censor

Posted: 19 Jan 2008 20:46
by Jean-Baptiste Kempf
Code it:D

What about using XML for that?

Re: auto censor

Posted: 19 Jan 2008 21:20
by LDiracDelta
Hi JB!

I am going o try to code it. Just putting out my idea for feed back.

I think XML sucks. It is not human readable, and faaar too verbose. It is nice for structured data for *tools*, because every language has xml parsers.

Besides. I got a new hammer! I picked up a book on Antlr so I'm writing the grammar file as we speak. If I modularize it right, you'll just have to use the intermediate for that Antlr will produce instead.

Cheers.

Re: auto censor

Posted: 19 Jan 2008 21:21
by LDiracDelta
*the intermediate **form** *

Re: auto censor

Posted: 19 Jan 2008 22:13
by CloudStalker
Sounds good. 8)

Re: auto censor

Posted: 19 Jan 2008 22:19
by Jean-Baptiste Kempf
Hi JB!

I am going o try to code it. Just putting out my idea for feed back.

I think XML sucks. It is not human readable, and faaar too verbose. It is nice for structured data for *tools*, because every language has xml parsers.

Besides. I got a new hammer! I picked up a book on Antlr so I'm writing the grammar file as we speak. If I modularize it right, you'll just have to use the intermediate for that Antlr will produce instead.

Cheers.
If you do it, do as you want. Just try to have a clear specification :D

Re: auto censor

Posted: 09 Apr 2008 16:14
by LDiracDelta
I'm trying to figure out where to instantiate the "control interface" that dionea alluded to. I ran into all sorts of compile and dependency issues when trying to instantiate a mediacontrol object just before the VLC_addIntf() call in vlc.c. I was able to make a call to mediacontrol_new in VLC_init() of libvlc.c, but instantiating a control interface there is 100% unacceptable.

I want to make my code as minimally intrusive as possible....

Could an experienced vlc hacker outline what files I should touch?

I want to instantiate a control interface that wakes on intervals to do new censor operations.

Re: auto censor

Posted: 04 Jun 2008 00:58
by fyremoon
I think this is a nice idea though could be extended to have age ranges, for instance: 12+, 15+, 18+ and have the content restriction as a password protected setting in VLC.

If this could also be applied so you could censor part of a stream, either jump or pixelate the bad scenes out of the stream. By specifying a get string in the URL as to which censor to use.

Re: auto censor

Posted: 04 Jun 2008 17:07
by MetalheadGautham
in my openion, auto censor will be about as easy to implement as support for subtitles in .srt format.
but the main problem is this: subtitles is a universal standard today, auto censor file is not.
so I am afraid you still won be able to download xyx.censor file for a video.
hopefully it will become mainstream soon. :)
but till then, it is THE CODER who needs to frame his own censor framework, which will be a hard job indeed.
Creation of support for a format is one thing.
MAKING a new format is something else. :lol:

Re: auto censor

Posted: 24 Jun 2008 16:21
by LDiracDelta
Fryemoon,
In regards to age ranges, I think those categories could grow organically ( yay! buzzwords! ) You could create different censorship contour profiles ( i.e. when Dad watches, turn up the violence -- hypocritical? possibly, but the power would be in your hands) First things first, however... let's try to do 1 edit :-P I'm having enough trouble getting my code to compile and accessing the different VLC_* data structures. This goes for blacking or pixelating a portion of the picture. I agree that would be desirable feature but also beyond the scope of a first attempt. First things first :-)

MetalheadGautham,
Obviously I'm not done doing the edits ( and I'm not especially good at C/C++ ). Been working on a skunk-works project for work that should wrap up soon. Yes it should be easy, and if you're able to produce the code faster than I, please do! I'd much rather write Python code anyway :-)

As far as creating a "new standard", I'm not currently aware of a standard format for specifying edits and then classifying those edits so that people are able to produce censorship profiles. Its not that tough to parse a text file -- writing code that lives all by itself with no dependencies is easy compared to trying to read other people's code that has grown over 10? years.

I looked at SubRip http://en.wikipedia.org/wiki/SubRip to which MetalheadGautham alluded. True, it is a standard, but adding these features:
- edit type ( with very specific limits)
- multiple category ratings per section

Would so drastically extend the original SubRip spec that it would be nothing less that a re-write of the SubRip spec. I have no illusions about this code. If I ever get it working ( or someone else!) then it will probably not be accepted by the VLC community, and it will not spread to other free media players, much less media hardware like dvd players. The market for this feature is probably small and is also a politically incorrect group. So given these facts, who cares about conforming to a standard when this code is probably a singleton ( possibly an orphan) and no-one has even written any censorship files yet. I've also looked at JSON and YAML, ( as posted above, I do hate XML ), but none of these data formats express the idea of the edits with edit ratings properly. Really, this is just a bikeshed issue. Writing a parser for the data format I specified above, or traversing an XML tree are approximately the same difficulty, the parser is less than 5% of the total problem and is a problem I have solved before at work. I'm not trying to create an idiot-lect and I do know that writing a flexible language is extremely difficult, but I think the risks are relatively low. We can always turn around and specify a version at the top of the file and revert the idiot-lect at a future date.

Thanks for your thoughts guys.
Regards,
L{DiracDeta(t)}

Re: auto censor

Posted: 24 Jul 2008 23:16
by OlivierAubert
> This goes for blacking or pixelating a portion of the picture.
> I agree that would be desirable feature but also beyond the scope of a first attempt.
For this, you could have a look at the svg filter module (which may not work in current development version, I have to check it against the latest changes in vout/filters). Putting a mask on a picture is then a matter of sending something like

<svg version='1' preserveAspectRatio="xMinYMin meet" viewBox='0 0 320 200'>
<rect x='5' y='550' width='783' height='43' fill='black' stroke='black' />
</svg>

Pixelation is another story. If you want to experiment with your ideas, you can use the Advene software ( http://www.advene.org/ ) which is based on VLC, and allows to easily define dynamic rules such as "If you meet a forbidden word, zero the volume" or "If you meet a scene to cut, go directly at its end", based on annotations.

Re: auto censor

Posted: 24 Sep 2008 01:37
by FoundLinux
I'm interested in this feature and I like the way you're doing it. One thing to think about is that the censorship file might need to include language for muting words. The position in the movie where there is a offensive Spanish word might be different than where there is a offensive English word. Different languages have different language structures which will pretty much guarantee that the offensive words will physically come in a different spot. Remember those kung fu movies where the speaking is done but the lips are still moving?
Obviously, the offensive scenes will be the same irregardless of language.

Re: auto censor

Posted: 18 Jun 2009 14:05
by benjy1969
this censorship is very handy tool
it must be a tool to specify the areas of muting/blanking/skiping or even mask a portion of the screen
the parent watches the movie and easily mark the scenes
and then allow the kid to see the movie with this mask.(password protected)

to the brave ones: can this tool exported to burned dvd of avi ??!!
the need is to allow multi sencorship menu for any kid/parent/student.

very interesting, some one can earn a lot of mony from developing this tool!!

Re: auto censor

Posted: 31 Oct 2009 05:44
by BASiQ
I will personally donate $25 to any person who is capable of coding a working version of this that one can actually use.
Be it the VLC staff, or some random member here who makes something they/you incorporate.
If you decide to take me up on my offer, PM me and I will work something out.

But it must be able to at MINIMUM, mute out the audio track at certain times, specifiable by say, a txt file.
And it must be able to skip portions, Say, when watching a movie, at 2:31:32 it jumps to 2:27:00. Also user specifiable via some plain text file.

It should be able to be just like LDiracDelta said. Simple enough I would think, as it works almost like a subtitle file, which is already implemented.
viewtopic.php?f=7&t=39035#p137311

Just know, I am serious about getting this implemented. I am so sick of demuxing, manually scanning srt files, muting select portions, re-muxing, then cutting. to finally have something that I should of been able to do in 10 min and ONE step with an addon like this.

Re: auto censor

Posted: 05 Nov 2009 18:02
by floormat
I fully support this idea as well. Whether it be from LDiracDelta or somone else. I would definately pay or donate to having a feature like this available.

Having muting as well as skiping would be great. My only varying distinction on this would be allowing the user to type in a set of words they feel are offensive. In addition or instead of a suggested content filter (G, PG, PG-13, R...) for when an edited sub file is not available. kind of a v chip of sorts that would try to make all content run through it automatically drop it down to a min rating when specifics aren't available. Not the perfection your suggesting but helpful none the less.

Here is a link to a post I made simular to this viewtopic.php?f=7&t=66840 for my detail of my take on it. I fully realize that this would take some time but it would be an invaluable tool to so many...

Re: auto censor

Posted: 05 Nov 2009 19:31
by Jean-Baptiste Kempf
Then do it or find someone! Or make a "Family protection" association to pay for the feature...

Re: auto censor

Posted: 05 Nov 2009 20:17
by floormat
I am sorry if I offended you. There appeared to be several interested users as well as someone who was working on it in this thread. I was just offering my support moral and financial. Perhaps a Family protection" association would be a good idea. It looks like this is the early stages of people coming together to get this funded and accomplished.

Thank you for your patience, wisdom and insight.

Re: auto censor

Posted: 06 Nov 2009 16:52
by VLC_help
Perhaps a Family protection" association would be a good idea. It looks like this is the early stages of people coming together to get this funded and accomplished.
It would be great idea. Then you could specify international standard for censor stuff so all media players could support it.

Re: auto censor

Posted: 06 Nov 2009 16:54
by Jean-Baptiste Kempf
Yep :D

Re: auto censor

Posted: 07 Nov 2009 06:35
by BASiQ
BUT, then again, if this was a VLC only thingy, then it would be free advertisement because of it's "VLC Only" features...
Try to be a little less sensitive j-b. No one is picking on you or asking you personally for anything. It is an idea in the "Feature Requests" section.
Completely ON topic and relevant. If you are unable to say anything constructive, then why spam the forum with personal attacks?