|
SageTV v7 Customizations This forums is for discussing and sharing user-created modifications for the SageTV version 7 application created by using the SageTV Studio or through the use of external plugins. Use this forum to discuss plugins for SageTV version 7 and newer. |
|
Thread Tools | Search this Thread | Display Modes |
#181
|
|||
|
|||
Quote:
__________________
Twitter: @ddb_db Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive Capture: 2 x Colossus STB Controller: 1 x USB-UIRT Software:Java 1.7.0_71; SageTV 7.1.9 Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter Plugins: Too many to list now... |
#183
|
||||
|
||||
I'm not sure what you mean by this statement. You should never HAVE to setup a Task. Can you explain in a little more detail please?
__________________
Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders. |
#184
|
|||
|
|||
If it is the same as below then good. Otherwise ignore this post as worthless chatter that I will delete later after hchucky's reply.
From program guide I select a show to record and press the "Record" button on the remote for a manual record. A popup displays "Task and Trigger Events" |
#185
|
||||
|
||||
Got it! Thanks.
__________________
Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders. |
#186
|
|||
|
|||
How exactly do the return codes work and what do I have to change to make comskip return the correct status. I looked through the wiki fies but I couldn't find this anywhere.
__________________
New Server - Sage9 on unRAID 2xHD-PVR, HDHR for OTA Old Server - Sage7 on Win7Pro-i660CPU with 4.6TB, HD-PVR, HDHR OTA, HVR-1850 OTA Clients - 2xHD-300, 8xHD-200 Extenders, Client+2xPlaceshifter and a WHS which acts as a backup Sage server |
#187
|
||||
|
||||
Trying to get into this SJQv4, tasks & groovy thingy. Have assigned my own custom task called "POSTJOB". Set to be run on "RecordingStopped". Will run my VideoReDo quickfix & comskip stuff. Got that to work.
But now I want to expand my checking a little. Have some special stuff that is to delete a recording I do each night (keeps up the stability of my CAM/SmartCards, plus: needed for my EPG grab each night). In short: I started looking at SJQ4_CHAN_NAME & SJQ4_TITLE. Both are empty ? Then started checking the SJQ4_TYPE. It is set to "MediaFile", for all my recordings ? Shouldn't it be "Airing" ? Giving the metadata I need. Or am i missing something ?
__________________
SageTV 7.1.9 (headless/service) • JavaRE 1.6.0_37 • 2x FloppyDTV C/CI (DVB-C) (fw: 1.2.10 B43110) (CAM: Conax) • Win7 x64 • Intel E3-1245V2 3.4GHz • 16GB PC3-10600 ECC • ASUS P8C WS (Intel C216) • APC Back-UPS RS 800 • STP-HD300 Extender (fw: beta 20110506 0) - HDMI/SPDIF - Yamaha RX-V2700 - HDMI - Sony KDL-52X2000 |
#188
|
|||
|
|||
Quote:
HC |
#189
|
||||
|
||||
Quote:
Anyway. Did the following: Code:
Object objAiring = MediaFileAPI.GetMediaFileAiring(objMediaFile); string strChanName = AiringAPI.GetAiringChannelName(objAiring); @Slugger: Thanks for the "," vs. "." on SQL fix. Everything solved for my regional settings
__________________
SageTV 7.1.9 (headless/service) • JavaRE 1.6.0_37 • 2x FloppyDTV C/CI (DVB-C) (fw: 1.2.10 B43110) (CAM: Conax) • Win7 x64 • Intel E3-1245V2 3.4GHz • 16GB PC3-10600 ECC • ASUS P8C WS (Intel C216) • APC Back-UPS RS 800 • STP-HD300 Extender (fw: beta 20110506 0) - HDMI/SPDIF - Yamaha RX-V2700 - HDMI - Sony KDL-52X2000 |
#190
|
|||
|
|||
I am trying to get my Transcode jobs working via SJQv4. A couple of questions/comments:
Here is my error: Code:
LOG4J: Configured Logging for: sagex-api using file: sagex-api.log4j.properties javax.script.ScriptException: groovy.lang.MissingMethodException: No signature of method: sagex.api.TranscodeAPI.AddTranscodeJob() is applicable for argument types: (sagex.remote.RemoteObjectRef, java.lang.String, java.lang.String, java.lang.Boolean) values: [RemoteObjectRef[29225822];, MPEG4-Good Quality AVI, \\Carnoustie\Videos\Isabella's Shows\Toopie and Binoo\Sparkle Binoo; Toopy's Surprise; Sky Friends; Binoo's Birthday.avi, false] Possible solutions: AddTranscodeJob(java.lang.Object, java.lang.String, java.io.File, boolean), AddTranscodeJob(sagex.UIContext, java.lang.Object, java.lang.String, java.io.File, boolean), AddTranscodeJob(java.lang.Object, java.lang.String, java.io.File, boolean, long, long), GetTranscodeJobs(), AddTranscodeJob(sagex.UIContext, java.lang.Object, java.lang.String, java.io.File, boolean, long, long) edit - I tried it with simpler filenames without semi-colons and I get the same error. Will this line (which I stole from Slugger's comskip.groovy file) work for my final question: fileName.substring(0, fileName.lastIndexOf('.'))
__________________
New Server - Sage9 on unRAID 2xHD-PVR, HDHR for OTA Old Server - Sage7 on Win7Pro-i660CPU with 4.6TB, HD-PVR, HDHR OTA, HVR-1850 OTA Clients - 2xHD-300, 8xHD-200 Extenders, Client+2xPlaceshifter and a WHS which acts as a backup Sage server Last edited by wayner; 12-29-2010 at 03:23 PM. |
#191
|
||||||
|
||||||
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
__________________
Twitter: @ddb_db Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive Capture: 2 x Colossus STB Controller: 1 x USB-UIRT Software:Java 1.7.0_71; SageTV 7.1.9 Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter Plugins: Too many to list now... Last edited by Slugger; 12-29-2010 at 10:43 PM. Reason: Not a remote API bug, but a script bug; method call expecting File, received String |
#192
|
|||
|
|||
@wayner Please note my edit to the above reply. There is no bug with the remote APIs, it's a bug with your groovy script. (Caught it after rereading the post and before bugging Sean ) The call to AddTranscodeJob() expects a File parameter for the file name, not a string. Wrap the file name string in a 'new File()' call. Should fix you up.
i.e. Code:
AddTranscodeJob(mf, "MPEG4-Good Quality AVI", new File("\\Carnoustie\Videos\Isabella's Shows\Toopie and Binoo\Sparkle Binoo; Toopy's Surprise; Sky Friends; Binoo's Birthday.avi"), false)
__________________
Twitter: @ddb_db Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive Capture: 2 x Colossus STB Controller: 1 x USB-UIRT Software:Java 1.7.0_71; SageTV 7.1.9 Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter Plugins: Too many to list now... |
#193
|
|||
|
|||
Thanks Slugger, that did the trick. I assume that I can pass other parameters to my script, such as the folder where the output file of the transcode should be stored? This would save me having to do a different script for every show.
One other question - how do I change the return code settings to deal with the wonkiness of how Comskip is different from other programs?
__________________
New Server - Sage9 on unRAID 2xHD-PVR, HDHR for OTA Old Server - Sage7 on Win7Pro-i660CPU with 4.6TB, HD-PVR, HDHR OTA, HVR-1850 OTA Clients - 2xHD-300, 8xHD-200 Extenders, Client+2xPlaceshifter and a WHS which acts as a backup Sage server |
#194
|
|||
|
|||
Quote:
Quote:
__________________
Twitter: @ddb_db Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive Capture: 2 x Colossus STB Controller: 1 x USB-UIRT Software:Java 1.7.0_71; SageTV 7.1.9 Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter Plugins: Too many to list now... |
#195
|
|||
|
|||
Quote:
I guess I could rename the folders but I don't know if that would hose my existing metadata since the file paths will have changed. And having commas and exclamation points in folder names is likely also a bad idea.
__________________
New Server - Sage9 on unRAID 2xHD-PVR, HDHR for OTA Old Server - Sage7 on Win7Pro-i660CPU with 4.6TB, HD-PVR, HDHR OTA, HVR-1850 OTA Clients - 2xHD-300, 8xHD-200 Extenders, Client+2xPlaceshifter and a WHS which acts as a backup Sage server |
#196
|
|||
|
|||
Ok, you can pass args to scripts (in the task setup screen/props file), but it can't be done dynamically (right now). Someone else opened a ticket (I think - edit: maybe not, don't see it) for that feature, but unless you can somehow generate the folder name dynamically, I think you're going to be stuck with a task for each show regardless if dynamic cmd args is added. The best alternative I can think of off the top of my head is to put a hashmap at the top of your groovy script that maps the shows to folder names and then use that in your groovy script. Then you just add shows to the hashmap as necessary.
__________________
Twitter: @ddb_db Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive Capture: 2 x Colossus STB Controller: 1 x USB-UIRT Software:Java 1.7.0_71; SageTV 7.1.9 Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter Plugins: Too many to list now... |
#197
|
|||
|
|||
That is what I as thinking - I will have to create a separate task for each show, but at least they should be able to share the same groovy script. If I am passing a parameter with spaces should I be encasing it in quotes?
By the way, is there any easy way to test your scripts. I have been going into TV and manually assigning a SJQ task. I then have to go back to Setup/SJQ/Show Completed (or Queued) Tasks to check the logs to see if everything is working. I guess I could go into the lobs folder but that requires you to be on a PC with mapping to the system drive of the server. Also - is there a way to run my groovy scripts outside of Sage/SJQ to check for stuff like Syntax, etc. Is there a groovy interpreter/compiler that you would recommend? I guess it wouldn't be able to handle stuff like SJQ Env vars but it would allow you to check your syntax, string manipulation, etc and to learn groovy.
__________________
New Server - Sage9 on unRAID 2xHD-PVR, HDHR for OTA Old Server - Sage7 on Win7Pro-i660CPU with 4.6TB, HD-PVR, HDHR OTA, HVR-1850 OTA Clients - 2xHD-300, 8xHD-200 Extenders, Client+2xPlaceshifter and a WHS which acts as a backup Sage server |
#198
|
|||
|
|||
Quote:
Code:
def folderMap = ["Blah Blah":"blah", "Another Show!!", "Show"] // etc... Yes, args with spaces need to be double quoted. Quote:
Quote:
__________________
Twitter: @ddb_db Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive Capture: 2 x Colossus STB Controller: 1 x USB-UIRT Software:Java 1.7.0_71; SageTV 7.1.9 Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter Plugins: Too many to list now... |
#199
|
|||
|
|||
That looks useful since I have no idea how to use groovy so it is nice to try out scripts of the "Hello World" type.
How exactly to Hashmaps work? Let's say I have "Dora The Explorer" mapped to \Dora\ and "Go, Diego, Go!" mapped to \Diego\ would that look like: def folderMap = ["Dora The Explorer":"Dora", "Go, Digeo, Go!": "Diego"] Where would the new folder names be stored? In a string variable called folderMap? Is this something I would find in a groovy doc somewhere? (Sorry I haven't done much programming in a while - my Eng degree in the mid 80s was during the Fortran 77 era!) Do you have a link to the Groovy distro with the GUI editor that you showed, even if it can't be used perfectly for SJQ?
__________________
New Server - Sage9 on unRAID 2xHD-PVR, HDHR for OTA Old Server - Sage7 on Win7Pro-i660CPU with 4.6TB, HD-PVR, HDHR OTA, HVR-1850 OTA Clients - 2xHD-300, 8xHD-200 Extenders, Client+2xPlaceshifter and a WHS which acts as a backup Sage server |
#200
|
|||
|
|||
Quote:
Code:
String title = MediaFileAPI.GetMediaTitle(mf) String folderName = folderMap[title] File folder = new File(folderName) // Then use the folder var in your call to AddTranscodeJob(); of course you'll want to check that folderName isn't null (i.e. the title wasn't defined in the hashmap, etc.), I don't show the error checking in this example. Quote:
User Guide: http://groovy.codehaus.org/User+Guide Quote:
SJQ uses 1.7.5, looks like 1.7.6 is now available; either should be fine. This doc explains how to invoke the GUI editor: http://groovy.codehaus.org/Groovy+Console Remember, scripts that run in SJQ that use the various SJQ/Sage API global vars won't run in this env; they'll fail with undefined var errors, etc. But it's a good place to muck around with basic groovy scripts, etc.
__________________
Twitter: @ddb_db Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive Capture: 2 x Colossus STB Controller: 1 x USB-UIRT Software:Java 1.7.0_71; SageTV 7.1.9 Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter Plugins: Too many to list now... |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Plugin: MizookLCD (Alternate SageTV LCDSmartie Plugin) | cslatt | SageTV Customizations | 48 | 06-11-2012 10:44 AM |
SJQv4: Technology Preview | Slugger | SageTV v7 Customizations | 39 | 12-17-2010 01:17 PM |
SageTV Plugin Developers: Any way to see stats for your plugin? | mkanet | SageTV Software | 4 | 12-12-2010 10:33 PM |
MediaPlayer Plugin/STV Import: Winamp Media Player Plugin | deria | SageTV Customizations | 447 | 12-11-2010 07:38 PM |
SJQv4: Design Discussion | Slugger | SageTV v7 Customizations | 26 | 10-18-2010 08:22 AM |