How Do You Make Software?


Recommended Posts

I have never really tried to make a program before. I got VB Beta but it ran out before I got time to try it out.

I want to make a program to work with a dvd not nothing major but I dont know making it may be major. Its going to be a filter.

It would use closed caption.

What would I need to make software like that? Or any software?

I was just wondering what all it took... :)

Link to post
Share on other sites

I would start to learn an easy programming language. I am working on python myself, it seems very noob friendly. It makes sence to learn the basics of programming. I get the impression, if you know one language, you can probably learn them all. That is oversimplified, but all laguages seem(from my novice point of view) more similar then different

Link to post
Share on other sites
I want to make a program to work with a dvd not nothing major but I dont know making it may be major. Its going to be a filter.

What sort of filter? Filtering, say, the contents of a directory is easy. Filtering a video stream... not so easy.

What would I need to make software like that? Or any software?

It depends on the target environment and the language. If you're writing a Media Player plugin, for example, you'd probably need the a C++ development environment (compiler, linker, etc), the Windows platform SDK (software development kit), the Media Player SDK (unless it's part of the Platform SDK, but I don't remember seeing it), and about two years to learn C++ and Win32 :)

Link to post
Share on other sites

do you mean sub titles or closed captioning? some subtitles are directly burned into the movie, those dvds could not be altered. As to the other type of subtitiles, that is years(maybe a lifetime) above my ability.

Link to post
Share on other sites

No no...

There is no editing to the actual dvd!

A filter not a editor....

Nothing to do with the titles. It relies on the Closed caption(like the words that appear on the screen as they are said for the blind person) to block out the cuss word.

It will just follow the CC and when it finds a bad word on the list it will go beep or mute it.

Link to post
Share on other sites

It's safe to say I think that no one here has any experience in audio filtering, so I don't know how helpfully we can be. I have a hunch that it's not an easy task. You'd probably need to create a plugin rather than a standalone application, unless you have some way to stream the audio through the filter process to the media player (or are willing to rip the disc and edit the audio stream). The plugin would probably be specific to a given player and you might have deal with several combinations of subtitle/CC and audio formats. You'd probably have to use C or C++, both because most media players are C/C++-oriented and because you'd have timing constraints that might be difficult to meet in a higher-level language.

This is all assuming that you can actually use the subs/caps to guide an audio filter. I doubt you can. Subtitles seem to operate on the sentence (fragment) level and caps are a bit unpredictable. Unless there's something non-obvious going on you aren't going to be extract from the sub/cap stream the timing of individual words in the audio stream greater precision than the what's implied by the sub/cap display. It's possible that there's a format that tags each word with timing information, but the uses for that information would be so limited and the complexity of the decode/display layer so great that I doubt anyone would bother. It's more likely that the cap stream is synchronized but I still doubt it's exceptionally accurate.

Eek. Google says the NTSC DVD spec permits (or requires) bitmap captioning. If that's correct, you'd have to OCR the bitmap to extract the text.

Anyway, the first thing to do is decide what media player you're going to target. Then you (or the rest of us) can examine the plugin API and get some feel for what might be involved.

Edited by jcl
Link to post
Share on other sites
there is this hardware device desighned to work with tvs

http://www.sondesigns.com/html/tvg_faq.html

<{POST_SNAPBACK}>

If it actually uses the CC stream I have a hard time believing it works. IME CC usually lags behind the audio stream by anywhere from a few hundred ms to several seconds. The rest of the time it's ahead of the stream. And the relative timing between the CC words and spoken words is always varying.

If you watch the CC for a live event you'll sometimes see the CC stream lag until it's several sentences behind the audio stream, and the suddenly burst for a second or two to catch up. Accuracy is often only so-so. It really behaves like the kludge it is.

Edited by jcl
Link to post
Share on other sites

Well thanks! Looks like this is way to much work if not impossible for now. I dont know if dvds are synched with the CC or not I will have to look and see.

Well what can I do to learn how to make any program? Id like to just try. Are there programs out there that make programs? How do you make a program? Is there a good tutorial?

Link to post
Share on other sites
Well what can I do to learn how to make any program?

shanenin should have some useful advice. I can't remember how I learned.

Are there programs out there that make programs?

That depends on what you mean and what you want. You ultimately need some kind of program to generate a program unless you're pounding hardware by hand, but that's probably not what you're talking about. There are programs available that will generate programs from rediculously high-level specifications (e.g. behavior diagrams) but generally speaking any specification that's precise enough to describe a program is a program, so you may as well just write the thing by hand.

It's common these days to use tools to generate boring code -- graphical interfaces and the like -- and write the interesting code by hand. If there isn't much interesting code you can sometimes use the tools to generate most of the program. For example, your standard calculator app can be generated almost entirely automatically by pasting together the interface in a GUI designer and hooking the buttons up.

How do you make a program?

Depends on the language, the development environment, and the execution environment. At one extreme you have the traditional compile-link-debug environments in which you write a bit code, save it in a file, run a collection of programs in sequence to generate the final program, test, run a debugger, and repeat until done. At the other extreme interactive environments in which the code is executed immediately and (as the name implies) interactively and you sort of carry on a dialog with the tools. In the middle you have thing like batch.

Programming traditional environments tends to involve lots of planning, modeling, and forethought. In interactive environments it involves lots of experimentation, testing, and prototyping. In either case you end up typing a lot.

Is there a good tutorial?

<{POST_SNAPBACK}>

I'll punt again on this. The good tutorials I have in mind all involve twisting your brain until it snaps and you're suddenly able to program. Lots of scary math and useful projects like constructing the integers by hand out of nothing but zero and a few functions.

Link to post
Share on other sites
shanenin should have some useful advice. I can't remember how I learned.

the more I program, the more I think, I am out of my element. I can write only the most juvenelle of programs. Maybe in a year or two that will change :-) I need to keep it in perspective. My advice is to just have fun with it. If you are not enjoying it you will have no desire to learn.

I would reccomend learning an easy language. Python would be my choice, its what I am learning now, it seems to teach good habits, like proper indenting. If you can master python, you will have the basic understanding to learn any language. They all seem to be more alike then differnt. This is the book I am stuiding from now, I would really reccomend it

http://www.amazon.com/exec/obidos/tg/detai...=books&n=507846

Edited by shanenin
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...