|
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 |
#501
|
|||
|
|||
Hello Michael,
I've attached a screenshot of the config. When I click "Test" I see nothing on the screen, but the command prompt window where the config app was run produces the following output: Code:
C:\Program Files\webfeedencoder>java -jar "c:\Program Files\webfeedencoder\libs\ configtool.jar" java.lang.NullPointerException at uk.co.mdjcox.config.view.ChannelDialog.getChannel(ChannelDialog.java: 1209) at uk.co.mdjcox.config.view.ChannelDialog.testChannel(ChannelDialog.java :911) at uk.co.mdjcox.config.view.ChannelDialog.access$700(ChannelDialog.java: 37) at uk.co.mdjcox.config.view.ChannelDialog$9.actionPerformed(ChannelDialo g.java:688) at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.setPressed(Unknown Source) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour ce) at java.awt.Component.processMouseEvent(Unknown Source) at javax.swing.JComponent.processMouseEvent(Unknown Source) at java.awt.Component.processEvent(Unknown Source) at java.awt.Container.processEvent(Unknown Source) at java.awt.Component.dispatchEventImpl(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Window.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.Dialog$1.run(Unknown Source) at java.awt.Dialog$3.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.awt.Dialog.show(Unknown Source) at java.awt.Component.show(Unknown Source) at java.awt.Component.setVisible(Unknown Source) at java.awt.Window.setVisible(Unknown Source) at java.awt.Dialog.setVisible(Unknown Source) at uk.co.mdjcox.config.actions.AddChannelAction.performViewAction(AddCha nnelAction.java:94) at uk.co.mdjcox.gui.actions.BaseAction.actionPerformed(BaseAction.java:2 05) at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.setPressed(Unknown Source) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour ce) at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source) at java.awt.Component.processMouseEvent(Unknown Source) at javax.swing.JComponent.processMouseEvent(Unknown Source) at java.awt.Component.processEvent(Unknown Source) at java.awt.Container.processEvent(Unknown Source) at java.awt.Component.dispatchEventImpl(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Window.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source) Thanks, Yuly |
#502
|
|||
|
|||
Quote:
This is an easy one. Please define the "Grabber" as something. The best default is "Basic day long programme". It should have defaulted to that but clearly hasn't - something else to fix. Michael |
#503
|
|||
|
|||
Easy and quick Thanks for a fast reply. Will digg further. In the meantime, it seems you've created a killer app for the SageTV!
One feature request (I know it already have been asked for): please allow for multiple instances of your encoder. Then we could watch different channels on different extenders. Please keep the good work! Thanks, Yuly |
#504
|
|||
|
|||
Quote:
Michael |
#505
|
|||
|
|||
I have another question.
I already use LM Geston XMLTV importer. I actually already have all the EPG info for channels I want to add in a form of a XMLTV file (I download it from external source, no need for me to parse Web pages). How do I make use of existing XMLTV file, without using the built-in EPG grabber? I tried to simply add the new channel in the XMLTV importer, but I ended up with two channels with the same number (901) in SageTV: one had the logo I entered in your app (the correct one), the other had the EPG info, but played a different channel (from existing lineup) when started. Thanks again. |
#506
|
|||
|
|||
Quote:
First thing - make sure the callsign used in the XMLTV importer and that used in WFE agree. That is the unique key for channels in SageTV. Then the XMLTV import should add EPG to the correct channel. They can be issues with WFE grab overwriting the other. We should be able to disable WFE EPG updates for that channel though. Michael |
#507
|
|||
|
|||
Quote:
|
#508
|
|||
|
|||
Quote:
I think the problem is that XMLTV importer creates a lineup and WFE creates a lineup both with the same channel in. The WFE encoder lineup is very much associated with the WFE "tuner" wheras your XMLTV lineup is not. If it is the case that all the channels in the WFE lineup are the same as those in the XMLTV lineup then... ...you can go into sageTV source setup and change the lineup for the tuner to be your XMLTV lineup. I suspect that WFE may try and change it back if you add new channels or perhaps on its periodic EPG grab - but we may be able to stop some of that. Try this first. Michael |
#509
|
|||
|
|||
Custom Podcast file
Well, I'm going to ask what is probably a really stupid question with a really easy answer... but I have been unable to find it.
I configured a custom podcast, and got a pair of files CustomOnlineVideoLinks_wfe.properties CustomOnlineVideoUIText_wfe.properties in my OnlineVideos folder. I cannot get SageTV to read those files and thus cannot get it to recognize the podcasts that I have added using WFE. I already had several added podcasts by simply editing CustomOnlineVideoLinks.properties CustomOnlineVideoUIText.properties ...and those files exist. Do I have to remove those files to get it to recognize the ones generated by WFE? Or is there somewhere else I need to put in a path to those files? Thanks. Jeff |
#510
|
|||
|
|||
Quote:
1. I believe there is a problem with WFE when the channel name uses non-latin characters (cyrillic in my case), or, maybe, has spaces in it. When my channel was named "Премьера (НТВ Плюс)", nothing showed up after I hit play (I use HD-200 extender). I noteced mpg file were created, but the name was rather odd (_______________-2154311-0.mpg). I've changed the channel name to "prem", and everything worked. 2. Another question is a basic one, forgive me for not being VLC/streaming professional. I understand that what your plugin does is it receives the incoming stream with the help of VLC, transcodes it to mpg file and makes Sage play this mpg while its being built up by VLC. Obviously, some quality is lost since VLC is transcoding. Also, CPU power can be a limiting factor. Now, in my case the incoming streams are of high quality; some of them are even HD, and I don't want to waste CPU and quality by transcoding them. I made a test, and run VLC with the following configuration: C:\Program Files\VideoLAN\VLC>vlc udp://@238.10.10.15:1234 :demux=dump :demuxdump-file=c:\temp.mpg To my surprise, this worked and produced an MPEG-TS file which I was able to watch with Media Player classic. So, here comes the actual question(s) in relation to this case: 2.1 Will SageTV be able to use this file? 2.2 Is it possible to change the settings in WFE to allow raw save instead of transcoding? 2.3 What is the best way to achieve it in WFE? Ideally, I imagine several preset profiles that you assign to different channels. 2.4 What about the case when incoming UDP stream is MPEG-TS with AVC and AC-3? I have tried both HD and SD streams with raw save; both produced valid files, and here is what mediainfo is saying about them: SD: Quote:
Quote:
Thanks a lot! Yuly |
#511
|
|||
|
|||
Quote:
SageTV recognises multiple sets of these files. But you need to have the right STV update - see: http://forums.sagetv.com/forums/show...384#post386384 You can upgrade your setup from SageTV setup (unless you are using Vista I think where there is a manual workaround). Michael |
#512
|
|||||
|
|||||
Quote:
Quote:
Quote:
Quote:
e.g. tune.tv.windows.commands and detune.tv.windows.commands Create some of your own e.g. tune.rawtv.windows.commands (I'm guessing your are on windows not unix) Edit the vlc line to perform your raw dump rather than transcode. Take out this bit: --sout="#transcode{vcodec=mp2v,vb=800,fps=30,scale=1,width=720,height=576,acodec=mpga,ab=128,channels=2}:duplicate{dst=std{access=file,mux=ts,dst='%recording%'}}" --sout-transcode-audio-sync and put in this bit: --demux=dump --demuxdump-file="%recording%" Then there is the concept in WFE of channel types (in the channeltypes directory). You needs to define a new one of those. Copy the tv.props one and edit your copy. Change the tune and detune properties to refer to your new files. Restart everything. Define your channel as being off the new type. Enter your tuning URL udp://@238.10.10.15:1234. Try a test. Quote:
If you get it working sending me your channel type and command files and I will incorporate them in the release. Hope this helps. Michael |
#513
|
|||
|
|||
Wonderful! Thanks, Michael! I'll do the tests and update you.
|
#514
|
|||
|
|||
It works!
Wow! I could only try the placeshifter since I'm not at home, but it works even via placeshifter!! I'll test on HD-200 when I'm back home; I really hope it will work too. And both SD and HD are showing up! (Of course, my 4 year old PC is not up to the task to transcode HD stream for placeshifter, but this is a different story). But: 0% CPU for VLC, and I get my TV channels in original quality! What can I say: just magnificent!
Now if this works on HD-200 too, next I will have to sort out the EPG thing. And I have some small requests too (like this non-english names, and making logo pictures proportional, and maybe a few more). But: you have really made it happen! Bravo, Michael! Last edited by scanner95; 03-05-2010 at 04:05 AM. |
#515
|
|||
|
|||
Quote:
Now I go to XMLTV app and create a complete new linup. I add there 3 new channels with the following parameters: ID = CH0001.LVA - CH0003.LVA (this is the default), callsigns = same as in WFE, names differ from WFE, and numbers is 901-903 (same as channel numbers in WFE). I assign XMLTV data to it. I save and upload this new linup to Sage. I manually import guide data into sage from XMLTV importer. So far, nothing changes in SageTV: channels 901-903 is there, no EPG. Now I go into Sage/Setup video sources. I select WFE. In its properties it shows "EPG lienup: WebFeedEncoder". I change it to my new lineup from XMLTV. It asks to wait while channel lineup is downloaded. Now what I see in Sage that my three channels are still there; logos are in place as it was before. However, for two of them, channel numbers have changed from 902 and 903 to 42 and 52! And, of course, EPG is there from XMLTV. But, if I try to watch those 3 channels now, they show up different programs, taken from analog tuner in the server. Even the channel which still has its number as before (901) foes not fire up vlc and shows just black screen. A mess! I go back to WFE, re-send channel lineup to Sage, and I'm back to working 3 channels, but without EPG. And in Setup video sources it shows again "EPG lienup: WebFeedEncoder". So I guess this didn't work... |
#516
|
|||
|
|||
Quote:
Yuly |
#517
|
|||
|
|||
Quote:
Still thinking about the EPG issue. I'm sure it possible to configure a away out of this mess. Also as WFE reads XMLTV so I may make another grabber type where you can specify a file to pull listings from or even a URL. Hoping to push out another release very soon and this should be an easy one to build in. Michael |
#518
|
|||
|
|||
Great news! Waiting to try it out.
Thanks, Yuly |
#519
|
|||
|
|||
Quote:
If you test with it, please be aware it contains cyrillic symbols. Cheers, Yuly |
#520
|
|||
|
|||
Hi Yuly,
So reading the new XMLTV file be a doddle. I have now done that and will be able to give you a patch to try. As part of the channel setup you can provide a file name or URL. Does the file name or the URL (if we download it from wherever you are downloading it from) contain any parts representing the date - or in fact any parts that can change over time? Michael |
Tags |
extender, internet video streaming, mvp, online videos, radio |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
SageTV and web radio | michaeldjcox | SageTV Customizations | 3 | 12-01-2008 11:09 AM |
STV Import: Simple Web Radio V1.2 | koelec | SageTV Customizations | 294 | 02-29-2008 12:53 PM |
Recording Volume vs. Web Radio / Music | FidgetyRat | SageTV Software | 0 | 11-29-2006 08:33 AM |