SageTV Community  

Go Back   SageTV Community > SageTV Development and Customizations > SageTV Customizations
Forum Rules FAQs Community Downloads Today's Posts Search

Notices

SageTV Customizations This forums is for discussing and sharing user-created modifications for the SageTV application created by using the SageTV Studio or through the use of external plugins. Use this forum to discuss customizations for SageTV version 6 and earlier, or for the SageTV3 UI.

Reply
 
Thread Tools Search this Thread Display Modes
  #41  
Old 03-05-2005, 07:07 PM
snipeman's Avatar
snipeman snipeman is offline
Sage Advanced User
 
Join Date: Jan 2004
Location: Big Easy
Posts: 195
abasu,


I think you are mis-understanding what is going on.

DirMon does exactly what you want to do. What bones means if to put a copy of comskip.exe in the data file directory where your sagetv MPG files are stored, and execute it from there. You don't have to have Sage on the PC that you run DirMon and Comskip from.

You haven't provided info on how you are setup. This program is idea for people who run media servers, meaning those who store their Sage video files on a different PC than the one which runs Sage.

You could still benefit if you store your Sage video files on the Sage PC, by making a share to this drive, and running DirMon on another PC in your house, accessing the share.

I hope I've been clear, and if you need any help, let me know.

Andy
Reply With Quote
  #42  
Old 03-06-2005, 03:32 AM
abasu2003's Avatar
abasu2003 abasu2003 is offline
Sage Expert
 
Join Date: Jul 2004
Posts: 551
Quote:
Originally Posted by snipeman
You could still benefit if you store your Sage video files on the Sage PC, by making a share to this drive, and running DirMon on another PC in your house, accessing the share.
I have my configuration like this. My question is, if I run DirMon on a different p.c., but it accesses comskip from the SagePC, isn't it the Sage PC that has ot use its processor, not the external computer, when it runs comskip?

Also, i still can't get it to work. I don't get the process error anymore, but nothing is triggering comskip. I have the settings (triggers, etc.) set to the default and i have a copy of comskip in each of my directories.
Reply With Quote
  #43  
Old 03-06-2005, 08:42 AM
Jere_Jones's Avatar
Jere_Jones Jere_Jones is offline
Sage Fanatic
 
Join Date: Apr 2004
Location: Jacksonville, FL
Posts: 993
DirMon bugfix posted

Quote:
Originally Posted by abasu2003
I keep getting an error that says "First processor cannot be found"

I have tried this with the default comskip as you'll see and just random exe files and nothign seems to work. The paths are definitely correct and just to make sure, I use the directory browser the program has. I also tried it with quotes and without quotes. Any ideas?
Good catch. I've just posted an update that should fix this. Due to the severity of this bug, I'm suprised anyone has had any luck with DirMon.
Quote:
Originally Posted by abasu2003
I have my configuration like this. My question is, if I run DirMon on a different p.c., but it accesses comskip from the SagePC, isn't it the Sage PC that has ot use its processor, not the external computer, when it runs comskip?
Let's say we have two computers. One named Sally and the other named Fred. Sally has the video files and the comskip program. Fred is running DirMon.

When Fred needs to run comskip, he will download a "temporary" copy from Sally and execute it. Sally isn't busy doing anything but sharing her files (the videos and the exe). Poor Fred is the one sweating because comskip has him working his butt off.

Did that make sense? It is still early.

Jere
__________________
Death to commercials!!!
Latest ShowAnalyzer Beta version: 0.9.7
Reply With Quote
  #44  
Old 03-06-2005, 08:51 AM
JasonJoel JasonJoel is offline
Sage Icon
 
Join Date: Mar 2003
Location: St. Louis, MO
Posts: 1,043
What are the chances of getting DirMon made into a service instead of stand alone app? If you made the original app in dotNET it should be pretty quick and easy to do so.

That would allow people that use the Sage service, and do not log in to the machine locally, to still use DirMon (as a service).

Jason Bottjen
Reply With Quote
  #45  
Old 03-06-2005, 08:58 AM
Jere_Jones's Avatar
Jere_Jones Jere_Jones is offline
Sage Fanatic
 
Join Date: Apr 2004
Location: Jacksonville, FL
Posts: 993
Quote:
Originally Posted by JasonJoel
What are the chances of getting DirMon made into a service instead of stand alone app? If you made the original app in dotNET it should be pretty quick and easy to do so.

That would allow people that use the Sage service, and do not log in to the machine locally, to still use DirMon (as a service).

Jason Bottjen
Having never made a service, I'm not sure. I'm pretty anti-.NET, so I don't forsee making it a .NET app at all.

I'll investigate it. It would be an interesting project.

Jere
__________________
Death to commercials!!!
Latest ShowAnalyzer Beta version: 0.9.7
Reply With Quote
  #46  
Old 03-06-2005, 12:21 PM
JasonJoel JasonJoel is offline
Sage Icon
 
Join Date: Mar 2003
Location: St. Louis, MO
Posts: 1,043
Eh, no big deal. Maybe there aren't that many people who would use it as a service anyway.

I wasn't sure what language you programmed DirMon in (haven't even installed it yet actually - on my list of things to do). I just meant that in dotNET it is super easy to make a windows service out of a standalone app if you decide to after the fact. I wasn't touting dotNET as the perfect language though, it has its own share of issues.

And I certainly wasn't suggesting to re-write what you have done .

JasonJoel

Quote:
Originally Posted by Jere_Jones
Having never made a service, I'm not sure. I'm pretty anti-.NET, so I don't forsee making it a .NET app at all.

I'll investigate it. It would be an interesting project.

Jere
Reply With Quote
  #47  
Old 03-06-2005, 02:59 PM
snipeman's Avatar
snipeman snipeman is offline
Sage Advanced User
 
Join Date: Jan 2004
Location: Big Easy
Posts: 195
Jere,

I upgraded to the new version of DirMon with the fix, and it actually gave me the reverse effect. Both of the first 2 versions ran fine, the new one gives me the "Processor can not be found" error message with my old settings.

I put quotes around all processor entries and the new version is working fine.

Looks like the file detect routines still need a little polishing.

Andy
Reply With Quote
  #48  
Old 03-06-2005, 05:55 PM
Jere_Jones's Avatar
Jere_Jones Jere_Jones is offline
Sage Fanatic
 
Join Date: Apr 2004
Location: Jacksonville, FL
Posts: 993
Quote:
Originally Posted by JasonJoel
Eh, no big deal. Maybe there aren't that many people who would use it as a service anyway.
I didn't think there were many people that would use DirMon at all, but it seems as though there are about 30 or so that are using it. You never know.
Quote:
Originally Posted by JasonJoel
I wasn't sure what language you programmed DirMon in (haven't even installed it yet actually - on my list of things to do). I just meant that in dotNET it is super easy to make a windows service out of a standalone app if you decide to after the fact. I wasn't touting dotNET as the perfect language though, it has its own share of issues.
I program in C++, so converting it to .NET should be relatively easy (I think). The problem (that I see), is that then the .NET framework would need to be installed on any computer for DirMon to run.
Quote:
Originally Posted by JasonJoel
And I certainly wasn't suggesting to re-write what you have done .
Heck, I'm doing that now already. Adding a tab based interface is a major overhaul. And it seems that it wasn't quite as "unlimited processor" friendly as I thought. It's a lot of work, but I'm learning a lot as well.

Jere
__________________
Death to commercials!!!
Latest ShowAnalyzer Beta version: 0.9.7
Reply With Quote
  #49  
Old 03-06-2005, 05:57 PM
Jere_Jones's Avatar
Jere_Jones Jere_Jones is offline
Sage Fanatic
 
Join Date: Apr 2004
Location: Jacksonville, FL
Posts: 993
Quote:
Originally Posted by snipeman
I upgraded to the new version of DirMon with the fix, and it actually gave me the reverse effect. Both of the first 2 versions ran fine, the new one gives me the "Processor can not be found" error message with my old settings.

I put quotes around all processor entries and the new version is working fine.

Looks like the file detect routines still need a little polishing.

Andy
Can you post (or email me) your ini file? I think that once I can get everyone using absolute file paths then most of these "can not be found" problems will go away. (I hope).

Jere
__________________
Death to commercials!!!
Latest ShowAnalyzer Beta version: 0.9.7
Reply With Quote
  #50  
Old 03-06-2005, 10:14 PM
snipeman's Avatar
snipeman snipeman is offline
Sage Advanced User
 
Join Date: Jan 2004
Location: Big Easy
Posts: 195
Here it is:


; DirMon initialization file
; Copyright (c) 2005
; Jeremiah M. Jones
; DO NOT EDIT MANUALLY
StartInTray = 1
Frequency = 600
WhileLive = 0
WhileRecording = 1
Directories = I:\\SageTV
Source = mpg,mpeg
Target = txt,log,ccyes,ccno,smi,srt
Hide1 = 1
Hide2 = 1
Hide3 = 1
triggers1 = smi
Processor1 = "I:\SageTV\Processors\mpg2srt.exe"
Trigger2 = txt
Processor2 = "I:\SageTV\Processors\comskip.exe"
Reply With Quote
  #51  
Old 03-06-2005, 11:13 PM
abasu2003's Avatar
abasu2003 abasu2003 is offline
Sage Expert
 
Join Date: Jul 2004
Posts: 551
I still haven't gotten my to work. Now the problem is that programs needing comskipping aren't getting comskipped. I checked and there is a TheSimpsons-HomerandNedsHailMaryPass-3687157-0.mpg without a TheSimpsons-HomerandNedsHailMaryPass-3687157-0.txt.

I stopped and started the process over and over again with different triggers but nothing got it to go. It just kept saying "Nothign to do...sleeping now..."

My .ini file is below.


; DirMon initialization file
; Copyright (c) 2005
; Jeremiah M. Jones
; DO NOT EDIT MANUALLY
StartInTray = 0
Frequency = 3600
WhileLive = 1
WhileRecording = 1
Directories = \\\\Martyvo\\TV,\\\\Martyvo\\SageTV
Source = mpg,mpeg
Target = txt,log,ccyes,ccno
Hide1 = 0
Hide2 = 1
Hide3 = 1
triggers1 = txt
Processor1 = "C:\Program Files\Frey Technologies\SageTV\comskip.exe"

Actually, I just checked and it seems to work if I pick a local directory for the target folder. So I guess I can't go over the network with the latest version.


UPDATE:
I just got it to work using mapped drives.

I also have a question. Cayars has a program that deletes partially created comskip files I believe by checking to see whether there is a ccyes file or a ccno file. Is there anyway to make that possible, or someother way to use this program to delete partially created comskip files, since you wrote the comskip code.

Last edited by abasu2003; 03-06-2005 at 11:49 PM.
Reply With Quote
  #52  
Old 03-07-2005, 09:07 AM
JasonJoel JasonJoel is offline
Sage Icon
 
Join Date: Mar 2003
Location: St. Louis, MO
Posts: 1,043
Ah, well making a service in C++ isn't that bad either (not nearly as easy as it is in dotNET, but still doable).

The only real bitch if if you want to make a service out of a VB app. I didn't figure you did this in VB though.

Jason

Quote:
Originally Posted by Jere_Jones
I program in C++

Jere
Reply With Quote
  #53  
Old 03-08-2005, 06:26 PM
Jere_Jones's Avatar
Jere_Jones Jere_Jones is offline
Sage Fanatic
 
Join Date: Apr 2004
Location: Jacksonville, FL
Posts: 993
snipeman: I found the problem and I think the next version will act right.

abasu: The next version has some more advanced logic so that you can make the comskip processor trigger if (txt exists) and (ccyes or ccno do not exist). Since it only runs one processor at a time. Any failed comskip run will be "rerun". Of course this could end up in a loop if there is a repeatable problem. And the next version should work on networked directories (i.e. not mapped)

JasonJoel: VB? ugh! Only for macros in office do I touch VB.

Question for all: How do you want the ignore list? Should it be a single line like the source and target boxes or a bigger box like the directories box?

News for all: I have rewritten almost the entire program and as soon as I handle priorities, black out times, and the ignore list I'll release the next version.

Jere

P.S. And remember: donations are welcome...
__________________
Death to commercials!!!
Latest ShowAnalyzer Beta version: 0.9.7
Reply With Quote
  #54  
Old 03-08-2005, 11:51 PM
justme justme is offline
Moderator
 
Join Date: Mar 2003
Location: Greater Baltimore/Washington Metropolitan area
Posts: 1,481
Thumbs up

Quote:
P.S. And remember: donations are welcome...
Well... Since you did say the next version would have a basic form of the expanded logic(ie If txt exists and ccno doesn't then launch processor) I requested, I guess I can spare a few dollars. Seriously, I'll definitely make a donation by the weekend. I just need to wait for some expected rebate checks to come back first.
Quote:
News for all: I have rewritten almost the entire program and as soon as I handle priorities, black out times, and the ignore list I'll release the next version.
Ignore lists and blackout times.
Priorities, as in the CPU throttling(of specific proccessors) by monitoring a specific system proccess's CPU usage levels, like you talked about in post 3 of this thread? If so once you get all processor pathes(network,mapping,UNC,etc) working, DirMon will be almost perfect. As far as I can see, that would only leave...
1)The possibilty of some kind of distrubuted(using multiple systems on a network) communication protocol to help spread the load.
2)Ability to run as a service, so no need for logon. I personally don't need a service version yet, but hey don't let that stop you.
These features would truelly make the app perfection. Still even if you never add these advanced features, I want you to know how much I appreciate your great little app.

Quote:
Question for all: How do you want the ignore list? Should it be a single line like the source and target boxes or a bigger box like the directories box?
I personally would like a bigger box, like the directories box. I know I'd find it much easier to understand at a glance. It should also make adding and removing "ignores" from the list easier, if it was vertically based like the directries box. Maybe it could be worked into a tab screen to help keep the interface clean, if needed.

PS:Apologies for not getting back to you with testing data(for processor pathes), but it appears Snipeman and abasu2003 have given you the needed info.

/justme
Reply With Quote
  #55  
Old 03-09-2005, 01:41 AM
snipeman's Avatar
snipeman snipeman is offline
Sage Advanced User
 
Join Date: Jan 2004
Location: Big Easy
Posts: 195
Jere,

I like the idea of a bigger box like the directories box for the ignore file list. But I don't have a strong opionion on this, whatever works best in your programming structure.

MPG2SRT still crashes on me occasionally. It does it about once a day. I'm not blaming DIRMON, but it does bring up a new point / possible feautre. When MPG2SRT crashes, DIRMON never runs another processor because it thinks MPG2SRT is running forever.

I know you are gonna hate me, but what about a time field for how long a processor should run before DIRMON considers it finished no matter what. For example, you could enter 1 hour in the field for MPG2SRT. If the MPG2SRT.EXE hasn't scanned a file for CC data in an hour, clearly it isn't going to happen. This field would be associated with a specific processor.

Windows XP scheduling has this type of functionality. Obviusly this issue has been run into just once or twice in the past

If it is too hard to implement, I understad. Ignore list and blackout times will do me nicely.

Andy
Reply With Quote
  #56  
Old 03-09-2005, 03:26 PM
Jere_Jones's Avatar
Jere_Jones Jere_Jones is offline
Sage Fanatic
 
Join Date: Apr 2004
Location: Jacksonville, FL
Posts: 993
Version 0.2.0 is now posted.

Priorities and throttling are still not implemented, but (I think) everything else is. To include:
  1. Ignore lists
  2. Unlimited number of processors
  3. Blackout times
  4. Timeouts on processos (will attempt to terminate the process after the timeout)
  5. Much more advanced logic on triggers
  6. Command line options
The installer and release notes are in the first post.

Enjoy...
Jere
__________________
Death to commercials!!!
Latest ShowAnalyzer Beta version: 0.9.7
Reply With Quote
  #57  
Old 03-09-2005, 04:15 PM
snipeman's Avatar
snipeman snipeman is offline
Sage Advanced User
 
Join Date: Jan 2004
Location: Big Easy
Posts: 195
Jere,

I installed and am testing. I know your notes said the old INI file is incompatible. I had to uninstall the old version before the new one went in. Once I nuked the old directory, all was fine.

The program found my processors with no problems.

DirMon appears to let you add an ignore filename of "". This might be dangerous, might not... just a note. Here is my initial INI file that I'm testing with: I deleted a few of each type trigger manually to put it though its paces. I'll let you know if I see anything else.

; DirMon initialization file
; Copyright (c) 2005
; Jeremiah M. Jones
; DO NOT EDIT MANUALLY
Version = 0.2
StartInTray = 1
Frequency = 300
WhileLive = 0
WhileRecording = 1
Directories = I:\\SageTV
Source = mpg,mpeg
Target = txt,log,ccyes,ccno,smi,srt
BlackoutEnabled = 1
BlackoutStartTime = 1830
BlackoutEndTime = 2300
TimeoutEnabled = 1
TimeoutLength = 3600
[Processor 0]
Path = I:\SageTV\Processors\comskip.exe
Hide = 1
Ignore = Carnival,RealTime,ThrWire,Sopranos,Bullshit
DoesExistLogic = OR
BothLogic = AND
DoesNotExistTrigger1 = txt
DoesNotExistLogic = AND
[Processor 1]
Path = I:\SageTV\Processors\mpg2srt.exe
Hide = 1
DoesExistLogic = OR
BothLogic = AND
DoesNotExistTrigger1 = smi
DoesNotExistLogic = AND
Reply With Quote
  #58  
Old 03-09-2005, 05:39 PM
Jere_Jones's Avatar
Jere_Jones Jere_Jones is offline
Sage Fanatic
 
Join Date: Apr 2004
Location: Jacksonville, FL
Posts: 993
snipeman,
I guess I should have explained the ignore list a little more.

The ignore lists work on the idea of wildcards. Specifically:
  • The ignore list only matches against the base filename
  • ? will match any one character
  • * will match any number of characters
As an example, your first ignore item will match only "Carnival.mpg" or
"Carnival.mpeg".

If you want to match "Carnival-TheReturn-12490-0.mpg" you need to put "Carnival*" as the ignore term.

As a side effect of this, an ignore term of "" will not match anything (well, it won't match anything Sage will create).

I'm also glad to see that I seem to have made the right decision making the ignore list a per processor list vice a global list.

Jere
__________________
Death to commercials!!!
Latest ShowAnalyzer Beta version: 0.9.7
Reply With Quote
  #59  
Old 03-09-2005, 08:20 PM
snipeman's Avatar
snipeman snipeman is offline
Sage Advanced User
 
Join Date: Jan 2004
Location: Big Easy
Posts: 195
Jere,

Glad I posted my INI file. I didn't know wildcards were active.

Bug report:

DirMon is not saving the settings on timeout of a processor. I change it to 1 hour, and check the box in Global settings, save my settings and exit the program.

I reload the program, and the box is unchecked, and the setting is back to 1 second.

I'm not sure what happened, but it appeard to be active anyway, and was timing out processors after 1 second.

Something a little weird is going on in this area of the program.

Everything else appeared to work perfectly.

Andy
Reply With Quote
  #60  
Old 03-09-2005, 08:34 PM
snipeman's Avatar
snipeman snipeman is offline
Sage Advanced User
 
Join Date: Jan 2004
Location: Big Easy
Posts: 195
When entering an ignore filename, if you hit cancel, it still puts a blank entry in the list.


Minor bug...


Andy
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -6. The time now is 06:27 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.