.NET Framework - Customized video renderer to rotate the video 90 degrees

Asked By avis
08-Jul-07 01:08 PM
Hi All,

I'm developing a media player for WM5.0 using Directx. I have a
customized source filter which will read & decompress the WMV
files.Currently I'm using the default video renderer for rendering and
it works fine. Actually the requirement is to have a fullscreen mode
which has to show the video on the entire screen in landscape on the
PPC.To be fast the screen orientation shouldn't be changed from normal
to landscape, instead the video should be rotated 90 degrees.
How it can be implemented, by developing a customzied video renderer
or any other way still using the default renderer?

Also I noticed that color space converter filter is added in between
my source filter output & the default video renderer input pin. My
source filter outputs data in RGB565 format?.Why it's added in
between?. I know that it is there to correct some incompatiable data
formats. If I know the data format which the default renderer expects
then I can update my source filter to supply the data in the same
format to aviod the color space converter filter.

Expecting your guidlines, directions & suggestion on these.

TIA

With Best Regards,
Sivamurugan
MediaType
(1)
Sivamurugan
(1)
Wolfe
(1)
Lobo
(1)
Incompatiable
(1)
Fullscreen
(1)
Guidlines
(1)
Renderer
(1)
  wolfe71 replied...
11-Jul-07 10:21 AM
Hello Sivamurugan,

In order to find the preferred RGB input format of the video renderer,
you need to query the MediaType of the Video Renderer's Input Pin
AFTER the Video Renderer has been hooked up.  In order to make things
fun, the preferred input format for a Video Renderer on one device MAY
NOT be the same as the preferred input format of a Video Renderer on
another device.

In order to rotate the image 90 degrees, you will have to do one of
two things:

(1) Add your own rotating transform filter into your Filter Graph,
connecting your source filter to your rotating transform filter.  Then
you can do a Render() function call on your rotating transform's
output pin.

(2) Change your source filter to produce video in a rotated
orientation.

You may or may not know - when you change the orientation, that will
(usually) change the dimensions of the video being displayed.  The
Filter Graph will have to be disconnected and reconnected from the pin
whose dimensions change forward to the Video Rendering.  Or you can
tear down the Filter Graph and rebuild it again -- although I do not
think this option is the most user-friendly.

Good Luck with the work ahead of you!

Sincerely,
John Wolfe
Lobo Consulting
Create New Account
help
Smart Phone Developer Discussions Visual Studio (1) DLLs (1) LoadLibrary (1) DllMain (1) Fixups (1) Wolfe (1) Lobo (1) Breakpoint (1) Hello Rahul, You have given very few details about what might be load. Good luck - and let the group know what your problem ended up being. John Wolfe Lobo Consulting wolfe719@lobo.us keywords: problem, in, loading, dll, when, C, files, are, replaced, by, .asm, files description
design with: - IProduct interface - Music and Film classes implementing IProduct - Music class has a property MediaType that can contain enum value MusicMediaType.CD - Film class has a property MediaType that can contain enum value FilmMediaType.DVD be better? Arne One more suggestion about the Your altetrnative IProduct interface - Music and Film classes implementing IProduct - Music class has a property MediaType that can contain enum value MusicMediaType.CD - Film class has a property MediaType that can contain enum value FilmMediaType.DVD be better? 3.The same as 1 but
keys? Smart Phone Developer Discussions AbstractStart (1) ThemeChanger (1) Smartphone (1) Windows (1) Abraham (1) Wolfe (1) Init (1) Lobo (1) firstly which keys are you trying to write too? likely your installer will need and let everyone know what you found out. Knowledge shared is a good thing! John Wolfe Lobo Consulting wolfe719@gmail.com keywords: Insufficient, system, permissions, to, write, registry, keys description: I am
MCE SP2: Set objPlayer = CreateObject("WMPlayer.OCX" ) Set objMediaCollection = objPlayer.MediaCollection Set objTempList = objMediaCollection.getbyattribute("MediaType", "Audio") For i = 0 to objTempList.Count - 1 Set objSong = objTempList.Item(i) 'msgbox(objsong XP (1) ObjMediaCollection.Remove (1) ObjTempList.Count (1) ObjMediaCollection.getbyattribute (1) CreateObject (1) ObjTempList (1) MediaType (1) ObjPlayer (1) The GUI has a menu dialog option checkbox on scripting permission. Can
connection to the Access database OpenConnection() Dim Command As New OleDbCommand("SELECT * FROM TBLMEDIA WHERE [MediaType] = 'Mug shot'", _DBConn) Dim Reader As OleDbDataReader = Command.ExecuteReader() Dim picture As Image = Nothing 'Read total of 5 records. Looking at my code from my first post, I created a 'MediaType' field and set the values to 'Mug shot'. I also made sure that the OLE