I've been thinking about this issue quite a bit recently. I have half of a solution but need a little bit of advice on how to make it a whole solution; if even one person has an idea about how to address each of 3-4 problem areas, I can put together the pieces and post it back for everyone to use. (All of these presume you're starting with an mpeg.)
What I'm trying to do: Have Myth notice that a recording is "bad" and autoreschedule a new one. (If there's no repeat, well, you're SOL, but often there is---if only you knew about it soon enough!) This could be extended to "and send mail screaming bloody murder" to warn people of misconfigurations/dead-machines whatever as well, of course. In my experience, three problems happen: o No video. For example, one of the local PBS affiliates -frequently- airs totally black video in place of a show. (This probably happens once a month, usually in the dead of night when nobody at the station is awake.) They'll air the promo, then cut to black, and then at the end of the hour, the next promo... So there's sync, the card's working, etc, but there's no -content-. o Crappy, unwatchable video (half-destroyed by static, etc). This is typically because the studio feed crapped out somehow. I've sometimes seen shows slowly degrade from fine to total snow over the course of half an hour. Discovery Channel seems particularly prone to this sort of failure, at least here. o No audio. I've seen this in ivtv (working w/Hans to track it down in my case), and sometimes the station blows it, too. Partial ideas for solutions. Help appreciated! o Either look for a suspiciously-small output file (will all that black video produce a very small mpg? Or will it be close-enough to normal size that a heuristic like this won't work?), or have something that counts scene changes and complains if the average is too low. I'm guessing that the guts of mythcommflag might have some of the relevant code, but is there some easy way running something (mencode, or some other tool that groks mpegs) and just having it output the number of scene changes, or something like that? Surely somebody has this tool already. o I dunno how to notice high static. Does it tend to interfere with scene-change detection? Can it be guessed by running some sort of Gaussian filter over a few frames and seeing if they clean up too much or too little? Excessive high-frequency information in either the chroma or luminance channels? The image-processing community probably knows how to do this, but maybe there's a quick & easy idea someone has here, given that we're already talking about mpegs. o Dump the audio out (mplayer input -dumpaudio -dumpfile output) and then look for excessively-low average, or sample it for a few seconds every few minutes and complain if too many of them are silent (or close to silent; compensates for hum, etc). There's probably some simple audio tool that can do this, but I don't know what off the top of my head. The final problem: instructing the backend to retry the recording. This is presumably some simple SQL magic. But what? Thanks for any ideas anyone can suggest... P.S. Is there an easy tool of producing a series of thumbnails of every scene change from a section of video? (Or perhaps just a single frame from every n minutes, regardless of scenes.) That would be handy no matter what, to quickly notice that the middle of something got trashed, or to make it possible to notice that, e.g., PBS decided to show an hour of Exciting Legislators Voting and Debating instead of whatever they originally scheduled, which also happens quite a bit here... :) The idea is to have something so low-bandwidth that it could be quickly checked at the other end of some network link far from home, allowing manual rescheduling via mythweb...
_______________________________________________ mythtv-users mailing list mythtv-users@mythtv.org http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users