SageTV Community  

Go Back   SageTV Community > SageTV Development and Customizations > SageTV Customizations

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
  #61  
Old 03-30-2010, 03:59 PM
jreichen's Avatar
jreichen jreichen is offline
Sage Icon
 
Join Date: Jul 2004
Posts: 1,192
Quote:
Originally Posted by Fonceur View Post
Well, technically we are talking:

Client --> web server (client tells the web server what to stream)
Web server --> VLC (web server tellls VLC what to stream)
VLC <--> Client (VLC streams to the Android client)
Actually the last step is more like:

VLC --> Local Port (VLC streams to local port)
Local Port --> web server (web server reads VLC's stream and...)
web server --> client (...forwards it to the client as part of the HTTP response)

So as it's currently implemented RTSP probably won't work.
__________________
Server: Intel Core i5 760 Quad, Gigabyte GA-H57M-USB3, 4GB RAM, Gigabyte GeForce 210, 120GB SSD (OS), 1TB SATA, HD HomeRun.
Extender: STP-HD300, Harmony 550 Remote,
Netgear MCA1001 Ethernet over Coax.
SageTV: SageTV Server 7.1.8 on Ubuntu Linux 11.04, SageTV Placeshifter for Mac 6.6.2, SageTV Client 7.0.15 for Windows, Linux Placeshifter 7.1.8 on Server and Client
, Java 1.6.
Plugins: Jetty, Nielm's Web Server, Mobile Web Interface.

Reply With Quote
  #62  
Old 03-30-2010, 04:10 PM
jreichen's Avatar
jreichen jreichen is offline
Sage Icon
 
Join Date: Jul 2004
Posts: 1,192
Quote:
Originally Posted by jrjbertram View Post
I guess it'd be nice to get some positive confirmation that android doesn't support http downloads, though.
You might try converting a video to a format supported by Android, then going to the web server's detailed info page for that converted file and clicking on the file link on the right side. That will do an HTTP download. I've been able to do that on nielm's and the mobile web interfaces with the iPhone.

The problem when trying to get from there (a preconverted video) to real-time transcoding is that HTTP progressive downloads request byte ranges from the server, and the file size is impossible to predict during a real-time transcode so there's no way to request something in the middle of the file.

Apple's HTTP Live Streaming holds some promise because it's based on a playlist consisting of small segments defined in terms of time, not bytes.
__________________
Server: Intel Core i5 760 Quad, Gigabyte GA-H57M-USB3, 4GB RAM, Gigabyte GeForce 210, 120GB SSD (OS), 1TB SATA, HD HomeRun.
Extender: STP-HD300, Harmony 550 Remote,
Netgear MCA1001 Ethernet over Coax.
SageTV: SageTV Server 7.1.8 on Ubuntu Linux 11.04, SageTV Placeshifter for Mac 6.6.2, SageTV Client 7.0.15 for Windows, Linux Placeshifter 7.1.8 on Server and Client
, Java 1.6.
Plugins: Jetty, Nielm's Web Server, Mobile Web Interface.

Reply With Quote
  #63  
Old 03-30-2010, 05:47 PM
jrjbertram jrjbertram is offline
Sage User
 
Join Date: Feb 2009
Posts: 39
Quote:
Originally Posted by Fonceur View Post
Try something like (putting your IP and port):

Code:
"C:\Program Files\VideoLAN\VLC\vlc.exe" -I dummy --no-sub-autodetect-file "Troisfugitifs-512272-0.mpg" --sout "#transcode{vcodec=h264,venc=x264{no-cabac,level=12,vbv-maxrate=384,vbv-bufsize=1000,keyint=75,ref=3,bframes=0},width=320,height=180,acodec=mp4a,ab=64,vb=384}:rtp{dst=192.168.0.102,port=8000,sdp=rtsp://192.168.0.102:8000/stream.sdp,mp4a-latm}"
No, that didn't work.

The issue with this is that VLC seems to like/need to know your destination IP and port before your client has made the connection. As soon as I started this instance of VLC, wireshark showed that VLC started pumping data like mad to the phone's IP address (I had substitued my ip addrs for the ones you show above).

But the phone (either at the phone level or the network provider) seems to effectively have the phone behind a firewall. Or maybe it's just that no app on the phone is listening on that port. Either way, the host and/or port are unreachable (according to an ICMP message that came back from the phone's IP addr).



Sooo.. VLC needs to support a mode where it sets itself up as a server and waits for the phone to connect via RTSP links. Which is what VLC's VLM VideoOnDemand functionality is supposed to support. I had issues with that, you should be able to find some of that discussion earlier in this thread.
Reply With Quote
  #64  
Old 03-30-2010, 06:48 PM
Fonceur's Avatar
Fonceur Fonceur is offline
Sage Icon
 
Join Date: Jan 2008
Location: DDO, QC
Posts: 1,915
You are supposed to provide the port and IP of the SageTV server, not of the phone. Just like you were originally using 127.0.0.1, but wasn't working from another pc/device... Then from the phone you open up that connection...
__________________
SageTCPServer (2.3.5): Open source TCP interface to the SageTV API
MLSageTV (3.1.8)/Sage Media Server (1.13): SageTV plugin for MainLobby/CQC
TaSageTV (2.58)/TaSTVRemote (1.14): Monitor/control SageTV with an Android device
TbSageTV (1.02)/STVRemote (1.11): Monitor/control SageTV with a PlayBook 2
TiSageTV (1.64)/TiSTVRemote (1.09): Monitor/control SageTV with an iPhone/iPod/iPad
Reply With Quote
  #65  
Old 03-30-2010, 06:50 PM
Fonceur's Avatar
Fonceur Fonceur is offline
Sage Icon
 
Join Date: Jan 2008
Location: DDO, QC
Posts: 1,915
Quote:
Originally Posted by jreichen View Post
Local Port --> web server (web server reads VLC's stream and...)
I see, I didn't know the web server was re-encapsulating the stream or such...
__________________
SageTCPServer (2.3.5): Open source TCP interface to the SageTV API
MLSageTV (3.1.8)/Sage Media Server (1.13): SageTV plugin for MainLobby/CQC
TaSageTV (2.58)/TaSTVRemote (1.14): Monitor/control SageTV with an Android device
TbSageTV (1.02)/STVRemote (1.11): Monitor/control SageTV with a PlayBook 2
TiSageTV (1.64)/TiSTVRemote (1.09): Monitor/control SageTV with an iPhone/iPod/iPad
Reply With Quote
  #66  
Old 03-30-2010, 06:54 PM
Fonceur's Avatar
Fonceur Fonceur is offline
Sage Icon
 
Join Date: Jan 2008
Location: DDO, QC
Posts: 1,915
Quote:
Originally Posted by jreichen View Post
You may want to create a playlist for a recording that's in multiple segments. I'm not sure exactly how to handle that situation, but a playlist might be one option.
But that seems more something between the web server and VLC, than between VLC and the client...
__________________
SageTCPServer (2.3.5): Open source TCP interface to the SageTV API
MLSageTV (3.1.8)/Sage Media Server (1.13): SageTV plugin for MainLobby/CQC
TaSageTV (2.58)/TaSTVRemote (1.14): Monitor/control SageTV with an Android device
TbSageTV (1.02)/STVRemote (1.11): Monitor/control SageTV with a PlayBook 2
TiSageTV (1.64)/TiSTVRemote (1.09): Monitor/control SageTV with an iPhone/iPod/iPad
Reply With Quote
  #67  
Old 03-30-2010, 07:55 PM
jrjbertram jrjbertram is offline
Sage User
 
Join Date: Feb 2009
Posts: 39
Quote:
Originally Posted by Fonceur View Post
":rtp{dst=192.168.0.102,port=8000,sdp=rtsp://192.168.0.102:8000/stream.sdp,mp4a-latm}"
The dst parameter threw me off.. in both places, that's the ip addr of the server? I guess that's why it bombed on me. I still haven't sat down with the vlc manual to understand the sout parameters.

Can anyone else with a droid take a crack at it, I probably won't be able to try much out the rest of the week. I havew my new antenna preamp coming tomorrow and ill be on the roof. I'm also taking some vacation soon for a few days.

-J
Reply With Quote
  #68  
Old 03-30-2010, 08:43 PM
Fonceur's Avatar
Fonceur Fonceur is offline
Sage Icon
 
Join Date: Jan 2008
Location: DDO, QC
Posts: 1,915
Quote:
Originally Posted by jrjbertram View Post
The dst parameter threw me off.. in both places, that's the ip addr of the server?
I've seen 0.0.0.0 and 127.0.0.1 referenced, but neither worked from a different pc. I'm not sure all that redundancy is really needed, but since it worked, I didn't dig more.
__________________
SageTCPServer (2.3.5): Open source TCP interface to the SageTV API
MLSageTV (3.1.8)/Sage Media Server (1.13): SageTV plugin for MainLobby/CQC
TaSageTV (2.58)/TaSTVRemote (1.14): Monitor/control SageTV with an Android device
TbSageTV (1.02)/STVRemote (1.11): Monitor/control SageTV with a PlayBook 2
TiSageTV (1.64)/TiSTVRemote (1.09): Monitor/control SageTV with an iPhone/iPod/iPad
Reply With Quote
  #69  
Old 03-31-2010, 11:46 AM
jrjbertram jrjbertram is offline
Sage User
 
Join Date: Feb 2009
Posts: 39
Quote:
Originally Posted by Fonceur View Post
but neither worked from a different pc.
What do you mean by this?

Thanks,
- Josh.
Reply With Quote
  #70  
Old 03-31-2010, 12:52 PM
jreichen's Avatar
jreichen jreichen is offline
Sage Icon
 
Join Date: Jul 2004
Posts: 1,192
Quote:
Originally Posted by jrjbertram View Post
What do you mean by this?

Thanks,
- Josh.
If either of those addresses is used in VLC's command line then it listens for connections on the local network interface and processes on other computers cannot connect to them.
__________________
Server: Intel Core i5 760 Quad, Gigabyte GA-H57M-USB3, 4GB RAM, Gigabyte GeForce 210, 120GB SSD (OS), 1TB SATA, HD HomeRun.
Extender: STP-HD300, Harmony 550 Remote,
Netgear MCA1001 Ethernet over Coax.
SageTV: SageTV Server 7.1.8 on Ubuntu Linux 11.04, SageTV Placeshifter for Mac 6.6.2, SageTV Client 7.0.15 for Windows, Linux Placeshifter 7.1.8 on Server and Client
, Java 1.6.
Plugins: Jetty, Nielm's Web Server, Mobile Web Interface.

Reply With Quote
  #71  
Old 03-31-2010, 01:27 PM
Fonceur's Avatar
Fonceur Fonceur is offline
Sage Icon
 
Join Date: Jan 2008
Location: DDO, QC
Posts: 1,915
As an alternative to testing by running a second instance of VLC, with the Mozila/ActiveX VLC plugin installed, you should be able to use an html file like:

Code:
<HTML>
<HEAD>
  <TITLE>VLC streaming</TITLE>
</HEAD>
<BODY bgcolor="#CFFFFF">

<h1>VLC streaming</h1>

 <embed type="application/x-vlc-plugin" pluginspage="http://www.videolan.org" version="VideoLAN.VLCPlugin.2"
        width="320" height="180" id="vlc">
 </embed>

  <script language="Javascript">
    var vlc=document.getElementById("vlc");
    var id=vlc.playlist.add("http://192.168.0.102:8000");
    vlc.playlist.playItem(id);
  </script>

<br />
  <a href="javascript:;" onclick='vlc.playlist.play()'>Play video1</a>
  <a href="javascript:;" onclick='vlc.playlist.togglePause()'>Pause video1</a>
  <a href="javascript:;" onclick='vlc.playlist.stop()'>Stop video1</a>
  <a href="javascript:;" onclick='vlc.video.toggleFullscreen()'>Fullscreen</a>
  
</BODY>
</HTML>
Updating the http://192.168.0.102:8000 part as needed... Of course that doesn't help with the Android situation until an equivalent VLC Android plugin is released, if ever, but...

EDIT: That seems to only work for Firefox/Safari...
__________________
SageTCPServer (2.3.5): Open source TCP interface to the SageTV API
MLSageTV (3.1.8)/Sage Media Server (1.13): SageTV plugin for MainLobby/CQC
TaSageTV (2.58)/TaSTVRemote (1.14): Monitor/control SageTV with an Android device
TbSageTV (1.02)/STVRemote (1.11): Monitor/control SageTV with a PlayBook 2
TiSageTV (1.64)/TiSTVRemote (1.09): Monitor/control SageTV with an iPhone/iPod/iPad

Last edited by Fonceur; 04-01-2010 at 03:38 PM.
Reply With Quote
  #72  
Old 04-01-2010, 03:40 PM
Fonceur's Avatar
Fonceur Fonceur is offline
Sage Icon
 
Join Date: Jan 2008
Location: DDO, QC
Posts: 1,915
For completeness, here is how you would do it for IE:

Code:
<HTML>
<HEAD>
  <TITLE>VLC streaming</TITLE>
</HEAD>
<BODY bgcolor="#CFFFFF">

 <OBJECT classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921"
    codebase="http://downloads.videolan.org/pub/videolan/vlc/latest/win32/axvlc.cab"
       width="320" height="180" id="vlc" events="True">
    <param name="Src" value="http://192.168.0.102:8000" />
    <param name="ShowDisplay" value="True" />
    <param name="AutoLoop" value="False" />
    <param name="AutoPlay" value="True" />
 </OBJECT>
  
</BODY>
</HTML>
Updating the http://192.168.0.102:8000 part as needed...
__________________
SageTCPServer (2.3.5): Open source TCP interface to the SageTV API
MLSageTV (3.1.8)/Sage Media Server (1.13): SageTV plugin for MainLobby/CQC
TaSageTV (2.58)/TaSTVRemote (1.14): Monitor/control SageTV with an Android device
TbSageTV (1.02)/STVRemote (1.11): Monitor/control SageTV with a PlayBook 2
TiSageTV (1.64)/TiSTVRemote (1.09): Monitor/control SageTV with an iPhone/iPod/iPad
Reply With Quote
  #73  
Old 04-11-2010, 12:21 PM
jrjbertram jrjbertram is offline
Sage User
 
Join Date: Feb 2009
Posts: 39
fyi, no difference in android 2.1 update. Still seems to choke on the wvx file. Haven't had time to mess with anything else lately.

-J
Reply With Quote
Reply

Tags
android, error, jetty, streaming, transcode, vlc, webserver


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

Advanced Search
Display Modes

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

Similar Threads
Thread Thread Starter Forum Replies Last Post
Webserver Java Error bialio SageTV Customizations 5 12-07-2007 06:56 PM
Nielm Webserver streaming issue kck SageTV Customizations 1 07-09-2007 11:30 AM
VLC Player Can Play iso DVD images -- How to Make SageTV Use VLC? bbkim SageTV Customizations 3 06-07-2007 05:24 PM
No sound on DVB-T recordings using Webserver 2.6 and VLC Grunter SageTV Customizations 0 03-24-2006 11:56 PM


All times are GMT -6. The time now is 05:09 PM.


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