- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
I would use media sdk(3.0 beta) to do the h264 decode, by simple_decode.
The addachment file is by test movie(raw h264), you could play the movie by any player which support h264.
But I found the error (figure break) by intel media sdk.
by software , that is all fine:
saimple_deocode h264 -i ctm.h264 -o ctm.yuv -sw.
by using raw yuv player, set 1280x720, yuv 420 :
we could view it as (the 124th frame):
but by hardware :
saimple_deocode h264 -i ctm.h264 -o ctm.yuv -hw.
same frame has been decoded as:
Similiar result by media sdk 2.0.
May I avoid this condition by hardware acceleration on midia sdk ?
thank you.
my platform :
windows 7 SP1.
intel i3-2310M (HD2000).
graphic card driver version : 8.15.10.2342.
I would use media sdk(3.0 beta) to do the h264 decode, by simple_decode.
The addachment file is by test movie(raw h264), you could play the movie by any player which support h264.
But I found the error (figure break) by intel media sdk.
by software , that is all fine:
saimple_deocode h264 -i ctm.h264 -o ctm.yuv -sw.
by using raw yuv player, set 1280x720, yuv 420 :
we could view it as (the 124th frame):
but by hardware :
saimple_deocode h264 -i ctm.h264 -o ctm.yuv -hw.
same frame has been decoded as:
Similiar result by media sdk 2.0.
May I avoid this condition by hardware acceleration on midia sdk ?
thank you.
my platform :
windows 7 SP1.
intel i3-2310M (HD2000).
graphic card driver version : 8.15.10.2342.
Link Copied
6 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Gaiger,
Thanks for your thorough description of the problem.
It looks like there are two things to fix to get this working for you.
1) Media SDK only supports elementary streams: The test stream you provided (ctm.h264) is not an elementary stream. A check with tools like mediainfo and ffprobe reveals that this is actuallyin AVI format.The Media SDK manual and developer guide have more details on formats. In general, it is assumed that the application using Media SDK (or you, in the case of the console samples) will take care of container formatdemuxing/muxing.
2) Upgrade to the newest driver: After demuxing/splitting the h264 video stream from the AVI container, I was able to replicatethe behavior you describedwith driver 8.15.10.2342.An upgrade to the latest graphics driver version (2361) from http://downloadcenter.intel.comfixed the problem in my tests.
Please let us know if you see anything that does not look right after trying these changes.
Regards,
Jeff
Thanks for your thorough description of the problem.
It looks like there are two things to fix to get this working for you.
1) Media SDK only supports elementary streams: The test stream you provided (ctm.h264) is not an elementary stream. A check with tools like mediainfo and ffprobe reveals that this is actuallyin AVI format.The Media SDK manual and developer guide have more details on formats. In general, it is assumed that the application using Media SDK (or you, in the case of the console samples) will take care of container formatdemuxing/muxing.
2) Upgrade to the newest driver: After demuxing/splitting the h264 video stream from the AVI container, I was able to replicatethe behavior you describedwith driver 8.15.10.2342.An upgrade to the latest graphics driver version (2361) from http://downloadcenter.intel.comfixed the problem in my tests.
Please let us know if you see anything that does not look right after trying these changes.
Regards,
Jeff
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Jeffrey :
Thank your guide, after update driver version to 2361, all are fine both by hardware or software.
But there is one problem arising:
May I get (Intel) driver version by an simple way, instead of by windowa api, in other words,
Is there useful library/tool/code to get the intel driver verstion ? :-D
By the way , to my knowledge, the avi is the simplest container to mux video/audio.
I have check the avi format could by decode by media sdk, which would ingore the audio part.
The attachment movie I provided on floor 0th of the post is original here. I convert it by avidemux.
avidemux support those output :
So, do you meaned, the media sdk simple_encode output, or simple_decode input, should be equivalent to the "Mpeg Video" format ?
thank you.
Thank your guide, after update driver version to 2361, all are fine both by hardware or software.
But there is one problem arising:
May I get (Intel) driver version by an simple way, instead of by windowa api, in other words,
Is there useful library/tool/code to get the intel driver verstion ? :-D
By the way , to my knowledge, the avi is the simplest container to mux video/audio.
I have check the avi format could by decode by media sdk, which would ingore the audio part.
The attachment movie I provided on floor 0th of the post is original here. I convert it by avidemux.
avidemux support those output :
Avi | Plain avi, no OpenDML |
Avi Dual Audio | Avi with two audio tracks |
Mpeg Video | Raw elementary stream |
Mpeg A+V (PS) | Mpeg PS stream (VCD/SVCD/DVD) |
Mpeg A+V (TS) | Mpeg TS stream to stream to a dreambox :) |
OGM | Audio track must be MP3, AC3 or Vorbis (CBR/VBR) |
Unp. vop. | Avi+mpeg4 with the packed vop hack stripped |
So, do you meaned, the media sdk simple_encode output, or simple_decode input, should be equivalent to the "Mpeg Video" format ?
thank you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Gaiger,
One convenient way to get the driver version is via the Graphics and Media Control Panel
http://www.intel.com/support/graphics/sb/CS-022130.htm?wapkw=(graphics+and+media+control+panel)
The graphics driver version is under Options and Support->InformationCenter.
Are you looking for a way for your application code to check the version? It is possible, but a bit more involved. Let us know if you need more information on this. In general, the latest available graphics driver from downloadcenter.intel.com is the best one to have. This type of check may not be necessary.
As for using AVI as an input to Media SDK, it is not recommended. In some cases it might happen to work, but it is not a general solution.
I'm not an avidemuxexpert, but a quick check with 'MPEG Video' as output format appears to write elementary streams for mpeg2 and h264/AVC video. This is appropriate input for the sample decode application, and the sample encode will also write these elementary stream formats.
Jeff
One convenient way to get the driver version is via the Graphics and Media Control Panel
http://www.intel.com/support/graphics/sb/CS-022130.htm?wapkw=(graphics+and+media+control+panel)
The graphics driver version is under Options and Support->InformationCenter.
Are you looking for a way for your application code to check the version? It is possible, but a bit more involved. Let us know if you need more information on this. In general, the latest available graphics driver from downloadcenter.intel.com is the best one to have. This type of check may not be necessary.
As for using AVI as an input to Media SDK, it is not recommended. In some cases it might happen to work, but it is not a general solution.
I'm not an avidemuxexpert, but a quick check with 'MPEG Video' as output format appears to write elementary streams for mpeg2 and h264/AVC video. This is appropriate input for the sample decode application, and the sample encode will also write these elementary stream formats.
Jeff
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jeffrey:
Thank you.
But I mean... it there an simple way to get graphic driver version, by some library or API..
I would code an program based on media sdk, the program could detect driver version. If it is too old, there is a warning message to tell users who should update their driver version....
Is it possible ? Thank you.
Thank you.
But I mean... it there an simple way to get graphic driver version, by some library or API..
I would code an program based on media sdk, the program could detect driver version. If it is too old, there is a warning message to tell users who should update their driver version....
Is it possible ? Thank you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Gaiger,
Since Media SDK's hardware accelerationdepends on the graphics driver it does make sense to keep them in sync. Programs can query the version of the session to determine the API level. This does not offer specific graphics driver version numbers, but in many cases should be sufficient to determine if it is appropriate to supply a warning message telling users that a graphics driver upgrade will improve functionality.
If in your case the graphics driver version number is important there are several ways to obtain this information. However, since this is general Windows programming information it is beyond the scope of this forum.
Regards,
Jeff
Since Media SDK's hardware accelerationdepends on the graphics driver it does make sense to keep them in sync. Programs can query the version of the session to determine the API level. This does not offer specific graphics driver version numbers, but in many cases should be sufficient to determine if it is appropriate to supply a warning message telling users that a graphics driver upgrade will improve functionality.
If in your case the graphics driver version number is important there are several ways to obtain this information. However, since this is general Windows programming information it is beyond the scope of this forum.
Regards,
Jeff
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jeffery :
Thank you.
Thank you.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page