Remote signal in BDA?

Now in my BDA driver, I get the signal from the remote by interrupt pipe,

But I don’t know how to get the IR data in app.

Are there some good methods to deal with the remote signal in driver and
apps?

weilufei wrote:

Now in my BDA driver, I get the signal from the remote by interrupt pipe,

But I don’t know how to get the IR data in app.

Are there some good methods to deal with the remote signal in driver
and apps?

Usually, the remote control is exposed as a separate HID device that
generates standard keyboard codes. What are you getting in your BDA
driver? Is it the raw IR waveform?


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

In the product, the remote signal is from an infrared signal as the common
TV do. When the remote signal sends to the device, the device will have an
interruptive Signal. I get the key value by interrupt pipe in driver (like a
value 0x00478701, the value is encoded by the hardware), but now I don’t
know how to get the key value in apps. ( Because, in BDA doc, it says that
do not to use the IOCTL).
So if the apps have some IOCTLs will to do, what the driver and apps should
to do?


Re: [ntdev] Remote signal in BDA?

weilufei wrote:

Now in my BDA driver, I get the signal from the remote by interrupt pipe,

But I don’t know how to get the IR data in app.

Are there some good methods to deal with the remote signal in driver
and apps?

Usually, the remote control is exposed as a separate HID device that
generates standard keyboard codes. What are you getting in your BDA
driver? Is it the raw IR waveform?


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

On Tue, Aug 12, 2008 at 09:45:45AM +0800, weilufei wrote:

In the product, the remote signal is from an infrared signal as the common
TV do. When the remote signal sends to the device, the device will have an
interruptive Signal. I get the key value by interrupt pipe in driver (like a
value 0x00478701, the value is encoded by the hardware), but now I don't
know how to get the key value in apps. ( Because, in BDA doc, it says that
do not to use the IOCTL).
So if the apps have some IOCTLs will to do, what the driver and apps should
to do?

When an AVStream driver needs to offer some custom services, it just
creates a custom property set. Assuming you have an application that
knows what to do with 0x00478701, that's an easy solution.

Tim Roberts, xxxxx@probo.com
Providenza & Boeklheide, Inc.

Yes, I do like that.
This is my code:
//I define this custom property
DEFINE_KSPROPERTY_TABLE(RFTunerCustomControl)
{
DEFINE_KSPROPERTY_ITEM
(
KSPROPERTY_CUSTOMTW6801_AUDIO_REMOTE, // 1
RFTunerGetAudioRemote, // GetSupported or
ndler
sizeof(KSPROPERTY_CUSTOMIC_AUDIO_REMOTE_S), // MinProperty
sizeof(KSPROPERTY_CUSTOMIC_AUDIO_REMOTE_S), // MinData
NULL, // SetSupported or
Handler
NULL, // Values
0, // RelationsCount
NULL, //
Relations
NULL, // SupportHandler
0 // SerializedSize
)
};
//Tuner Node properties
DEFINE_KSPROPERTY_SET_TABLE(RFTunerNodeProperties)
{
DEFINE_KSPROPERTY_SET
(
&KSPROPSETID_BdaFrequencyFilter, // Set
SIZEOF_ARRAY(RFTunerBdaFrequencyFilter), // PropertiesCount
RFTunerBdaFrequencyFilter, // PropertyItems
0, // FastIoCount
NULL // FastIoTable
),
DEFINE_KSPROPERTY_SET
(
&KSPROPSETID_BdaSignalStats, // Set
SIZEOF_ARRAY(RFTunerBdaSignalStats), // PropertiesCount
RFTunerBdaSignalStats, // PropertyItems
0, // FastIoCount
NULL // FastIoTable
),
/////////// Custom Property////////////////
DEFINE_KSPROPERTY_SET
(
&KSPROPSETID_CUSTOMSUNSCONTROL, // Set
SIZEOF_ARRAY(RFTunerCustomControl), // PropertiesCount
RFTunerCustomControl, // PropertyItems
0, // FastIoCount
NULL // FastIoTable
)
};

The app uses the DeviceIoControl to send the command to get the remote data.
But the app always get the error information :"can not get this property!"
So I don't know how to do?

/////////////////////////////////////////////////////////
On Tue, Aug 12, 2008 at 09:45:45AM +0800, weilufei wrote:

In the product, the remote signal is from an infrared signal as the
common TV do. When the remote signal sends to the device, the device
will have an interruptive Signal. I get the key value by interrupt
pipe in driver (like a value 0x00478701, the value is encoded by the
hardware), but now I don't know how to get the key value in apps. (
Because, in BDA doc, it says that do not to use the IOCTL).
So if the apps have some IOCTLs will to do, what the driver and apps
should to do?

When an AVStream driver needs to offer some custom services, it just creates
a custom property set. Assuming you have an application that knows what to
do with 0x00478701, that's an easy solution.

Tim Roberts, xxxxx@probo.com
Providenza & Boeklheide, Inc.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:

To unsubscribe, visit the List Server section of OSR Online at

weilufei wrote:

Yes, I do like that.

The app uses the DeviceIoControl to send the command to get the remote data.

Why not use IKsControl? Where did you get the driver handle to send the
property?

But the app always get the error information :“can not get this property!”
So I don’t know how to do?

Your data structures looik basically correct. Show us the application
code that you used to get the property.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

Thanks,Tim
I have solved this problem, I write a filter just to set the
properties.
In the last email, I put the property in the tuner node of tuner filter, so
the app can not get the property. If I still want to do like that. Are there
some
APIs that can to get the property of a node?

weilufei wrote:

Yes, I do like that.

The app uses the DeviceIoControl to send the command to get the remote
data.

Why not use IKsControl? Where did you get the driver handle to send the
property?

But the app always get the error information :“can not get this property!”

So I don’t know how to do?

Your data structures looik basically correct. Show us the application
code that you used to get the property.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

weilufei wrote:

Thanks,Tim
I have solved this problem, I write a filter just to set the
properties.
In the last email, I put the property in the tuner node of tuner filter, so
the app can not get the property. If I still want to do like that. Are there
some APIs that can to get the property of a node?

In theory, you can send a KSNODEPROPERTY struct in the ioctl instead of
a KSPROPERTY struct. KSNODEPROPERTY includes a “NodeId” member that
lets you target a specific node.

I vaguely recall a thread in the last two years that described a problem
with sending properties to nodes, but I think it was something specific
in ksproxy.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.