Re: Video network streaming



"Levi Ilies" <LeviIlies@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:41CADD0A-ABE6-4BC6-9493-0E44FA1B9D90@xxxxxxxxxxxxxxxx
> Thank you very much for the confirmation and prompt response....
>
> Although, i've had very little experience with network programming. I have
> successfully established the TCP stream socket connection between the
> server
> and client, but could you explain in more detail how to:
> "... send enough information about the media type when setting up
> the connection to reconstruct the media type and allocator properties on
> the client side..."

Basically, he means (I think) that your network application protocol (as
opposed to the underlying TCP/IP protocol, TCP in this case) needs to do
more than just pass samples from one computer to the other. During the
graph set-up, it needs to also convey the information about the media type
and allocator properties as the filters are connected, so that the data in
the samples can be safely passed across the network from the source graph to
the rendering graph.

This could get a *little* complicated, since as reconnections are attempted
(for example), that information may need to get passed in either direction.
Basically, whatever negotiation might normally occur between input and
output pins in a single filter in the middle of a non-networked graph, that
needs to be dealt with over the network in a networked pair of graphs.

Or I could completely misunderstand what Thore meant. But I hope not. :)

> The only experience i've had with DirectShow is making a video player for
> local files, by using the Filter Graph Manager to build the graph
> automatically.

IMHO, you will probably at the very least want to get far enough that you
can write a standalone application that plays a video locally. Not that
this is critical for doing the network thing, but it will give you more
insight into what goes on when various filters are connected. Then you also
will want to understand how source and render filters work (they are a
little special, compared to regular filters), since the source graph will
need a custom render filter and the render graph will need a custom source
filter.

AFAIK, the custom render and source filters are really the key here. If you
write those correctly, you ought to be able to plug them into a regular
graph in GraphEdit and test them directly that way.

Pete


.



Relevant Pages

  • Re: Push and Pull model
    ... > I intend to build some graph to receive VOIP data from ... > filters is generally PULL with a graph that recieves data ... > from the network and playbacks the voice in my PC ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Reasons pins wont connect?
    ... result of certain codecs. ... The way I was constructing the graph was to actually do RenderFile or ... and then tear down a few filters and insert new ... Much easier to render it through, ask about the connection, then cut it into bits. ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Why filter graph display the previous frame...........
    ... Pausing the filter graph cues the graph for immediate rendering when ... filters process data ... do not render the data. ... poster frame of the first sample. ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Why filter graph display the previous frame...........
    ... Pausing the filter graph cues the graph for immediate rendering when ... filters process data ... do not render the data. ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Video network streaming
    ... writing my own source and render filters sounds like a lot of work. ... i've had very little experience with network programming. ... > the samples can be safely passed across the network from the source graph to ...
    (microsoft.public.win32.programmer.directx.video)