home
products
contribute
download
documentation
forum
Home
Forums
New posts
Search forums
What's new
New posts
All posts
Latest activity
Members
Registered members
Current visitors
Donate
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Search titles only
By:
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Forums
MediaPortal 1
Support
Codecs, External Players
Memory leak in MPC HC codec?
Contact us
RSS
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="damaster" data-source="post: 377648" data-attributes="member: 60795"><p>Not sure what you're asking here. I've already made it quite clear what the bug is, but here's another way of explaining it:</p><p>With every invocation and usage of the MPC Video Decoder in DXVA mode to play a video it uses up a certain amount of memory, let's say X bytes. When the video is stopped, it should release those X bytes that were previously allocated, however it does not. It only releases Y bytes where Y < X. As a result, you have a leak of (X - Y) bytes. As one continues to play N movies, that leak grows, such that the MediaPortal.exe process now uses N * (X - Y) additional bytes of memory, which are wasted because they were never properly de-allocated. The problem here is that the value of (X - Y) is rather large and so after playing about 16 1080p videos in DXVA mode, N * (X - Y) reaches nearly 1GB! Note that in software decoding mode this is not a problem at all and (X - Y) is so tiny it is negligible or Y = ~X.</p><p></p><p>What does the filter do? It is a free H.264/AVC/VC1 DirectShow video decoder that supports DXVA (hardware acceleration) and is thus an excellent choice for playing 720p/1080p H.264 encoded videos on most modern ATI/Intel/Nvidia GPUs that have built-in support for hardware-based HD decoding. It also backs off to software decoding when/if the encoded video is not compliant with DXVA requirements, making it a very versatile DirectShow video decoder.</p><p></p><p>What's the alternative? Use another DXVA-capable H.264 decoder such as the Cyberlink PowerDVD 8 decoders. The problem, however, with that decoder is that if a video isn't compliant to the DXVA requirements then the decoder can't play it and it locks up or results in distorted video. In other words, it isn't as lenient as the MPC decoder and does have a software-based back-off strategy.</p><p></p><p>Or use an entirely software base decoder such as CoreAVC or ffdshow, but then that puts unnecessary load on the CPU, generates more heat, and more noise, etc. and doesn't make effective use of the GPUs that are very capable of easily decoding HD video.</p><p></p><p>With hardware decoding, my CPU usage is below 1%, my GPU usage is 20-30% and my video is glitch-free and smooth as butter (this on Vista, with EVR and Aero enabled). I can run CPU-intensive work in the background and my 1080p videos won't drop a single frame. </p><p></p><p>As I explained previously, this memory leak in the MPC decoder is a problem for anyone that keeps the MediaPortal.exe process running for long periods of time as it will run out of memory after playing a dozen or more 1080p videos with hardware acceleration.</p></blockquote><p></p>
[QUOTE="damaster, post: 377648, member: 60795"] Not sure what you're asking here. I've already made it quite clear what the bug is, but here's another way of explaining it: With every invocation and usage of the MPC Video Decoder in DXVA mode to play a video it uses up a certain amount of memory, let's say X bytes. When the video is stopped, it should release those X bytes that were previously allocated, however it does not. It only releases Y bytes where Y < X. As a result, you have a leak of (X - Y) bytes. As one continues to play N movies, that leak grows, such that the MediaPortal.exe process now uses N * (X - Y) additional bytes of memory, which are wasted because they were never properly de-allocated. The problem here is that the value of (X - Y) is rather large and so after playing about 16 1080p videos in DXVA mode, N * (X - Y) reaches nearly 1GB! Note that in software decoding mode this is not a problem at all and (X - Y) is so tiny it is negligible or Y = ~X. What does the filter do? It is a free H.264/AVC/VC1 DirectShow video decoder that supports DXVA (hardware acceleration) and is thus an excellent choice for playing 720p/1080p H.264 encoded videos on most modern ATI/Intel/Nvidia GPUs that have built-in support for hardware-based HD decoding. It also backs off to software decoding when/if the encoded video is not compliant with DXVA requirements, making it a very versatile DirectShow video decoder. What's the alternative? Use another DXVA-capable H.264 decoder such as the Cyberlink PowerDVD 8 decoders. The problem, however, with that decoder is that if a video isn't compliant to the DXVA requirements then the decoder can't play it and it locks up or results in distorted video. In other words, it isn't as lenient as the MPC decoder and does have a software-based back-off strategy. Or use an entirely software base decoder such as CoreAVC or ffdshow, but then that puts unnecessary load on the CPU, generates more heat, and more noise, etc. and doesn't make effective use of the GPUs that are very capable of easily decoding HD video. With hardware decoding, my CPU usage is below 1%, my GPU usage is 20-30% and my video is glitch-free and smooth as butter (this on Vista, with EVR and Aero enabled). I can run CPU-intensive work in the background and my 1080p videos won't drop a single frame. As I explained previously, this memory leak in the MPC decoder is a problem for anyone that keeps the MediaPortal.exe process running for long periods of time as it will run out of memory after playing a dozen or more 1080p videos with hardware acceleration. [/QUOTE]
Insert quotes…
Verification
Post reply
Forums
MediaPortal 1
Support
Codecs, External Players
Memory leak in MPC HC codec?
Contact us
RSS
Top
Bottom