|
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. |
|
Thread Tools | Search this Thread | Display Modes |
#1001
|
|||
|
|||
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... |
#1002
|
|||
|
|||
Quote:
__________________
Server 2003 r2 32bit, SageTV9 (finally!) 2x Dual HDHR (OTA), 1x HD-PVR (Comcast), 1x HDHR-3CC via SageDCT (Comcast) 2x HD300, 1x SageClient (Win10 Test/Development) Check out TVExplorer |
#1003
|
||||
|
||||
Multiple Transcode Filters
Hi,
Is it possible to run multiple filters for kicking of a transcode job? I am trying to do this... # Convert 1hr or longer HD files if [IsObjMediaFile == true && IsViewingMedia == false && Filename =$ ".ts" && MediaSize > 4000000000 && $.IsFileCurrentlyRecording{} == false] { # Use timeOfDay with quoted times in if statement above :PRIORITY 300 :TRANSCODEOPTS "AppleTV-High Quality" "false" _TRANSCODE } but also allow this # Convert files older than 30 days if [IsObjMediaFile == true && MediaAge >= "30D" && Filename =$ ".mpg" && FileExists = "%d%/%p%.edl"] { # Use timeOfDay with quoted times in if statement above :PRIORITY 30 :TRANSCODEOPTS "iPhone-Standard" "false" _TRANSCODE and perhaps this # Convert shorter HD files if [IsObjMediaFile == true && IsViewingMedia == false && Filename =$ ".ts" && MediaSize <= 4000000000 && $.IsFileCurrentlyRecording{} == false] { # Use timeOfDay with quoted times in if statement above :PRIORITY 200 :TRANSCODEOPTS "iPhone-Widescreen" "false" _TRANSCODE } If not, what would you suggest to accomplish the same tasks? Thank you. Last edited by doncote0; 09-08-2010 at 02:38 AM. |
#1004
|
|||
|
|||
You can have all three of those rules, but any one recording is only ever going to run one of those transcode tasks unless the transcoded output retains the same file extension, but you don't want to do that otherwise SJQ will constantly retranscode the same file over and over again. If you want to handle different files with those different rules then that's fine and should work as intended.
One note, though. Change the value of your MediaSize test to "4G" as that test expects a string with a multiplier instead of an actual number value so: Code:
MediaSize > "4G" Code:
MediaSize > 4000000000
__________________
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... |
#1005
|
||||
|
||||
Thanks for the quick response!
I'll give it a try with "4G" instead of 4000000000.
|
#1006
|
||||
|
||||
So I've never noticed this before, but running files through MediaShrink via SJQ causes the "Encoded by: (tuner)" information to be lost on the media. (Kind of a bummer, especially down the road if one needs to debug a particular tuner.) If I use Sage's built-in transcoder, with _TRANSCODE, it's retained.
I don't think I'm doing anything out of the ordinary, passing /inPlace /batch /onePass on the command line. It probably has to do with the way MediaShrink disposes of the original file. Is this a known issue?
__________________
Server: AMD 9600 Phenom on XP, Gigabyte GA-MA78GPM, 2GB RAM, 320+250+500 GB SATA drives, HDHomeRun Prime, HD-PVR x.5.1, Paterson serial Client/Encoder:AMD 3800+ X2, 512 MB RAM, ATI X1650 XT, nMediaPC case, Hauppauge HD-PVR, Cyberlink/ArcSoft decoders, USB-UIRT Client/Encoder: AMD 3800+ X2, 512 MB RAM, 6150 graphics, nMediaPC case, ArcSoft decoders Client: HD300, Asus Pundit P1-AH1, AMD 3800+ X2 CPU, 1 GB RAM, 6150 graphics, ArcSoft decoders Backup: Synology SageTV version: FINAL |
#1007
|
|||
|
|||
It's probably more to do with how the core handles finding the replacement file. I suspect when you use the Sage transcoder it does things to ensure all metadata for the recording is maintained. When you transcode via an external process the core probably first loses the original media file, deletes it from wiz.bin, then finds the new one and replaces it. I suspect that process loses some of the metadata about the original recording, namely the tuner used to record (probably among other things).
__________________
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... |
#1008
|
||||
|
||||
Quote:
Now the question is can one set the metadata on the MediaShrink created replacement file with the original encoder name from within SJQ?
__________________
Server: AMD 9600 Phenom on XP, Gigabyte GA-MA78GPM, 2GB RAM, 320+250+500 GB SATA drives, HDHomeRun Prime, HD-PVR x.5.1, Paterson serial Client/Encoder:AMD 3800+ X2, 512 MB RAM, ATI X1650 XT, nMediaPC case, Hauppauge HD-PVR, Cyberlink/ArcSoft decoders, USB-UIRT Client/Encoder: AMD 3800+ X2, 512 MB RAM, 6150 graphics, nMediaPC case, ArcSoft decoders Client: HD300, Asus Pundit P1-AH1, AMD 3800+ X2 CPU, 1 GB RAM, 6150 graphics, ArcSoft decoders Backup: Synology SageTV version: FINAL |
#1009
|
|||
|
|||
Yes, but it would have to be done in your mediashrink process. Let's assume you call a batch file that wraps the call to mediashrink. In that same batch file you'd have to call other scripts (you create) that extract the metadata from the original and then add it into the newly created mediafile. These scripts can be written using the sagex remote APIs, etc. It's certainly not easy, but doable, I think.
__________________
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... |
#1010
|
|||
|
|||
I am using a dedicated quad core computer to run Comskip and AirVideo Server. Even with the quad core having 4 instances of Comskip consume almost 100% CPU. And the is no space for AirVideo which is also CPU hungry process.
I would go to SageAlert WEB UI via my iPhone, change the client Resources to 50 (2 Comskips running). Then I can use AirVideo Live Conversion. I would like to request an additional option for Client: Disable/Enable. Disabling client should kill all current jobs. Enabling client should run MediaFileQueueLoader to add them back. Or if possible to add drop-down to quickly specify number of processes for this client killing extra jobs if any. Editing Resources on a tiny iPhone screen is very inconvinient. Thanks.
__________________
Vostro 200, Intel Core 2 Duo 2.53Ghz, Windows XP Pro as a Server and Client Quad Core 2.66 PC on 1000 MHz network for Comskip and AirVideo 4 x Comcast RNG110 tuners, 3 x Firewire + 1 USB-Uirt Channel control 4 x HD-PVR, 1 WinTV 1850 Composite and TS SageTV V7.0.23 |
#1011
|
|||
|
|||
You could just configure comskip to throttle the usage down so it's not so CPU hungry. Do the comskip processes really need to get done as quickly as possible?
__________________
Server: i5 8400, ASUS Prime H370M-Plus/CSM, 16GB RAM, 15TB drive array + 500GB cache, 2 HDHR's, SageTV 9, unRAID 6.6.3 Client 1: HD300 (latest FW), HDMI to an Insignia 65" 1080p LCD and optical SPDIF to a Sony Receiver Client 2: HD200 (latest FW), HDMI to an Insignia NS-LCD42HD-09 1080p LCD |
#1012
|
||||
|
||||
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... |
#1013
|
|||
|
|||
I think I misunderstood. AirVideo isn't a task triggered by SJQ, but just something else running on the same server? In that case, you'll have to throttle back the number of processes you allow the SJQ client to run on that system. Such resource management is definitely required on the user's part. You have to play the sysadmin role and take a look at the big picture of what your system is doing and then plan accordingly when configuring things like SJQ, etc. to ensure there are always enough actual resources available on the system to do everything you need the system to do.
__________________
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... |
#1014
|
|||
|
|||
Quote:
Quote:
But most of the time I don't use it and would like to have all computer resources to be used for comskip. So it is a resource management just remotely via SJQ WEB GUI. There may be more reasons to stop client. Like if one needs to use client computer for something else. The ability to stop client ad-hoc should be useful. I get the point about endless new features. Lets forget about drop-down. I just suggest to have this: Configure View Log Disable/Enable If Disable is selected, warning "All current jobs will be marked as failed" displays and if confirmed, all jobs are killed and Client is disabled. Quote:
__________________
Vostro 200, Intel Core 2 Duo 2.53Ghz, Windows XP Pro as a Server and Client Quad Core 2.66 PC on 1000 MHz network for Comskip and AirVideo 4 x Comcast RNG110 tuners, 3 x Firewire + 1 USB-Uirt Channel control 4 x HD-PVR, 1 WinTV 1850 Composite and TS SageTV V7.0.23 Last edited by lenkost; 09-15-2010 at 01:25 AM. |
#1015
|
|||
|
|||
This is manageable, but as I say, the future of SJQ dev is up in the air at this time. I see the ticket in the project tracker so that's about all you can do.
__________________
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... |
#1016
|
||||
|
||||
I'm trying to prevent the SageTVTranscoder and MediaShrink (i.e. Handbrake) from running at the same time to conserve resources. Theres no win to have them going concurrently, even on a quad core. Especially if the files reside on the same disc.
I'm probably mistaken, but there doesn't appear to be a way to cross-check resource availability. I can check within each compression type i.e TranscodeQueueSize for the SageTVTranscoder and RESOURCES within the client script for MediaShrink to see if the same type process is running. What I want to do is check if the OTHER type is running and only run if it isn't. Make sense? Is there an obvious way to do that which I'm missing? I could call the SageTVTranscoder directly myself I guess in a client script, which could use the SJQ RESOURCE mechanism. But then I'd have to build up all the cmd line options for the transcoder myself. But I'm lazy! BTW I'm only doing this because for some reason, MediaShrink is having deinterlacing problems of late on 1080i MPEGs from the HDHomeRun. Not sure what's going on there but I've had to split the compression duties for MPEGs because of that.
__________________
Server: AMD 9600 Phenom on XP, Gigabyte GA-MA78GPM, 2GB RAM, 320+250+500 GB SATA drives, HDHomeRun Prime, HD-PVR x.5.1, Paterson serial Client/Encoder:AMD 3800+ X2, 512 MB RAM, ATI X1650 XT, nMediaPC case, Hauppauge HD-PVR, Cyberlink/ArcSoft decoders, USB-UIRT Client/Encoder: AMD 3800+ X2, 512 MB RAM, 6150 graphics, nMediaPC case, ArcSoft decoders Client: HD300, Asus Pundit P1-AH1, AMD 3800+ X2 CPU, 1 GB RAM, 6150 graphics, ArcSoft decoders Backup: Synology SageTV version: FINAL |
#1017
|
|||
|
|||
There is no way to do this directly with SJQ. You'd have to wrap your call to mediashrink in another script and in that script check the status of the Sage transcode queue before deciding to run. The SJQ internal task for transcoding is not capable of checking external conditions before deciding to run (other than the conditions that were checked in the ruleset before queuing up the task itself). SJQ tasks are not aware of other SJQ tasks (either running or in the queue). There is no way for a task to view the state of the queue before making any decision to launch.
__________________
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... |
#1018
|
||||
|
||||
Problems SJQ'ing videoredo
I am running videoredo 4 and the process works fine when run manually.
However, when it is kicked off by SJQ it never completes. The command line is START /B /Wait /BELOWNORMAL cscript //nologo C:\Progra~2\VideoReDoTVSuite4\vp.vbs "%~d1%~p1%~n1.ts" "%~d1\%~n1.ts" /t4 /q /e I ran an echo of this to a bat file for a test file and got this: START /B /Wait /BELOWNORMAL cscript //nologo C:\Progra~2\VideoReDoTVSuite4\vp.vbs "E:\SageTV\ThePinkPantherStrikesAgain-4123592-0.ts" "E:\ThePinkPantherStrikesAgain-4123592-0.ts" /t4 /q /e Perfect. Exactly what I want. When manually executed, the bat file does exactly what it should. That same command will not work in my qsf.bat when called via SJQ (it executes forever [when SJQ executes a bat file from a bat file], or it just doesn't run correctly [from qsf.bat]) and completes without error. I am using Windows 7 64 bit. Any ideas? |
#1019
|
|||
|
|||
Quote:
1. The program cannot find expected config files, gets confused, and as a result it refuses to run/does weird things. All processes kicked off by SJQ have a working directory of the base install dir of SageTV. You need output from the program itself to debug. If this is the problem then it's not an SJQ problem. 2. The process I/O buffers are filling, causing deadlock. SJQ should be eating the I/O streams and therefore this shouldn't be the cause (a lot more people would be complaining if this were a problem). However, I won't say my code is perfect so to test this theory, you need to redirect all output from any script/exe/etc. called by SJQ to a file. If this solves your problem then it's likely an SJQ problem. Either way, the first step in debugging this will require you to capture the output of the program you're calling and figuring out exactly what's happening when it "gets stuck"/"runs forever". Also, look in the sjq.log file, sqjc logs (wrapper.log and the GUI log for the client), sagetv debug logs, and jetty debug logs (if applicable) for any stack traces dumped by SJQ. Such stack traces are priceless to me when trying to find problems in my code.
__________________
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... |
#1020
|
|||
|
|||
I am having a problem where I have no audio on some recordings. This problems seem to be due to my STBs are dropping audio for some channels when the box sits for a long time (one day or more?) on the same channel. This problem is fixed if you change the channel and change it back.
Now I could fix this by just running a Scheduled Task on a daily basis that changes the channel. But this could potentially screwup a recording as it could change the channel during a recording. Is there anyway to use SJQ to determine if a tuner is currently recording? If so then I could just use SJQ to run this batch file that changes the channel every once in a while. If not SJQ then does anyone have any other ideas to fix this problem?
__________________
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 |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Sage Job Queue (SJQ) new release notifications | Slugger | Customization Announcements | 3 | 12-17-2009 09:59 AM |
Plugin: Sage Job Queue (SJQ) | Slugger | SageTV Customizations | 991 | 12-11-2009 03:52 PM |
Sage Job Queue Completed tasks problem | raffmanlt | SageTV Customizations | 2 | 08-18-2009 07:34 PM |
Comskip Monitor VS Sage Job Queue SJQ | personalt | SageTV Customizations | 6 | 03-02-2009 10:27 AM |
Plugin: SJQ v1.1.0RC1 Available - Testers Needed | Slugger | SageTV Customizations | 35 | 04-21-2008 08:12 AM |