Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
![]() |
#1 | Link |
Doom9ing since 2001
Join Date: Oct 2001
Location: Seattle, WA, USA
Posts: 2,002
|
VC-1 and Windows Media Video 9 FAQ
Q: Where can I get the latest and greatest WMV9 (Microsoft VC-1) codec?
A: There are several existing ways to get the WVC1 (Advanced Profile) and WMV3 (Simple/Main) codecs.
A: VC-1 is a codec specification as standardized by SMPTE in 421M. WMV9 is an implementation of that specification. Think of it this way: WMV9 is to VC-1 what x264 is to MPEG-4 AVC. In the context of Microsoft video codecs, WMV9 and VC-1 can be considered one and the same. Note, however, that in the future other companies may choose to implement VC-1 codecs, too. Q: So what's the big deal with Advanced Profile? Is it a new codec? A: In some ways it is a new codec... in others, it's just an extension of the classic WMV9 codec. The SMPTE 421M standard for video compression (nicknamed "VC-1") was originally based on Microsoft's Windows Media Video 9 codec. However, a number of changes and improvements were made to the specification as a part of the SMPTE standardization. Three profiles were defined for VC-1: Simple, Main and Advanced Profile. The existing implementation of WMV9 (FourCC: WMV3) already covered Simple and Main profiles so Microsoft only had to add the remaining third profile. Advanced Profile includes new features such as true interlaced encoding support, transport independent bitstreams, resolutions up to 2048x1536 and bitrates up to 135Mbps. Q: But wait! Didn't WMP10 ship with a WMV Advanced Profile codec years ago? A: Indeed it did. Microsoft began working on its implementation of WMV AP before VC-1 spec was finalized. That codec (FourCC: WMVA) shipped with WMP10 (Format SDK 9.5), but as final changes to the VC-1 spec were made, WMVA got out of sync with the official spec. Today WMVA is no longer VC-1 compliant and is generally considered deprecated. Q: Does the new Advanced Profile codec have a different FourCC? A: Yes, it does. In order to differentiate it from SP/MP codec (FourCC: WMV3) and the non-VC1-compliant AP codec (FourCC: WMVA) and avoid issues with legacy decoders, the VC-1 compliant WMV9 Advanced Profile codec uses a new FourCC code: WVC1. Q: Will switching to WMV9 AP improve the quality of my encodings? Should I stop encoding to Main Profile? A: Just switching from Main Profile to Advanced Profile is not enough to increase quality. Quality is subject to encoder efficiency, not profile level. The differences between profiles - in any codec - are in the feature set and decoder complexity. It is implied that AP content is more difficult to decode than MP content - that's the whole point of having profiles and levels. Q: So what's the advantage of Advanced over Main Profile? A: Take a look the feature tables at http://en.wikipedia.org/wiki/VC-1 and the one below. AP's most important features are:
When deciding whether to encode to Main or Advanced profile, you should consider your target playback platform (PC? Xbox? Zune? PocketPC?) and your source (progressive? interlaced? mixed?). Q: OK, I installed the codec. How do I encode with it? It doesn't show up in VirtualDub. A: All Windows Media codecs are implemented as DirectX Media Objects (DMO) and/or Media Foundation Transforms (MFT). VirtualDub uses ancient Video for Windows interfaces and requires VCM type codecs. Here's a short list of VC-1 encoder apps:
A: The advanced settings of the WMV9 Advanced Profile codec are available through the standard Windows Media Codec APIs, but are also enabled through registry settings. The registry settings are made available in order to allow legacy encoder applications (such as Windows Media Encoder 9) which are unaware of the new API properties to take advantage of the new settings. Windows Media Encoder has not been updated since Windows Media 9 Series and therefore does not have any user interface elements for the new codec. Yeah, it's not the greatest and user friendliest interface, but it's actually how most codecs store their long term settings. Fortunately, there are alternatives:
A: These are known issues. Microsoft has released a hotfix that addresses the problems. Q: Cscript.exe fails to initialize the WMEncoder object when I try to use WMCmd.vbs with 32-bit WME9 on XP/Vista x64. Is WMCmd.vbs encoding broken in this scenario? A: Not at all. The default script interpreter on Windows x64 is 64-bit cscript.exe. WME9 x86 installs 32-bit COM objects (used by WMCmd.vbs). In order to run WMCmd.vbs, you need to use the 32-bit cscript.exe located in \Windows\SysWOW64 or simply run the 32-bit cmd.exe command-prompt which will ensure the 32-bit version of cscript.exe gets invoked. Q: Should I use the 32-bit or 64-bit version of Windows Media Encoder 9? A: 64-bit WMV codecs don't really offer much of a performance improvement (if any at all) over 32-bit WMV codecs. The important thing to keep in mind is that if you want to use WME9 x64 for transcoding, your source decoders will need to be 64-bit too. So unless you've got 64-bit versions of XviD, MPEG-2, H.264 and whatever other decoders you want to use - it's probably not worth the hassle. Q: WME9 gives me an error when I try to use Avisynth script as source. Does WME9 not support .avs input? A: It does - sort of. WME9 was developed years ago when Avisynth wasn't very widely used so the WME9 team never considered explicitly adding Avisynth support. However, due to Avisynth's similarity to the AVI interface, it's possible to force WME9 to read Avisynth scripts anyway:
Q: Do these registry settings apply only to Advanced Profile (WVC1)? A: Depends on which codec version you are using. If you're using the standalone WVC1 codec download package on top of WMP10/WMFSDK9.5, then the registry settings will affect only Advanced Profile (WVC1) encoding. If, on the other hand, you are using WMP11/WMFSDK11 (or Windows Vista or later), the registry settings will affect all 3 profiles - Simple, Main (WMV3) and Advanced (WVC1). However, not all registry settings are valid in every profile. Here is how they map out: ![]() Q: Where can I find out more about VC-1 and WMV9 Advanced Profile? A: Check out these links:
I'll post more info as it becomes available. Last edited by zambelli; 6th December 2012 at 07:55. |
![]() |
![]() |
![]() |
#2 | Link |
Registered User
Join Date: Nov 2001
Posts: 9,770
|
thanks a lot for this information thread
![]() plz note the following: - WMAudio discussions belong in the Audio Encoding forum - WMPlayer discussions belong in the Software Players forum If you have any suggestions, ideas which points should be added or found any broken links, feel free to post below! Please don't use this sticky to discuss any WMV9 issues, this thread is meant for info only! If you have any questions plz search the forum, perhaps they have been answered already and only then start a new thread thanks, bond
__________________
Between the weak and the strong one it is the freedom which oppresses and the law that liberates (Jean Jacques Rousseau) I know, that I know nothing (Socrates) MPEG-4 ASP FAQ | AVC/H.264 FAQ | AAC FAQ | MP4 FAQ | MP4Menu stores DVD Menus in MP4 (guide) Ogg Theora | Ogg Vorbis use WM9 today and get Micro$oft controlling the A/V market tomorrow for free Last edited by bond; 20th June 2006 at 17:52. |
![]() |
![]() |
![]() |
#3 | Link |
Registered User
Join Date: Sep 2004
Location: Near LA, California, USA
Posts: 1,545
|
Whats the difference between WMVideo Advanced Decoder DMO and WMVideo Decoder DMO?
I thought it had to do with one decoder being able to decode advanced profile VC1 vids and the other couldn't, but the WMVideo Decoder DMO seems to work fine with Advanced Profile HD-DVDs.
__________________
Pirate: Now how would you like to die? Would you like to have your head chopped off or be burned at the stake? Curly: Burned at the stake! Moe: Why? Curly: A hot steak is always better than a cold chop. |
![]() |
![]() |
![]() |
#4 | Link | |
Doom9ing since 2001
Join Date: Oct 2001
Location: Seattle, WA, USA
Posts: 2,002
|
Quote:
The v11 decoder (wmvdecod.dll) is the best WMV9 decoder for all 3 profiles. |
|
![]() |
![]() |
![]() |
#5 | Link |
Registered User
Join Date: Sep 2004
Location: Near LA, California, USA
Posts: 1,545
|
If anybody has issues with libavcodec's VC1 decoder, Kostya is the main developer of the decoder as of now. You can reach him\her at this website. http://codecs.multimedia.cx/
__________________
Pirate: Now how would you like to die? Would you like to have your head chopped off or be burned at the stake? Curly: Burned at the stake! Moe: Why? Curly: A hot steak is always better than a cold chop. |
![]() |
![]() |
![]() |
#6 | Link |
Registered User
Join Date: Sep 2006
Posts: 2,197
|
hm its seems that wmvideo decoder dmo has the same problem as ffdshow with libavcodec, both dont work properly with interlaced vc-1 video as it seems.
in case of wmvideo decoder dmo its uneven distribution of the use of both cores. while its ~50 : 50 for every other progressive VC-1 video (hd dvd or blu-ray streams for example), its something like 66 - 33 or 75 - 25 in case with interlaced vc-1 video (example: galapagos HD DVD 1080i; sample: http://www.sendspace.com/file/lvlvtv ) Last edited by Thunderbolt8; 21st November 2007 at 04:20. |
![]() |
![]() |
![]() |
#7 | Link | |
Moderator
![]() Join Date: Jan 2006
Location: Portland, OR
Posts: 4,653
|
Quote:
|
|
![]() |
![]() |
![]() |
#8 | Link |
Registered User
Join Date: Feb 2009
Posts: 1
|
Hi,
I have a question regarding VC-1 decoder FW/RW implementation for clips with B-frames. Let us say the sequence of frames in the clip is I, P, B, B, I, B, B, P. If I do a Forward at the beginning, I would need to seek to the next "I frame". So I would skip I, P, B, B in the above sequence and jump to I, B, B, P. Now I decode the "I frame" but decoding the next frame, which is a B frame, requires 2 references. But I have only 1 frame (I frame) before it because the history is flushed. How to handle this case? Is it that we need to skip all the B frames in this example and jump to P frame - i.e in the sequence I, B, B, P decode I, P skipping B, B? I am asking this question because I did not see any description in the spec about bitstream seek and how to manage reference frames during a Fast Forward or Rewind operations. I hope this question is relevant to this thread. |
![]() |
![]() |
![]() |
#9 | Link |
Registered User
Join Date: Mar 2010
Posts: 1
|
Microsoft Expression Encoder 3 is free!
http://www.microsoft.com/downloads/d...d-1be12eef89a8 http://www.microsoft.com/downloads/d...1-ad6ea7b62fbb |
![]() |
![]() |
![]() |
#10 | Link | ||
Banned
Join Date: Mar 2011
Posts: 37
|
Quote:
what is/are the exact difference(s) between the field-based and the frame-based encodings? ![]() EDIT: Nevermind, I should have paid more attention to the damn documentation :–/ Quote:
Last edited by space1999; 16th April 2011 at 14:24. |
||
![]() |
![]() |
![]() |
#12 | Link |
Derek Prestegard IRL
![]() Join Date: Nov 2003
Location: Los Angeles
Posts: 5,980
|
Yes, very much so. I can't think of any applications where new VC-1 encoding makes sense. Legacy stuff is still MPEG-2, current stuff is AVC, HEVC, VP9, AV1, etc.
Please don't bump 8 year old threads ![]() |
![]() |
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|