5,596,179 Members 34,137 Now Online
XDA Developers Android and Mobile Development Forum

[minnow for whale]USB Video Out Dev&Dig (Status:success)

Tip us?
 
marsrogers
Old
(Last edited by marsrogers; 28th August 2012 at 12:53 PM.)
#1  
Member - OP
Thanks Meter 32
Posts: 59
Join Date: Dec 2010
Location: Shanghai
Default [minnow for whale]USB Video Out Dev&Dig (Status:success)

We all remember at the MIX10 Joe Belfiore projects his phone onto the big screen. Even on the recent XBOX show he did that again.

http://www.youtube.com/watch?v=9IA28wRWAI8

http://www.youtube.com/watch?v=uCDXaJh4bwE

this kind of video out is through micro-usb, normal type one. You can find Joe is using a Lumia 800 in his hand in the XBOX video.

I asked him through twitter and received an answer of "Special Software build".
I did some research and dig into the register keys. Found something.

This is a special driver that only shared inside the MS and normally won't be out anytime soon.

...
(Deleted because they are no longer of any means)
...

----Update on 2012.Feb 9 China Time----
Quote:
Originally Posted by marsrogers View Post
Big Step Forward, since the DFT Rom released, the exe can be run in WP7.
One thing I need now is if someone can build an app for me, which calls the changeusbprofile.exe under /windows

Things here is I'm using the Opera mini launcher to call it, but the path is under /application, not under /Windows, and the result is my computer can not detect the phone when the phone reboots. I think this may relates to the path I call.

I'm not a typical tech-man, so I need help here. Thanks!
----Update on 2012.Feb 9 23:00 China Shanghai Time----
Today I really thank @GoodDayToDie and @ultrashot for helping so many.

@ultrashot sent me a xap app that does the job, calling the changusbprofile.exe in Windows folder. Although result is the same with yesterday, but now I am more sure that we are one more step closer to our destination. I'll wait my new micro usb cables to arrive and then I'll make a second try. Thank you again!!! Can't reach here without you kind people~~~

----Update on 2012.Feb 10 19:22 China Shanghai Time----
I removed the attachments because the project is now on special stage. I will put them back after the feature works, or after I can't make it work. Either way, I will put them back~~~Don't worry.

----Update on 2012.Feb 12 15:22 China Shanghai Time----
Complete failure....
New cable arrived and still my computer can't recognize the phone in usb video out mode...I changed a computer and till the same...

Will think about next steps...if I can't make figure it out next week, I shall put everything at present stage onto here.

----Update on 2012.Feb 14 10:22 China Shanghai Time----
Think it over, and think there is still a hill in front of us. The changeusbprofile.exe seems just to be a toggle, like a shortcut. But the real port of usb video out hasn't been enabled. On my samsung focus, I checked the *#7284# in Diagnosis Mode before and after I ran the changeusbprofile. The thing changes from Zun to Tethering, while it's not the real tethering mode. I think the changeusbprofile is just doing a job like changing usb mode from zune to tethering or to Diag mode. So that's to say, we haven't really seen the iceberg yet. I'll keep finding and hoping that anyone can get any help on this. This may requires me to dig some post in Windows Mobile age, since some parts between the two system are same.

And I contacted the kind secret person, and get the news that the usb cable doesn't really matters. Any short cables should serve the job. So our attention should move back onto the phone again.

----Update on 2012.Feb 15 15:13 China Shanghai Time----
I figured it out~The changeusbprofile changes the value in Registry Local_Machine/Drivers/USB/FunctionDrivers, DefaultClientDriver=CompositeFn to UFN_VIDSTREAM_CLASS. Every value change here points to a folder in FunctionDrivers.
in Samsung Focus, it is like below:
/CompositeFn;
/CompositeFn_QCOM;
/CompositeFn_SAMSUNG;(This is the one when we choose Diag Mode in Diagnosis App *#7284#)
/MtpClientDrvUsb;
/Samsung_USBSER_Modemlink;
/Serial_Class;
/Serial_Class_Diag_Qcom;
/Serial_Class_Nmea_Qcom;
/Serial_Class_Trace_Qcom;
/USBSER_Class;
/USBSER_Modemlink_Qcom;

There is no UFN_VIDSTREAM_CLASS folder here, so that explains why the changeusbprofile works well while it is no use at all...
Next step, I will try looking for the Setting in Asus E600, if I can find someone who has this device. Maybe Samsung Taylor will do the same.
If you can help, don't hesitate~~

----Update on 2012.Mar 3 15:13 China Shanghai Time----

Quote:
Originally Posted by marsrogers View Post
Updated some info
I looked into the Key name, UFN_VIDSTREAM_CLASS, which is very unique way to name.

This belongs to a USB function Driver, and the only thing I saw similar is a UFN_PRINTER_CLASS, which is in Wince 6.0
http://msdn.microsoft.com/en-us/libr...edded.60).aspx
And you may check this
http://msdn.microsoft.com/en-us/libr...edded.60).aspx

So I'm still waiting for somebody who can offer any help on this. I talked with Mr. Yang Zhongke, who invented RecX prototype, fiinix optimized that, but not the inventor.
His way is not quite efficient and seems can't go further. But he will do some work for this in a foreseeable future.

Any one has a Asus E600, plz contact me, will keep your name secret.
Thanks!~
----Update on 2012.Mar 6 1:02 China Shanghai Time----
Project suspended, cuz according to a source, WP8 will have Remote desktop support.
Quote:
"The ability to take screenshots (via Remote Desktop, no less) will be a feature of Windows Phone 8. I don't see anything changing before that."
Quote:
"Only that you will be able to remote desktop into the Phone, which should allow you to create videos and/or screenshots from a PC."
The source is quite trustful, and I have no reason to doubt that.
So just be patient, and it will come. No need for this project to keep going.
At last, use my words in the email I talked with the source.
Quote:
Me:Really puzzled why MS doesn't release such a cool and convenient feature. Haven't they realized that when people use this feature, they are promoting WP7 for free...(Actually I've promoted in this way for Android as a "side effect" in the company I work in for three months and as a result more than 20 Samsung Galaxy SII were added during this period. Google and Samsung should thank me...)
---Update on 2012.August 17 14:21 China Shanghai Time---
Quote:
A very kind man has sent me the 7003 LG Panther ROM, which has the necessary file, and we successfully got them out. But I just lost my sell phone, so it may take some time to buy a new WP7 Samsung focus. Maybe next week. Very close to the final line. God bless us. Cheers.
Good luck!~

--Update on 2012.August 20 22:37 China Shanghai Time--
Quote:
I tried to make it work while it still failed. The computer recognised my cellphone as WM7VIDSTREAM while the PC side app still does n't work.
I think this could be related to that the PC side app is for mango and the cellphone side is grabbed from 7003. I uploaded the VSD folder which contains what I think are the everything we need for now.
If anyone wants to build an rom, now it's the time.
--Update on 2012.August 23 17:42 China Shanghai Time--
Quote:
One friend, who you will know someday later, gave me a home-make cab which includes the pkg file from Microsoft. Right now it is not for public for now. But it is successful.
Although I started this project, but as it always be, not a technique project but a sociology one. So there are many things and many people's benefit to consider. So just wait for some time, it is there when it is there.
For technique part, the pkg file includes as same as the VSD.rar in the attachment.

Cheers

--Update on 2012.August 28 19:43 China Shanghai Time--

Quote:
Check here, you have what you want. http://forum.xda-developers.com/show....php?t=1856509
This is a long story, and finally it ended beautifully.
"Always be closing"--Glengarry Glen Ross (1992)
To me? Yeah, this project closed.
Regards,
marsrogers
Attached Thumbnails
Click image for larger version

Name:	Screen Capture (17).jpg
Views:	880
Size:	101.2 KB
ID:	893746   Click image for larger version

Name:	Screen Capture (21).jpg
Views:	668
Size:	93.8 KB
ID:	895720   Click image for larger version

Name:	original_AIWM_342c000054f1118f.jpg
Views:	2269
Size:	97.4 KB
ID:	1277316  
The Following 7 Users Say Thank You to marsrogers For This Useful Post: [ Click to Expand ]
 
GoodDayToDie
Old
#2  
Recognized Developer
Thanks Meter 2471
Posts: 5,291
Join Date: Jan 2011
Location: Seattle
Well, I can tell you a little about the thing you found (good investigation, by the way!)

First off, that's a module - it's kind of like a file (and shows up in the filesystem) but is baked into the ROM and can't be opened, much less modified, like a normal file.

There are tools that are supposed to be able to re-assemble modules, such as recmod. I haven't been able to get them to work, but maybe I'm just doing it wrong. In theory, it should be possible to create a "normal" DLL out of the components of a module.

The next trick is getting that rebuilt DLL onto the phone. This can be done pretty easily on Samsung, and is possible on interop-unlocked HTC, but on LG/Toshiba/Fujitsu/Dell/Nokia we don't currently have a way.

After that, you'll need to "install" the driver. Now, there's a registry entry for doing this. The problem is, I only know that the entry is required - I don't know if it's sufficient, or if there's also a database or something that must be updated. In any case, any phone where we can put a file into the Windows folder, we can also do registry editing.

Then there's the thing of actually getting the UI for this feature (the Settings "app" to control it). It's vaguely possible that the retail ROMs include it, but this is doubtful, so you'll probably need to pull it out of that old ROM. It's probably an EXE, so it's unlokely you can make a XAP for it - instead, you'll need to install it into the phone directly, including putting in the registry entried to launch it (this is a guess, I've never tried).

It's worth noting here that it's probably *WAY* easier to just pull that feature out of your old ROM and bake it into a custom ROM. This should be pretty straightforward, however, then it's only useful on custom ROMs, which in turn are only possible on HTC phones (right now).
 
marsrogers
Old
#3  
Member - OP
Thanks Meter 32
Posts: 59
Join Date: Dec 2010
Location: Shanghai
Quote:
Originally Posted by GoodDayToDie View Post
Well, I can tell you a little about the thing you found (good investigation, by the way!)

First off, that's a module - it's kind of like a file ...
Thanks for your reply. I did something with the recmod, but the dll it packed is only 1kb, apparently it's not useful. I guess it is because there is no imageinfo.bin inside the dll folder. I used some tools recommended by Da_G who started to try modding WP7 on the first day. Like nbsplit.exe to creat a IMGFS.bin, and use xidump to dump it. Just like what they have done before, I got the dll folders as same as I got at the beginning.

You may be right for the part that it's rather easier to build a new rom. There are tools to repack the whole IMGFS from files while I didn't find any good ways to pack a specific folder.

May ask more people all over the world (thx to the internet) cuz I just moved from android. In android, I use cygwin to pack the Odin Tar files, but it's totally different of course.

Anyway, doing this research is just for fun~ All is because MS is moving too slow...not to mention the NFC function I already have for a year on my Nexus S~~

Thank U again!~
 
pLUSpISTOL
Old
#4  
pLUSpISTOL's Avatar
Senior Member
Thanks Meter 63
Posts: 381
Join Date: Jan 2009
This would be awesome good luck
 
-WP7User-
Old
#5  
Senior Member
Thanks Meter 32
Posts: 291
Join Date: Aug 2010
Location: Zurich
Really a good find! Found that reg entry some time ago but I didn't care about it...Now that you bring up that thing again I also think that this could be very useful (even if you want it just for fun and not for business purposes). But note that the DLL file doesn't have to be in the /windows folder. It could be somewhere different, too.
Device: Sony Xperia Z C6603 black 16GB with 64GB Sandisk microSDXC card
Rom: NamelessROM
Recovery: TWRP
 
GoodDayToDie
Old
#6  
Recognized Developer
Thanks Meter 2471
Posts: 5,291
Join Date: Jan 2011
Location: Seattle
@-WP7User-: That's an interesting idea, and might enable this to work on LG phones (where we have registry but not filesystem control). The registry value that speicies the path to the driver binary only ever gives the file name (example:
[HKLM\Drivers\Builtin\HTCFileUtility]
Dll="HTCFileUtility.dll")
However, it might work to specify a full path instead of just a relative one (relative to the \Windows folder, one must assume, since that's where the files in question are located).

However, there's still the issue of actually getting the phone to load the driver correctly. Just adding or editing the registry value for Drivers\Builtin didn't work for me - it did something (the driver stopped working when I chancged the value for an existing driver) - I wasn't able to make a user-added DLL work (even a different version of an official driver).
 
-WP7User-
Old
#7  
Senior Member
Thanks Meter 32
Posts: 291
Join Date: Aug 2010
Location: Zurich
any news on this?
Device: Sony Xperia Z C6603 black 16GB with 64GB Sandisk microSDXC card
Rom: NamelessROM
Recovery: TWRP
 
drkfngthdragnlrd
Old
#8  
drkfngthdragnlrd's Avatar
Recognized Developer
Thanks Meter 264
Posts: 2,400
Join Date: Mar 2008
Location: Pacoima, CA

 
DONATE TO ME
The old Recmod doesn't work on WP7 files. I believe there is a patched version for WP7 floating around XDA somewhere. Have to check my files, could of swore I downloaded it once.

EDIT: Here you go.
Attached Files
File Type: zip FixRecMod.zip - [Click for QR Code] (31.9 KB, 119 views)
T-Mobile HTC 8X
ROM: Stock | HardSPL:Stock | Radio: Stock


The Following 2 Users Say Thank You to drkfngthdragnlrd For This Useful Post: [ Click to Expand ]
 
marsrogers
Old
#9  
Member - OP
Thanks Meter 32
Posts: 59
Join Date: Dec 2010
Location: Shanghai
I have get the source code for creating the dcTNONE_ANALOGTV.dll, they are .c file and .def file.
My Problem is I don't know how to build them.
And I have got the changeusbmode.exe and the xml file with it. Figuring an idea to put them in.
The Following User Says Thank You to marsrogers For This Useful Post: [ Click to Expand ]
 
drkfngthdragnlrd
Old
#10  
drkfngthdragnlrd's Avatar
Recognized Developer
Thanks Meter 264
Posts: 2,400
Join Date: Mar 2008
Location: Pacoima, CA

 
DONATE TO ME
Quote:
Originally Posted by marsrogers View Post
I have get the source code for creating the dcTNONE_ANALOGTV.dll, they are .c file and .def file.
My Problem is I don't know how to build them.
And I have got the changeusbmode.exe and the xml file with it. Figuring an idea to put them in.
Download the FixRecMod.exe above I posted. Drag the dctNONE_analogtv.dll folder with the "s000 s001 s002 s003 s004" files in it over the exe. Now you'll find the actual DLL file inside the folder. Any problems, just upload the folder & I'll do it for you.
T-Mobile HTC 8X
ROM: Stock | HardSPL:Stock | Radio: Stock



The Following User Says Thank You to drkfngthdragnlrd For This Useful Post: [ Click to Expand ]
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes