From: Subject: Simulating Graph Building with GraphEdit Date: Tue, 12 Jun 2001 10:46:29 +0200 MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_NextPart_000_0000_01C0F32C.EFA2AC20"; type="text/html" X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01C0F32C.EFA2AC20 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="iso-8859-1" Content-Location: file://F:\up-rws%206.09%20x!\01A%200106%20DRIVERS%20625%20x\TV%20TUNER%20CARDS\PINNACLESYS\PCTV%20SAT\3RD%20PARTY%20-%20TRP2MPG2%20STREAM%201\GRAPHEDIT%20INFOS\GRAPH%20BUILDING.HTM Simulating Graph = Building with GraphEdit =
 
 
Microsoft DirectX = 8.0

Simulating=20 Graph Building with GraphEdit

The Microsoft=AE DirectX=AE SDK provides a debugging utility called = GraphEdit,=20 which you can use to create and test filter graphs.

This article contains the following sections:=20

Overview of GraphEdit

GraphEdit is a visual tool for building filter graphs. Using = GraphEdit, you=20 can experiment with a filter graph before you write any application = code. You=20 can also load a filter graph that your application creates, to verify = that your=20 application is building the correct graph. If you develop a custom = filter,=20 GraphEdit provides a quick way to test it: Simply load a graph with your = custom=20 filter and try running the graph. If you are new to DirectShow, = GraphEdit is a=20 good way to become familiar with filter graphs and the DirectShow=20 architecture.

The following illustration shows how GraphEdit represents a simple = filter=20 graph.

3D"Simple=20

Each filter is represented as a rectangle. Smaller squares along the = edges of=20 the filters represent pins. Input pins are on the left side of the = filter, and=20 output pins are on the right side. The arrows represent the connections = between=20 pins.

With GraphEdit, you can:

Using GraphEdit

When you install the DirectX SDK, GraphEdit appears in the = Start menu=20 under Microsoft DirectX 8 SDK, in the submenu DX = Utilities. The=20 executable file is GraphEdt.exe. By default, it is installed in the = folder=20 Mssdk\Bin\DXUtils. You can open GraphEdit from either of these = locations.

What follows are brief descriptions of some things you can do using=20 GraphEdit. For more detailed information about these features—and = others—consult=20 the GraphEdit application help.

Build a File Playback Graph

GraphEdit can build a filter graph for file playback. This feature is = equivalent to calling the IGraphBuilder::RenderFile=20 method in an application. From the File menu, click Render = Media=20 File. GraphEdit displays an Open File dialog box. Select a = multimedia=20 file and click Open. GraphEdit builds a filter graph to play the = file=20 you've selected.

You can also render a media file located at a URL. From the = File menu,=20 click Render URL. GraphEdit displays a dialog box in which to = type the=20 URL.

Build a Custom Filter Graph

GraphEdit can build a custom filter graph, using any of the filters=20 registered on your system. From the Graph menu, click Insert=20 Filters. A dialog box appears with a list of the filters on your = system,=20 organized by filter category. GraphEdit builds this list from = information in the=20 registry. The following illustration shows the dialog box.

3D"Which=20

To add a filter to the graph, select the name of the filter and click = the=20 Insert Filters button, or double-click the filter name. After you = have=20 added the filters, you can connect two filters by dragging the mouse = from one=20 filter's output pin to another filter's input pin. If the pins accept = the=20 connection, GraphEdit draws an arrow connecting them.

3D"Connecting

Run the Graph

Once you have built a filter graph in Graph Edit, you can run the = graph to=20 see whether it works as you expect. The Graph menu contains the = menu=20 commands Play, Pause, and Stop. These commands = invoke to=20 the IMediaControl=20 methods Run,=20 Pause,=20 and Stop,=20 respectively. The GraphEdit toolbar has buttons for these commands, as = well:=20

3D"Play,

Note  The GraphEdit Stop command first pauses = the=20 graph and seeks to time zero (assuming the graph is seekable). For file=20 playback, this action resets the video window to the first frame. Then = GraphEdit=20 calls IMediaControl::Stop.

If the graph is seekable, you can seek it by dragging the slider bar = that=20 appears below the toolbar. Dragging the slider bar invokes the IMediaSeeking::SetPositions=20 method.

View Property Pages

Some filters support custom property pages, which provide a user = interface=20 for setting properties on the filter. To view a filter's property page = in=20 GraphEdit, right-click the filter and select Properties from the = pop-up=20 window. GraphEdit displays a property page that contains the property = sheets=20 defined by the filter (if any). In addition, GraphEdit includes a = property sheet=20 for each pin on the filter. The pin property sheets are defined by = GraphEdit,=20 not by the filter. If the pin is connected, the pin property sheet = displays the=20 media type for the connection. Otherwise, it lists the pin's preferred = media=20 types.

Loading a Graph From an External Process

GraphEdit can load a filter graph created by an external process. = With this=20 feature, you can see exactly what filter graph your application builds, = with=20 only a minimal amount of additional code in your application.

The application must register the filter graph instance in the = Running Object=20 Table (ROT). The ROT is a globally accessible look-up table that keeps = track of=20 running objects. Objects are registered in the ROT by moniker. To = connect to the=20 graph, GraphEdit searches the ROT for monikers whose display name = matches a=20 particular format:

!FilterGraph X pid Y

X and Y are hexadecimal numbers, representing the = address of=20 the filter graph and the process id, respectively.

When your application first creates the filter graph, call the = following=20 function:

HRESULT AddToRot(IUnknown *pUnkGraph, DWORD =
*pdwRegister)=20
{
    IMoniker * pMoniker;
    IRunningObjectTable *pROT;
    if (FAILED(GetRunningObjectTable(0, &pROT))) {
        return E_FAIL;
    }
    WCHAR wsz[256];
    wsprintfW(wsz, L"FilterGraph %08p pid %08x", (DWORD_PTR)pUnkGraph, =
GetCurrentProcessId());
    HRESULT hr =3D CreateItemMoniker(L"!", wsz, &pMoniker);
    if (SUCCEEDED(hr)) {
        hr =3D pROT->Register(0, pUnkGraph, pMoniker, pdwRegister);
        pMoniker->Release();
    }
    pROT->Release();
    return hr;
}

This function creates a moniker and a new ROT entry for the filter = graph. The=20 first parameter is a pointer to the filter graph. The second parameter = receives=20 a value that identifies the new ROT entry. Before the application = releases the=20 filter graph, call the following function to remove the ROT entry. The=20 pdwRegister parameter is the identifier returned by the AddToRot=20 function.

void RemoveFromRot(DWORD pdwRegister)
{
IRunningObjectTable *pROT;
    if (SUCCEEDED(GetRunningObjectTable(0, &pROT))) {
        pROT->Revoke(pdwRegister);
        pROT->Release();
    }
}

The following code example shows how to call these functions. In this = example, the code that adds and removes ROT entries is conditionally = compiled,=20 so that it is included only in debug builds.

IGraphBuilder =
*pGraph;
DWORD dwRegister;
   =20
// Create the filter graph manager.
CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER,
                        IID_IGraphBuilder, (void **)&pGraph);
#ifdef DEBUG
hr =3D AddToRot(pGraph, &dwRegister);
#endif

// Rest of the application (not shown).

#ifdef DEBUG
RemoveFromRot(dwRegister);
#endif
pGraph->Release();

To view the filter graph in GraphEdit, run your application and = GraphEdit at=20 the same time. In the GraphEdit File menu, click Connect. = In the=20 Connect To Graph dialog box, select the process id (pid) of your=20 application and click OK. GraphEdit loads the filter graph and = displays=20 it. Don't use any other GraphEdit features on this graph—it might = cause=20 unexpected results. For example, don't add or remove filters, or stop = and start=20 the graph. Close GraphEdit before exiting your application.

Note  Your application might hit various asserts = when it=20 exits.

The following illustration shows the Connect To Graph dialog = box.

3D"Connect

function SetGlossary(){;}; function = Glossary(oObj){;}; ------=_NextPart_000_0000_01C0F32C.EFA2AC20 Content-Transfer-Encoding: base64 Content-Type: image/gif Content-Location: file:///F:/up-rws%206.09%20x!/01A%200106%20DRIVERS%20625%20x/TV%20TUNER%20CARDS/PINNACLESYS/PCTV%20SAT/3RD%20PARTY%20-%20TRP2MPG2%20STREAM%201/GRAPHEDIT%20INFOS/Graph%20Building-Dateien/gedit09.gif R0lGODdhCAJiAPcAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwMDcwKbK8EAgAGAgAIAgAKAgAMAg AOAgAABAACBAAEBAAGBAAIBAAKBAAMBAAOBAAABgACBgAEBgAGBgAIBgAKBgAMBgAOBgAACAACCA AECAAGCAAICAAKCAAMCAAOCAAACgACCgAECgAGCgAICgAKCgAMCgAOCgAADAACDAAEDAAGDAAIDA AKDAAMDAAODAAADgACDgAEDgAGDgAIDgAKDgAMDgAODgAAAAQCAAQEAAQGAAQIAAQKAAQMAAQOAA QAAgQCAgQEAgQGAgQIAgQKAgQMAgQOAgQABAQCBAQEBAQGBAQIBAQKBAQMBAQOBAQABgQCBgQEBg QGBgQIBgQKBgQMBgQOBgQACAQCCAQECAQGCAQICAQKCAQMCAQOCAQACgQCCgQECgQGCgQICgQKCg QMCgQOCgQADAQCDAQEDAQGDAQIDAQKDAQMDAQODAQADgQCDgQEDgQGDgQIDgQKDgQMDgQODgQAAA gCAAgEAAgGAAgIAAgKAAgMAAgOAAgAAggCAggEAggGAggIAggKAggMAggOAggABAgCBAgEBAgGBA gIBAgKBAgMBAgOBAgABggCBggEBggGBggIBggKBggMBggOBggACAgCCAgECAgGCAgICAgKCAgMCA gOCAgACggCCggECggGCggICggKCggMCggOCggADAgCDAgEDAgGDAgIDAgKDAgMDAgODAgADggCDg gEDggGDggIDggKDggMDggODggAAAwCAAwEAAwGAAwIAAwKAAwMAAwOAAwAAgwCAgwEAgwGAgwIAg wKAgwMAgwOAgwABAwCBAwEBAwGBAwIBAwKBAwMBAwOBAwABgwCBgwEBgwGBgwIBgwKBgwMBgwOBg wACAwCCAwECAwGCAwICAwKCAwMCAwOCAwACgwCCgwECgwGCgwICgwKCgwMCgwOCgwADAwCDAwEDA wGDAwIDAwKDAwP/78KCgpICAgP8AAAD/AP//AAAA//8A/wD//////yH5BAAAAAAALAAAAAAIAmIA AAj/AA8IHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuX MGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qVOW/6JKnUq1qtWrWLNq3cq1q1eqpKB+ HUu2rNmzaP+FXZm2rdu3cONGXctQrt27eOfSTZm3r1+8pPai/Eu4sOGpgR1GfboyMdt/jGk6Vrk4 stHJCxcH3sy5s+fPoEOLHk26tOnTYTEPhoy6tevXsGO/PqD6pGbZuHPr3s07cW2Emi2TZC3YNmvh LYmLpY0cqPKGwZuDfE75uHS+tIubjH59J/XM1rtzuvy+mrn47dmXaz8/k3xC7uwxut8ePn7I+SXh 22+fHnr9/RThN9x/AI7XX3XmFSiTgAXppyBEDIrk4IPyHcgXgRSyZaFCE2aY2YbGJehhhb/lh+GI toEI3IkoHhThfSy2+NCL08Uo430qumjjjQfQ+FGHPEKX44AiBjnckA3ueKOPHgFpJIdISqjkkxn5 6GSQTHZ0JZUGZTnelFxaZCWYKHq50ZZhDmSmRmimWdGYRYa5ZpVkcjmnfHW6Cf9hlGrmmeGdF7WZ JqBi+qmnkCV2aeiDhL65KI+NBvjooe/xKZCgZVr646QyRjoRppQqpimoHnoqEalPmhoRqqFCmWiS cdqpaZOctqgqhLW2quaoucZ364y9ljqrlsG2Cud6qQ77Zay6/qpYsaEeS6mz/jFrrLJnQjstr9Y2 BcC3CQHgkLi7kgKWRuQmSZV56ULU7kHvmvQtuAfEi9G8A+Fb7rkZ2WsVuxPZu+2rBLEaVLoCC2xQ u5CBhWxE+va57sMMKdxSu+JaHHC+9XJ8aY+IUfxQxJdWBbBEGg/KrchIvZtxvvhmTC7CEUNWEMHj zqtvZQStJTO9MgtEM71C1zv/s9FEi+QyuC8jDfPROheEcMdFf3wzyxXrTC/PA/mMNNRHC03ytTiX 3K1SLlPd8cxQc8ywQWVnrfW3XAvk9dRAq900zEXvnXK/GItd9dpuNx143x73CDfWC809b90A4902 4rqWi7XBP6WN9+B+q6243Y6HLvrojid4t9uoU574y1PLG/bQQMdc9eGED24zbaTnrrvWpqve+eaV fxw35j5pnjrwtVvdM+MK5X6z73pHnzbirZ9keOKcUx129tXf3jXz4ZL+fPK/px68tMi1zrb2kzNd 8OKAOw756X23v7fghFcfUuDbA+++9gRBXrq8ZzfwIUR084Ne3tb3N1kNT1s35CGZ+yZIs7UNMDud iV/NPBM51BGNggE0GvRIEjURYuyDrJud1FD4ts9okGhqySD98lfBoJ1vZR5qoPA4CLjFcSZGOhxc gYiTwR5e7YfdCmKzcJihIFKrLkCEGIWeCJ4kBk9UDzwbpLDFJggOkYt00uIV68JEPVGRQ14E0Bnf k0aVZdGAfwIjnsTopjWuiI5jrNQbPzI2zs1tJEpEFBzDOMiRhXBhnnta0hCZSJfYUUd4HBe8GhlI sZVwYzRBH0f0J8RONqSSP5JjoNLYOUTGa3qTPGQj0RM3WkXyk6lkJMqkRhFQ4v9oj5ukpS6xJ8mY PFJRr5Qi7VS4S0/ykpMpaiWxglmxYjrTkKqUYibLiK4DHnOFJ2SbvfSFvDOJslDMNOQwAfjM+nns Z06zpPkMpMxlFTJcuqzh0wK4yE4OrXD01NsH2ddNNlGzX82MpvrOGcvyaembjgonLIVYvW0uMm/k bOg5bfmhdmZLoc1b3ez6lz1nclSEEf0oRNkXSlxu5G/DHGg5D3m9g1q0ixhtHPYkGj6NRtSm5Czp O8G5U2t2VKU5PSXvfkpQYga1qE36570WytBLRixh3MypN19KSJCUbp0pE6lRYbe9pFJ1jj215uHU V0Jk6m+oQNXmSNE6HaVeBJX/Ao0mI7dJ0K7686ujjCk84zrORGr1qJ6kaEXD+ikI3u+vqjxlYmWJ WJzycqqXgxYyHZtWY66vo+wk7Km0RddrehR/r8MsUL2q2VV5cXqVjV4xaZra1Eo1s8/SK7yShsql ZZNvnvufamH7GNnKMq5yteQ+90lSkKZzlXctLa58G0s/spCenV0dcfX53KZOtkpupdIvYaXckgiW ld2NbXgPpck6IlRSzLVeT7ZbsDbKKbvJwitPhfLd/Jy3sOklW2TzKx729om/jLrvZgFMXvgayb9m G+8X5ZtQBZvXpA92MBoJvGAJs5HCERbvwCx8Rw6zB8Egw7Ab9+thxoCYeJ0SWLBpRfxeCI9YPXnc IYxjHCADY0nFyy1xf3EMLBY7kMQbnnEeT+zeH2u4wAxGr467Q2Qfa9fGW0wyfpd8nSZTeUlQxrKU B3zl5liZxjV2cYu7jGJb8fjIYF7/VZZTvOUVdxk5X06zmsVs5N6+WThxlvOM1mzmNueYxnnWsyDR nGE7A/rM1brziMr7YkPHONCCHiyhG40gRUcG0pHWI5CRTOYifxjRUHRyfDdtRlBX0dImNvWEUT1F PmfKzz1mtVMwnWkXuXrRqr6wrJtC61o36NbCgvWkbyjsRPta0sbmtJDH2OtjyzjZpS52qHfNlGY7 m9FjXvYVrX1sbNe50oeW9qmdrelhf/tCot6xuFdNbuAAO47r1nW4O53uG9P5yfHu8Ly13e5nTzvI jh5yrvXd71+/8TAIL8zAIWmuhDvc4QsHZsMfTvGKb4Vbuso3JOWscWAWHCHD643IKEdOcheypeQo T7nKybzylrv85UVkCMxnTvPNsKTmOM85Z26u85773DQfHw+60IdO9KIb/ehIT7rSl870pjv96VCP utSnvpOAAAA7 ------=_NextPart_000_0000_01C0F32C.EFA2AC20 Content-Transfer-Encoding: base64 Content-Type: image/gif Content-Location: file:///F:/up-rws%206.09%20x!/01A%200106%20DRIVERS%20625%20x/TV%20TUNER%20CARDS/PINNACLESYS/PCTV%20SAT/3RD%20PARTY%20-%20TRP2MPG2%20STREAM%201/GRAPHEDIT%20INFOS/Graph%20Building-Dateien/gedit12.gif R0lGODdhgwEHAfcAAP//////zP//mf//Zv//M///AP/M///MzP/Mmf/MZv/MM//MAP+Z//+ZzP+Z mf+ZZv+ZM/+ZAP9m//9mzP9mmf9mZv9mM/9mAP8z//8zzP8zmf8zZv8zM/8zAP8A//8AzP8Amf8A Zv8AM/8AAMz//8z/zMz/mcz/Zsz/M8z/AMzM/8zMzMzMmczMZszMM8zMAMyZ/8yZzMyZmcyZZsyZ M8yZAMxm/8xmzMxmmcxmZsxmM8xmAMwz/8wzzMwzmcwzZswzM8wzAMwA/8wAzMwAmcwAZswAM8wA AJn//5n/zJn/mZn/Zpn/M5n/AJnM/5nMzJnMmZnMZpnMM5nMAJmZ/5mZzJmZmZmZZpmZM5mZAJlm /5lmzJlmmZlmZplmM5lmAJkz/5kzzJkzmZkzZpkzM5kzAJkA/5kAzJkAmZkAZpkAM5kAAGb//2b/ zGb/mWb/Zmb/M2b/AGbM/2bMzGbMmWbMZmbMM2bMAGaZ/2aZzGaZmWaZZmaZM2aZAGZm/2ZmzGZm mWZmZmZmM2ZmAGYz/2YzzGYzmWYzZmYzM2YzAGYA/2YAzGYAmWYAZmYAM2YAADP//zP/zDP/mTP/ ZjP/MzP/ADPM/zPMzDPMmTPMZjPMMzPMADOZ/zOZzDOZmTOZZjOZMzOZADNm/zNmzDNmmTNmZjNm MzNmADMz/zMzzDMzmTMzZjMzMzMzADMA/zMAzDMAmTMAZjMAMzMAAAD//wD/zAD/mQD/ZgD/MwD/ AADM/wDMzADMmQDMZgDMMwDMAACZ/wCZzACZmQCZZgCZMwCZAABm/wBmzABmmQBmZgBmMwBmAAAz /wAzzAAzmQAzZgAzMwAzAAAA/wAAzAAAmQAAZgAAMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAACDAQcB AAj/AFcIHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Ijw2goAIEOKHEmypMmTKFOqXMmypcuX MGPKnEmzps2bOHOStOIRAMefQIMKHUq0qNGjSCny/Ji0qdOnUKNKnQp1qc8V1LJq3cq1q9evYMOK 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 ------=_NextPart_000_0000_01C0F32C.EFA2AC20 Content-Transfer-Encoding: base64 Content-Type: image/gif Content-Location: file:///F:/up-rws%206.09%20x!/01A%200106%20DRIVERS%20625%20x/TV%20TUNER%20CARDS/PINNACLESYS/PCTV%20SAT/3RD%20PARTY%20-%20TRP2MPG2%20STREAM%201/GRAPHEDIT%20INFOS/Graph%20Building-Dateien/gedit_connect.gif R0lGODdhGgFtAPcAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwMDcwKbK8EAgAGAgAIAgAKAgAMAg AOAgAABAACBAAEBAAGBAAIBAAKBAAMBAAOBAAABgACBgAEBgAGBgAIBgAKBgAMBgAOBgAACAACCA AECAAGCAAICAAKCAAMCAAOCAAACgACCgAECgAGCgAICgAKCgAMCgAOCgAADAACDAAEDAAGDAAIDA AKDAAMDAAODAAADgACDgAEDgAGDgAIDgAKDgAMDgAODgAAAAQCAAQEAAQGAAQIAAQKAAQMAAQOAA QAAgQCAgQEAgQGAgQIAgQKAgQMAgQOAgQABAQCBAQEBAQGBAQIBAQKBAQMBAQOBAQABgQCBgQEBg QGBgQIBgQKBgQMBgQOBgQACAQCCAQECAQGCAQICAQKCAQMCAQOCAQACgQCCgQECgQGCgQICgQKCg QMCgQOCgQADAQCDAQEDAQGDAQIDAQKDAQMDAQODAQADgQCDgQEDgQGDgQIDgQKDgQMDgQODgQAAA gCAAgEAAgGAAgIAAgKAAgMAAgOAAgAAggCAggEAggGAggIAggKAggMAggOAggABAgCBAgEBAgGBA gIBAgKBAgMBAgOBAgABggCBggEBggGBggIBggKBggMBggOBggACAgCCAgECAgGCAgICAgKCAgMCA gOCAgACggCCggECggGCggICggKCggMCggOCggADAgCDAgEDAgGDAgIDAgKDAgMDAgODAgADggCDg gEDggGDggIDggKDggMDggODggAAAwCAAwEAAwGAAwIAAwKAAwMAAwOAAwAAgwCAgwEAgwGAgwIAg wKAgwMAgwOAgwABAwCBAwEBAwGBAwIBAwKBAwMBAwOBAwABgwCBgwEBgwGBgwIBgwKBgwMBgwOBg wACAwCCAwECAwGCAwICAwKCAwMCAwOCAwACgwCCgwECgwGCgwICgwKCgwMCgwOCgwADAwCDAwEDA wGDAwIDAwKDAwP/78KCgpICAgP8AAAD/AP//AAAA//8A/wD//////yH5BAAAAAAALAAAAAAaAW0A AAj/AA8IHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuX MGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcpU6L+nUKNKnUq1qtWrWLNqjUoq49avYMOK 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 u+ANr3jHS17kBgQAOw== ------=_NextPart_000_0000_01C0F32C.EFA2AC20 Content-Transfer-Encoding: base64 Content-Type: image/gif Content-Location: file:///F:/up-rws%206.09%20x!/01A%200106%20DRIVERS%20625%20x/TV%20TUNER%20CARDS/PINNACLESYS/PCTV%20SAT/3RD%20PARTY%20-%20TRP2MPG2%20STREAM%201/GRAPHEDIT%20INFOS/Graph%20Building-Dateien/gedit_toolbar.gif R0lGODdhSgAbAPcAAAAAAJkAAACZAJmZAAAAmZkAmQCZmZmZmczMzP8AAAD/AP//AAAA//8A/wD/ /////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAABKABsA AAj/ABEIHEiwoMGDCBMqXMiwocOHEB0+mEixosWLDwBg3IhRI8ePEwEUfBBx4AGNJQWeJJny5MiU CFbClNlSJEGWJWnmRFnzZU2cEXUGtTkQKEShR3nu9DkQAFGFQp06FSj1qUqlCKpqtRrTqtGqC6NK pTq2oNitU816LYgW4VmbYNUCRVuWoMubbOkafEs2rV2sdP2aXEswsFW+WesOnht4L+GmeuUWLhv3 L+PIf5n2rSwZclrOVy+3Vas5seCDiEF3Fb3VcenTbgFTVhx6MubBpR8i1Y01aW6Hu4H35v27YXDj w4UXZ3iceXLky8M+d26U+M0D2LNr385dI/fv4L2DFx+f3arh8+jTq28Ms7379/Djy59PH2FAADs= ------=_NextPart_000_0000_01C0F32C.EFA2AC20 Content-Transfer-Encoding: base64 Content-Type: image/gif Content-Location: file:///F:/up-rws%206.09%20x!/01A%200106%20DRIVERS%20625%20x/TV%20TUNER%20CARDS/PINNACLESYS/PCTV%20SAT/3RD%20PARTY%20-%20TRP2MPG2%20STREAM%201/GRAPHEDIT%20INFOS/Graph%20Building-Dateien/gedit_spy.gif R0lGODdhHQGzAPcAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwMDcwNTQyEAgAGAgAIAgAKAgAMAg AOAgAABAACBAAEBAAGBAAIBAAKBAAMBAAOBAAABgACBgAEBgAGBgAIBgAKBgAMBgAOBgAACAACCA AECAAGCAAICAAKCAAMCAAOCAAACgACCgAECgAGCgAICgAKCgAMCgAOCgAADAACDAAEDAAGDAAIDA AKDAAMDAAODAAADgACDgAEDgAGDgAIDgAKDgAMDgAODgAAAAQCAAQEAAQGAAQIAAQKAAQMAAQOAA QAAgQCAgQEAgQGAgQIAgQKAgQMAgQOAgQABAQCBAQEBAQGBAQIBAQKBAQMBAQOBAQABgQCBgQEBg QGBgQIBgQKBgQMBgQOBgQACAQCCAQECAQGCAQICAQKCAQMCAQOCAQACgQCCgQECgQGCgQICgQKCg QMCgQOCgQADAQCDAQEDAQGDAQIDAQKDAQMDAQODAQADgQCDgQEDgQGDgQIDgQKDgQMDgQODgQAAA gCAAgEAAgGAAgIAAgKAAgMAAgOAAgAAggCAggEAggGAggIAggKAggMAggOAggABAgCBAgEBAgGBA gIBAgKBAgMBAgOBAgABggCBggEBggGBggIBggKBggMBggOBggACAgCCAgECAgGCAgICAgKCAgMCA gOCAgACggCCggECggGCggICggKCggMCggOCggADAgCDAgEDAgGDAgIDAgKDAgMDAgODAgADggCDg gEDggGDggIDggKDggMDggODggAAAwCAAwEAAwGAAwIAAwKAAwMAAwOAAwAAgwCAgwEAgwGAgwIAg wKAgwMAgwOAgwABAwCBAwEBAwGBAwIBAwKBAwMBAwOBAwABgwCBgwEBgwGBgwIBgwKBgwMBgwOBg wACAwCCAwECAwGCAwICAwKCAwMCAwOCAwACgwCCgwECgwGCgwICgwKCgwMCgwOCgwADAwCDAwEDA wGDAwIDAwKDAwP/78DpupYCAgP8AAAD/AP//AAAA//8A/wD//////yH5BAAAAAAALAAAAAAdAbMA AAj/ABMIHEiwoMGDCBMqXMiwocOHECNKnEixosWLCAEk+Mexo8ePIEOKHEmypMmTKFOqXMmypcuX MGOCJKXxH8abOHPq3Mmzp8+dNDcmIEC0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLMWTRDUptavYMOK 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 ------=_NextPart_000_0000_01C0F32C.EFA2AC20--