Martin,

That's excellent! So I can test it with the "wss" binary (plus a little bug
fix maybe).

Great! Let's see if my TV can detect it...

Cheers

Steve


On 10/07/07, Martin Dauskardt <[EMAIL PROTECTED]> wrote:

You can use the wss tool from Hans:
http://ivtvdriver.org/viewcvs/ivtv/trunk/test/

If you execute "wss 1" it will set the TV to a Zoom-mode (no anarmorph
16:9).
You will have to modify the code to get real 16:9

Look at the code:

wss = 8 + (atol(argv[1]) ? 3 : 0);
       if (argc == 3)

This leads to wss value 8 (4:3) or 11 (PalPlus Zoom). You need value 7 for
anarmorph 16:9

I use the following code for the vdr pvr350-plugin:

void cPvr350Device::Set_wss_mode()
{
       struct v4l2_format fmt;
       struct v4l2_sliced_vbi_data data;

       fmt.fmt.sliced.service_set = V4L2_SLICED_WSS_625;
       fmt.type = V4L2_BUF_TYPE_SLICED_VBI_OUTPUT;
       if (ioctl(fh, VIDIOC_S_FMT, &fmt) != 0) {
               esyslog("pvr350: Set VBI mode failed\n");
       }
       if (ioctl(fh, VIDIOC_G_FMT, &fmt) != 0) {
               esyslog("pvr350: VIDIOC_G_FMT failed\n");
       }
       data.id = V4L2_SLICED_WSS_625;
       data.line = 23;
       data.field = 0;
       data.data[0] = wss_data;
       data.data[1] = 0;
       if (wss_data == 7) {
               printf("pvr350: set wss mode 16:9 (anarmorph)\n");
       }
       if (wss_data == 8) {
               printf("pvr350: set wss mode 4:3\n");
       }
       write(fh, &data, sizeof data);
}

You must open the device before you can use the code above:

fh = open("/dev/vbi16",O_WRONLY);

Your application must set wss==7 if it detects

Does it help you?

Greets,
Martin

_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel

_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel

Reply via email to