Log in

View Full Version : Short-term solution for AVC in MKV?


jk888
16th January 2005, 10:42
Discussion of this issue began in the mkvtoolnix thread:
http://forum.doom9.org/showthread.php?s=&threadid=85503&perpage=20&pagenumber=9

Playback still not working for me, I tried all the combinations of settings. I was able to disable ffdshow from becoming the default decoder for AVC in mkv, but now MPC doesn't know what codec to use and gives an error on the Matroska Splitter. I tried WP6.4 as well and it can't find the right codec either. I think the problem is with the splitter.

I downloaded the latest version from Haali, dated Jan.16th. But still it doesn't work.

I tried using the latest version of ffdshow dated Jan 13th, doesn't work either crashes all the time. The thread on ffdshow development also posted alot of problems, plus ffdshow does not fully support all the features in AVC.

I think we need a short-term solution for now while we wait for ffdshow to fully support AVC:

1. Allow all AVC in MKV media to playback using the Nero decoder.
2. Develop a new Matroska Splitter which can do this.
3. Ask the ffdshow developers to disable default playback of AVC using libavcodec.

This is merely a suggestion but it will help alot of end users. After Doom9 release his latest codec comparison last month everyone is jumping on the AVC boat now, having a strong container format which can address these issues will greatly help promote the mkv format to new users at this point (especially when compared with the failings of the mp4 container). This suggestion would only be for the short-term because ffdshow will eventually get it right.

filewalker
16th January 2005, 10:59
You don't need the old matroska Splitter anymore if you use Haali's parser.
The only what you need is Mike's last Haali's parser. This parser is a source filter and a splitter in one design.

So you see that you only need these filters in your graph:

1) Halli's parser( which is source filter and a splitter)
2) Audio decoder (CoreAAC or Nero's audio decoder or ffdshow)
3) Video decoder (Nero's video decoder (NeVideo.ax) or ffdshow (latest CD-build))
4) if you have subs: VSFilter
5) Video and audio renderers

That's it!
edit:Look here (http://people.freenet.de/pipliner/MKV_AVC.png)
Works fine here with ZoomplayerPro ( and should be playable in any DS Player, the only thing you'll need is to say the player that it should use Haali's parser as source filter.

Cu filewalker

jk888
16th January 2005, 11:08
I already have the latest Haali splitter from here:
http://haali.cs.msu.ru/mkv/

is this what you mean?

filewalker
16th January 2005, 11:22
Yep that's the right one.

I don't know MPC so well, but old Matroska Splitter must not load. Instead Haali's parser should kick in as source & splitter filter.

I have ZP Pro, there I can easily make this customized graph as described above. I just needed to create a new source filter for MKV, so that Haali's parser is used. That was all.
I can show with this picture (http://people.freenet.de/pipliner/ZP_AVC.png), how it works in ZP Pro...


edit:
concerning your list:
1) it works with Nero's video decoder
2) Haali's parser( which also splitts) works well
3) it's well known that ffdshow, if you enable one filter in the config, overwrites the other filters for the same content. IIRC you can choose, during the installation of ffdshow, what codecs should be supported by ffdshow, but maybe I mix it up with an other program :rolleyes: ....


Cu

jk888
16th January 2005, 11:57
Yes only the newest Haali splitter is running now, I even disabled the old splitter build-in to MPC. You can run it on Zoomplayer that's great. But the splitter still doesn't work if it can't support MPC or even the more popular WMP6.4. How many people use Zoomplayer to playback Matroska files?

Also what I mean on point No.3 is just to disable AVC playback using ffdshow by default. I know you can disable it during installation, but the average user will not know how.

But it doesn't really matter how you disable AVC playback by default, because right now even on the newest version of ffdshow it is decoding AVC using the wrong codec! I noticed that AVC playback on ffdshow is done using the Divx4 codec!!! So no wonder it will crash!

opsis81
16th January 2005, 13:54
First of all UNREGISTER Gabest's Matroska Splitter.
Make sure you have the LATEST versions of Haali Spliter and Nero Video Decoder or ffdshow Video Decoder.It will work with BOTH.

Force mkv playback with Haali Splitter with a registry file which includes:


REGEDIT4

[HKEY_CLASSES_ROOT\Media Type\Extensions\.mkv]
"Source Filter"="{55DA30FC-F16B-49FC-BAA5-AE59FC65F82D}"

[HKEY_CURRENT_USER\Software\Haali\Matroska Splitter]
"vsfilter.autoload"=dword:00000001


You can reset the above changes with a key which includes:

REGEDIT4

[HKEY_CLASSES_ROOT\Media Type\Extensions\.mkv]
"Source Filter"=""


Disable MPC's internal splitter.

It works for me in MPC,WMP10,Graphedit,WMP6.4,ZoomPlayer,jRiver Media Center and any other directx player I have tested it.
Only showtime couldn't play it but showtime has directx limitations.
If it won't work there's something wrong with your PC:(

filewalker
16th January 2005, 13:57
If you use MPC, try to uninstall/unregister Gabest's MatroskaSplitter (if you installed & registered it extern e.g. Matroska Pack or if you installed it manually),
after that disable MPC's internal Matroska Splitter.

Now MPC should take Haali's parser (if Haali's parser is used, you'll see the icon in system tray).
I tried it now in this way MPC plays it correctly.

Why don't you use Nero's decoder instead of ffdhow, if you have problems?

Btw.
In my case, Nero's decoder needs less CPU power than ffdshow.Therefore I use Nero's video decoder.

Your problem is just a player problem, not a filter problem.
MPC seems to less customizable to use different decoders, source filters, splitters without unregistering/reregistering...just my opinion.

Try graphedit and you'll see that the filters work in DirectShow.So it should work in any DS Player.
..and I think that lots of people use ZoomplayerPro, specially if somebody wants to customize the media playback...so like you & me atm ;)

Cu

jk888
16th January 2005, 17:18
opsis81: Thx for the registry settings to force use of Haali's new splitter. That was the fix.

filewalker: please just read my first post again... I AM TRYING TO USE THE NERO DECODER ALL ALONG! I did all those things you listed a long time ago as well. The problem is the filter, because I had to force the registry to use Haali's splitter, isn't that a major problem in itself?

-----------------------------

This is what I had to do for AVC in MKV playback:
1. Install Matroska Packs 1.03.
2. Install Haali's splitter.
3. Add the registry settings provided by opsis81.
4. Disable the build-in matroska splitter in MPC.

So basically for an end-user this will become very confusing. When I distribute a AVC-MKV clips on the internet how can I expect dumb end-users to do all this? I will also have to add warnings on my nfo to make sure end-users don't use MPC, because alot of them already do and they won't know how to disable a filter in there.

The question for the Matroska team is this: Can we make it easier?

I think we need Matroska Packs 1.04.

filewalker
16th January 2005, 18:01
Muxing AVC in MKV is now working well for 2 DAYS with an experimental build of mosu and Haali's splitter isn't the official Matroska filter atm. :scared: What do you expect? :confused: It's experimental atm, or?


Nevertheless I'm glad to hear you got it working.:)


Cu

stephanV
16th January 2005, 18:05
the build-in splitter in MPC is always gonna be a problem until someone removes it or updates it. it always goes before any DS filter. This is not the fault of the Matroska team, they did not develop MPC.

I did not need to edit the registry to get Haalis splitter working. Unregistering the splitter from the packs was enough.

AVC in MKV is still in an experimental fase, you cant expect to get a quick fix just like that. Files you create now might not even be compliant. Even AVC in MP4 is still a problem with most muxers.

Status of AVC in MKV (http://www.bunkus.org/videotools/mkvtoolnix/avc-status.html)

jk888
16th January 2005, 18:14
Ok fair enough, I get everyone's point. Things are probably still too buggy to release a new Matroska Packs anyways... sorry if I got annoying, *sigh* I just wish this could be faster so I could get my stuff out to the general public.

Thx for all your help, filewalker, opsis81, stephanV. I'm glad I can finally play the file.

jk888
20th January 2005, 17:19
New Version of Haali's MKV splitter:

20/01/2005 Installer improvements: added an option to disable existing matroska splitters, Matroska file types are now added to the WMP open file dialog

Tested it and works wonders, disables the MPC Matroska splitter and any older Matroska splitters as well.

Thx Haali, you really do listen to us here.

Bluedan
21st January 2005, 14:11
Just for feedback:
I was able to mux avc with 3xhe-aac into mkv with mkvmerge dev version 20050120-1 without errors.
Latest ffdhow (2005-01-17) with working b-frame suuport for decoding and the above mentioned haali splitter installed I was able to playback file!!

YES!

While A/V is in synch video playback stutters (which it does not when using mp4 container).
No option to switch between audio streams so far.

Go on, I'm really excited and also looking forward to DVD-Menue implementation!! :)

iapir
21st January 2005, 16:26
Switching audio streams is supposed to be handled in the tray icon.

Bluedan
21st January 2005, 18:03
Originally posted by iapir
Switching audio streams is supposed to be handled in the tray icon.

Good. Tried it, switching audio the 2nd time made player freeze.
It was already said that Haali is struggling to get Direct Show work as intended. Everybody says it's crappy and not well documented.

Koti
26th January 2005, 01:48
I was able to mux avc with 3xhe-aac into mkv with mkvmerge dev version 20050120-1 without errors. Latest ffdhow (2005-01-17) with working b-frame suuport for decoding and the above mentioned haali splitter installed I was able to playback file!! While A/V is in synch video playback stutters (which it does not when using mp4 container).

Same here , but if I use "nero video decoder" nero avc in .mkv plays smooth
Ps. - have also tried latest versions of mkvmerge - splitter - ffdshow

Bluedan
26th January 2005, 10:08
Yes, found out lately, too.
Well, good to know it already works, but I'd rather like to use ffdshow in the future :) .

Koti
26th January 2005, 18:12
yes that would be my chioce too :)