Re: Non-live surfing Re: [mythtv-users] how to decrease time needed for switch channels in live-TV ?

2005-02-23 Thread Brad Templeton
On Wed, Feb 23, 2005 at 04:27:57PM -0500, Brad Benson wrote:
> On Wed, 23 Feb 2005 12:30:56 -0800, Brad Templeton
> In theory I think this is an excellent idea.  However, the biggest
> problem I see is lack of sufficient tuners to support this feature.  I

Yes, but if some surfer-lover wanted to code this system, it would
make sense to pick up extra cheap raw capture cards -- now down to $20 -- just
for this purpose.   Use mjpeg on them, or even, for this algorithm, raw
YUV capture, since you're only storing a few minutes of total video.
(Raw RGB capture is 15 megabytes/second at 352x480x30fps, YUV would be
a chunk less than that.)


> currently have a single tuner system which means that if I'm watching
> live TV there is no way for me to grab snippets from another channel
> without changing what I'm currently watching.  Even in a 2 tuner
> system, if you're watching live TV and there is one program being
> recorded you're in the same boat.
> 
> Let's assume a 2 tuner system with no current recordings.  One tuner
> would obviously be used for whatever channel the user is currently
> viewing.  This leaves the other tuner to hop around gathering snippets

No, because there is no channel the user is currently viewing during
this mode, once they start their surf.   When they begin their surf
there is an active channel and a bucket of older snippets gathered by
other tuner(s).  Once they start the surf all the tuners would run around
updating snippets, trying to update the most likely next surf targets
first.  Both tuners would be doing this.   Only if you pause on a
channel for more than a short time would it need its own tuner.

> from other channels.  Assuming each snippet is 30 seconds long that
> means that you'd have to stay on each channel for at least 30 seconds
> or risk "catching up" to the snippet grabbing and being stuck with the
> typical black screen again.  I don't know about you, but back in my

No on two counts, actually.   First, the snippets would not be nearly that
long.  They are "surfing" snippets.  If your snippets were 5 seconds long,
you would let the user watch the snippet for about 3.5 seconds.  Then you
would grab a tuner to pick up that channel live.  Then at the 5 second
mark, after having had 1.5 seconds to sync and buffer the new tuner on
the live channel, you would do a short disolve/transition to the live
programming.

> It seems to me that to make this a feasible option you'd need a system
> with at least 4 tuners per video source.  At that rate, for a system
> than only supports analog cable, you're looking at $400+ just for
> tuners in the system.  You might as well just go out and buy a
> standard TV and use that for channel surfing.

No, just two, and the second could be a cheap $20 one.  Of course on the
cheap $20 one you could also write a fast surf mode.

There are really three "modes"

a) Watching.   Main tuner is capturing show being watched.  Spare
tuner is running around updating snippets just in case of surf
b) Surfing.You are watching snippets, BOTH tuners are running
around updating snippets, with some priority given to the "adjacent"
channels in the surf list so they are more recent.

d) De-surfing.  You've lingered on a channel and are (GAP) seconds away
from running out of snippet.   Main tuner switches to that channel
and starts buffering.  Spare tuner continues to gather snippets.
Transition to watching at end of snippet.


During surf mode the on-screen-display would be showing program guide
info of course, and also telling you you are in a delayed snippet and
perhaps even how far delayed it is.   You need to be very clear with the
user, who will otherwise be very frustrated when they linger on a scene
where the bad guy is about to shoot the good guy and it's 3 minutes in
the past so when they transition to watching, the scene is long past.  They
must be ready for this, and understand the choice was to show them black
screen.


Again, I don't surf or do much live tv, I won't be coding this, I am just
throwing out ideas.   If you want to code it, another idea for extra credit
would be to throw in logo detection, so that the snippets are always program
and not commercial.

There is another issue, which is at the top of the hour most of your
snippets expire (no longer the right show) and it's also a popular time
for surfing.   So you are forced to go back to black screen surfing (when
no current snippet available), program guide surfing, or something else.
You might even just grab very short snippets, 1-2 seconds, at the start
of new programs, just so you almost always have something.
___
mythtv-users mailing list
mythtv-users@mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users


Re: Non-live surfing Re: [mythtv-users] how to decrease time needed for switch channels in live-TV ?

2005-02-23 Thread Brad Benson
On Wed, 23 Feb 2005 12:30:56 -0800, Brad Templeton
<[EMAIL PROTECTED]> wrote:
> However, if you want to help the surfers, here is something you could
> code.
> 
> People are making the mistake that channel surfing has to be LIVE.  It
> might not be.So write a program that uses all available tuners to
> grab snippets from a set of channels -- short snippets from all channels,
> longer from favourite channels and even longer from adjacent channels in
> the surf list.   Use the listings data to assure the snippit is from the
> same program that is on now.
> 
> Do this constantly, be constantly grabbing snippets, updating them if they
> get too old.
> 
> When the user wants to surf, surf the snippets (which always start with
> a key frame)   When he actually changes channels move into an even
> more agressive snippet grabbing mode that tries to update nearby channels
> if it can.   Use all available tuners for the given video source.
> 

In theory I think this is an excellent idea.  However, the biggest
problem I see is lack of sufficient tuners to support this feature.  I
currently have a single tuner system which means that if I'm watching
live TV there is no way for me to grab snippets from another channel
without changing what I'm currently watching.  Even in a 2 tuner
system, if you're watching live TV and there is one program being
recorded you're in the same boat.

Let's assume a 2 tuner system with no current recordings.  One tuner
would obviously be used for whatever channel the user is currently
viewing.  This leaves the other tuner to hop around gathering snippets
from other channels.  Assuming each snippet is 30 seconds long that
means that you'd have to stay on each channel for at least 30 seconds
or risk "catching up" to the snippet grabbing and being stuck with the
typical black screen again.  I don't know about you, but back in my
"channel surfing" days it was rare for me to stay on any one channel
for more than 5-10 seconds unless it looked interesting by that point.

It seems to me that to make this a feasible option you'd need a system
with at least 4 tuners per video source.  At that rate, for a system
than only supports analog cable, you're looking at $400+ just for
tuners in the system.  You might as well just go out and buy a
standard TV and use that for channel surfing.

Brad
___
mythtv-users mailing list
mythtv-users@mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users