Kodi Community Forum
[WINDOWS] Internal Directshow Based Player [NO LONGER DEVELOPED] - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: General Support (https://forum.kodi.tv/forumdisplay.php?fid=111)
+---- Forum: Windows (https://forum.kodi.tv/forumdisplay.php?fid=59)
+---- Thread: [WINDOWS] Internal Directshow Based Player [NO LONGER DEVELOPED] (/showthread.php?tid=61355)



- jfgi - 2010-01-29

Just tried r27183 on Win7 x64. Video is only on the top half of the screen and shown twice.
Image

HD is fine, it's just SD that isn't.


Full DXVA + Bitstreaming for SD and HD rips! - David602 - 2010-01-29

I'd like to report my results after extensive testing on 2 PCs and explain some of the changes I made to hopefully help some of the others having issues.

Quick reference:
Main setup: Athlon processor, 4 GB RAM, Win 7 x64, nVidia 9600 GSO with older nVidia drivers (1.85), Xonar HDAV -> HDMI -> Pioneer Elite -> 60" Sony SXRD - > Definitive Tech 5.1 surround

2nd setup: Aspire Revo 1600 1 GB RAM, XP SP3, integrated nVidia ION, with latest nVidia drivers (1.61) - > HDMI -> 32" LCD TV, no surround


Results On Main PC: Full DXVA and lossless HD bitstreaming!

Video/Containers:
SD DVD folder structure - playback is great, low CPU, no dropped frames, no tearing
SD MPEG2 - .MKV - playback is great, low CPU, no dropped frames, no tearing
SD XVID - .AVI - playback is great, low CPU, no dropped frames, no tearing
SD XVID - .MKV - playback is great, low CPU, no dropped frames, no tearing
HD 1080p h.264 - .MKV - excellent DXVA, only 2-10% CPU utilization, no dropped frames, no tearing
HD 1080p h.264 - .m2ts - excellent DXVA, only 2-10% CPU utilization
HD 1080p VC1 - .mkV - no DXVA but caused by hardware limitation in video card (plays fine in TMT3)

Audio:
MP3/Stereo - plays as expected
DD/AC3 - bitstreams to receiver for decoding!
DTS - bit streams to receiver for decoding!
DTS HD MA - bitsreams to receiver for decoding!
TrueHD - bitstreams to receiver for decoding!
LPCM - NO AUDIO

One major issue: No chapter support on any of the formats I tried.

Results On Acer REVO 1600: DXVA + Bitstream of AC3/DTS core only or LPCM

Under win 7 x64, it was simply unusable with only 1GB of memory.
Under Win XP SP3, I was able to replicate the results from my main setup (and successfully playback all video/audio formats except TrueHD/DTS HD), except CPU utilization was higher (30-50%). Overall it was a bit sluggish but useable.

I'd probably recommend XBMC Live (Linux) with VDPAU for the Revo 1600 users instead of XP/DSPlayer. I was able to do full HD 1080p with 2-7% CPU in that environment.

NOTE: I am only able to bitstream TrueHD and DTS HD MA on the main HTPC with the ASUS Xonar HDAV card. REVO DOES NOT support HD lossless bitstreaming due to a hardware limitation. Instead, I bitstream the core AC3/DTS tracks.

This is done in FFDSHOW audio settings, under Output. Deselect the TrueHD and DTS HD MA bitstreaming options to bitstream just the core.

To pass LPCM, deselect the DTS/AC3 bitstream option in FFDSHOW.

Setup:
1) To start, I uninstalled FFDSHOW, MPC-HC and XBMC.
2) I then re-installed XBMC build XBMCSetup-Rev27111-dx+patch
3) I edited my dsfilterconfig.xml under the C:\Program Files (x86)\XBMC\system\players\dsplayer directory to use FFDSHOW for all audio and MPC Video codec for all video formats
4) I'm using MatroskaSplitter.ax and MpegSplitter.ax (default) from MPC as well
5) In XBMC, I had to configure ArcSoft as my audio renderer (a requirement for FFDSHOW bitstreaming of HD audio to Xonar).

When first attemping to play anything, it would error out. This was being caused by FFDSHOW not loading (possibly an old registry entry left behind from my previous installation, not sure).

6) To fix it, I had to install FFDSHOW beta SVN build 3227 seperately, configure it for bitstreaming via Xonar, then everything was fine.

Using the MPC video codec, DXVA works great except the REVO was a bit high in CPU.

Issues/Suggestions for Tiben20 & Seb:

LPCM/PCM Tracks - NO AUDIO playback. All other audio played back fine but pure PCM tracks from blurays such as Casino Royale, Pirates of the Caribbean were silent. These were in .MKV containers.

Chapter support - for skipping forward/rewinding - This doesn't seem to work at all. Whenever I tried skipping ahead in a movie, it would immediately exit the movie and go back to the library, as if it was trying to skip to the next video file in the directory. Under DVDPLayer, hitting Next (Skip FW), it would go to the next chapter in the movie but in DSPLayer, it immediately exits.

I ended up installing MPC-HC to confirm that these movies with LPCM played just fine using the exact same splitter/filters and audio renderer. Chapter support also worked just fine.

Overall, almost everything plays great and I'm very close to ditching TMT3 & MPC-HC as external players.

If we could get these 2 issues resolved, it would be near perfect for the video/audio content I am playing.

Thanks for all the hardwork on this.

If anyone has any questions, please let me know.

P.S. There was an issue with several recent builds of FFDSHOW that broke DTS/DTS HD MA so I recommend SVN build <=3154 or >=3227.


- Scott R - 2010-01-29

David, just to clarify...you're able to bitstream both Dolby TrueHD and DTS-HD on your Revo 1600?

What about decoding those formats on the Revo and passing it, over HDMI, as lossless already-decoded multi-channel audio? Is that possible?


- saratoga - 2010-01-29

David602 Wrote:Under win 7 x64, it was simply unusable with only 1GB of memory.
Under Win XP SP3, I was able to replicate the results from my main setup (and successfully playback all video/audio formats), except CPU utilization was higher (30-50%). Overall it was a bit sluggish but useable. I'd probably recommend XBMC Live with VDPAU for the Revo 1600 users. I was able to do full HD 1080p with 2-7% CPU in that environment.

For VDPAU you supposedly needed 2GB minimum to get the full benefit of the nvidia GPU. Any chance you could try it with 2GB and see if it improves? Its hard to imagine XP is much more memory efficient then Ubuntu.


- gorgone - 2010-01-29

wiso has disabled the broadcom support in dx
it only works with an old opengl Rev26880-gl
no newer releases aviable


- dtviewer - 2010-01-29

saratoga Wrote:For VDPAU you supposedly needed 2GB minimum to get the full benefit of the nvidia GPU. Any chance you could try it with 2GB and see if it improves? Its hard to imagine XP is much more memory efficient then Ubuntu.

I think you read his post wrong.
He was saying with vdpau it was much more efficient than the xp/dsplayer setup. 2-7% cpu with vdpau compared to 30-50% with xp.


- David602 - 2010-01-29

Scott R Wrote:David, just to clarify...you're able to bitstream both Dolby TrueHD and DTS-HD on your Revo 1600?

What about decoding those formats on the Revo and passing it, over HDMI, as lossless already-decoded multi-channel audio? Is that possible?

I am able to bitstream both codecs on my main HTPC using the ASUS XONAR HDAV soundcard. I AM NOT able to bitstream either one on the Revo due to a hardware limitation. On that device, I am decoding the core DTS/AC3 stream.

This is done in FFDSHOW audio settings, under Output. Deselect the TrueHD and DTS HD MA bitstreaming options to bitstream just the core.

To pass LPCM, deselect the DTS/AC3 bitstream option.

I'll clarify this in the original post.


- saratoga - 2010-01-29

dtviewer Wrote:I think you read his post wrong.
He was saying with vdpau it was much more efficient than the xp/dsplayer setup. 2-7% cpu with vdpau compared to 30-50% with xp.


Yes I realize he said that. But given that XP probably uses more memory then Ubuntu, and given that thats less then recommended even for Ubuntu, I'm curious if adding more memory helps.


- David602 - 2010-01-29

dtviewer Wrote:I think you read his post wrong.
He was saying with vdpau it was much more efficient than the xp/dsplayer setup. 2-7% cpu with vdpau compared to 30-50% with xp.


Correct, the XBMC Live version I am using runs on a light linux kernel and uses NVIDIA VDPAU technology which is the equivalent of DXVA (windows) for Linux.


- Scott R - 2010-01-29

David602 Wrote:Under Win XP SP3, I was able to replicate the results from my main setup (and successfully playback all video/audio formats except TrueHD/DTS HD), except CPU utilization was higher (30-50%).
Does Dolby TrueHD have a "core AC3" track? The reason I ask is because I have a Blu-ray that I ripped as a test where I ripped only the Dolby TrueHD soundtrack. I was able to play this through MPC-HC and have the player decode it and pass it as multichannel audio, which I assumed was still lossless. My A/V receiver has HDMI but is not capable of decoding Dolby TrueHD/DTS-HD. This same file, when played through DSPlayer (default build) is giving me audio, but is not properly mapping all of the channels (e.g., no center channel audio).

So I'm wondering if I was really getting MPC-HC to decode the Dolby TrueHD soundtrack and pass it as lossless multichannel audio, or was it simply pulling out a lossy AC3 soundtrack out of the one Dolby TrueHD soundtrack? I think it was the former, in which case I don't see why DSPlayer couldn't be enhanced to do the same.


- fincheresque - 2010-01-29

No, TrueHD does not have a 'core' track like DTS-MA, however, ffmpeg can decode TrueHD natively to multi-channel PCM whereas it falls back to the core track with DTS-MA (currently).

Edit: For some reason (I think because I've just been outside shovelling snow) my brain is not functioning, so I wrote ffdshow up there when I'm almost positive I meant ffmpeg. But now my brain is in a knot, and I'm not really sure what the hell I meant to say. Anyways, the video decoding subsystem within XMBC. That...that's what I meant. Smile


- tiben20 - 2010-01-29

Scott R Wrote:Does Dolby TrueHD have a "core AC3" track? The reason I ask is because I have a Blu-ray that I ripped as a test where I ripped only the Dolby TrueHD soundtrack. I was able to play this through MPC-HC and have the player decode it and pass it as multichannel audio, which I assumed was still lossless. My A/V receiver has HDMI but is not capable of decoding Dolby TrueHD/DTS-HD. This same file, when played through DSPlayer (default build) is giving me audio, but is not properly mapping all of the channels (e.g., no center channel audio).

So I'm wondering if I was really getting MPC-HC to decode the Dolby TrueHD soundtrack and pass it as lossless multichannel audio, or was it simply pulling out a lossy AC3 soundtrack out of the one Dolby TrueHD soundtrack? I think it was the former, in which case I don't see why DSPlayer couldn't be enhanced to do the same.
I dont really have the coding knowledge when it come to audio decoding. I dont have the hardware too. I only have a headset. Configuring the ac3filter within the xbmc osd would be so nice but really hard to code. But im actually really trying to add this feature. Im actually reading about audio decoding and rendering. I hope ill get some time to code this in the next days.


- David602 - 2010-01-29

Scott R Wrote:Does Dolby TrueHD have a "core AC3" track? The reason I ask is because I have a Blu-ray that I ripped as a test where I ripped only the Dolby TrueHD soundtrack. I was able to play this through MPC-HC and have the player decode it and pass it as multichannel audio, which I assumed was still lossless. My A/V receiver has HDMI but is not capable of decoding Dolby TrueHD/DTS-HD. This same file, when played through DSPlayer (default build) is giving me audio, but is not properly mapping all of the channels (e.g., no center channel audio).

So I'm wondering if I was really getting MPC-HC to decode the Dolby TrueHD soundtrack and pass it as lossless multichannel audio, or was it simply pulling out a lossy AC3 soundtrack out of the one Dolby TrueHD soundtrack? I think it was the former, in which case I don't see why DSPlayer couldn't be enhanced to do the same.

In regards to your first question about a core AC3 track, any bluray disc that has a TrueHD track also has a core AC3 track with it.

A link for reference:
http://en.wikibooks.org/wiki/Eac3to/In_Depth_Technical_Explanation

There are tools that can extract only the AC3 core or the entire TrueHD track such as eac3to and txmuxer(you can download at videohelp.com). I use both.

In regards to your experience, you have left out one critical component, the codec/filter being used by MPC vs. DSPlayer.

I use FFDSHOW for audio with MPC and with DSPlayer. In MPC, I deselect all of the internal filters except Matroska, MPEG (as internal splitters) and only keep the 2 DXVA codecs for video. Everything else then gets sent to FFDSHOW where there is a lot more flexibility.

With FFDSHOW, you really have 4 options for TrueHD tracks:

(1) TRUE HD Bitstream - Send the TrueHD track bitstreamed to the receiver with the bitstream option selected on FFDSHOW->Output.

(2) TrueHD decoded - Deselect the TrueHD bitstream in FFDSHOW->Output, then it will use it's codec to decode TrueHD and pass it as LPCM.

(3) AC3/DD BITSTREAM - Deselect the bitstream option for TrueHD, and disable the codec, but keep the AC3 bitstream selected, it will bitstream just the AC3 core from that same bluray rip.

(4) AC3 decoded - If both TrueHD and AC3 bitstream are deselected and TrueHD codec is disabled, yet AC3 is enabled, it will decode as PCM.

Remember, in FFDSHOW Audio - the bitstream options are found under Output and the Codec options are found under Codecs.

EDIT: Update - I did a lot more testing and found that I could only get AC3 to bitstream from a TrueHD track when I use an original .m2ts file copied directly from the bluray disc (no muxing or stripping of extras).

On the rips that I made through tsmuxer/eac3to, since I selected the TrueHD audio track, it looks like it dropped the AC3 core and kept only the TrueHD audio. Thus, when playing them back on the Revo, it is silent. For DTS HD MA, you can extract the full HD audio track and it maintains the DTS core and plays back fine on the revo as DTS.

If you are using a Revo, when you rip a bluray that has Dolby TrueHD, I suggest extracting only the core AC3 audio, then it should play fine in DSPLAYER with FFDSHOW Audio.


- joshdr - 2010-01-29

Just installed this and I'm having some issues. It runs x264 encoded files fine, but when I try to get it to play a regular .mkv ripped with makemkv all I get is sound, also wont run .iso's, but I was expecting that.


Can't get it to work with my Revo (runs fine on my XP Desktop) - Frederic - 2010-01-29

I have 2 machines:
- Desktop (nvidia 8600GT) XP SP3
- revo 3610 Win 7 x64

no issues with the Desktop.
no luck with the Revo:
I added the Advancedsettings.xml
I did not check the directx webinstall (I'm thinking I don't need to).

I forced the use of evr (if not then black screen)
I get a black screen when forcing the automated resolution change.
When I keep my resolution then I get the picture on 1/4 of the screen (top left) and the same picture on 1/4 of the screen (top right). I get about 10-12 images per second (h264).

The difference I see is that my desktop shows as video decoder:
MPC video decoder | H264 bitstream, no FGT
the revo only shows:
MPC video decoder

on the same movie.

I have MPC-HC on the revo and it works with DXVA with no issue.

please help Smile