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.

 

Go Back   Doom9's Forum > Capturing and Editing Video > New and alternative a/v containers

Reply
 
Thread Tools Search this Thread Display Modes
Old 15th May 2011, 04:02   #2981  |  Link
Andy o
Registered User
 
Join Date: Mar 2009
Posts: 962
Anyway, back on topic, I have an mkv which LAV splitter reports as 29.97 to madVR, but ReClock sees it (correctly) at 23.976. If I use the MPC mkv splitter, it gets reported to madVR correctly as well. Remuxing with mkvmerge doesn't fix it. I'll see if I can cut up a clip.

EDIT: I think I see the problem, this is what mediainfo says:

Code:
Video
ID                               : 1
Format                           : AVC
Format/Info                      : Advanced Video Codec
Format profile                   : High@L4.0
Format settings, CABAC           : Yes
Format settings, ReFrames        : 3 frames
Codec ID                         : V_MPEG4/ISO/AVC
Duration                         : 23mn 37s
Width                            : 1 920 pixels
Height                           : 1 080 pixels
Display aspect ratio             : 16:9
Frame rate                       : 23.976 fps
Original frame rate              : 29.970 fps
Color space                      : YUV
Chroma subsampling               : 4:2:0
Bit depth                        : 8 bits
Scan type                        : Progressive
Writing library                  : x264 core 76 r1271 496d79d

Last edited by Andy o; 15th May 2011 at 04:14.
Andy o is offline   Reply With Quote
Old 15th May 2011, 04:25   #2982  |  Link
skingery
Registered User
 
Join Date: Jun 2010
Posts: 15
Quote:
Originally Posted by nevcairiel View Post
So before i move myself to the couch for some TV enjoyment, here a quick new build.

http://files.1f0.de/lavf/LAVFilters-...1-g2a551ca.zip
Trying this with a MKV rip of Star Wars Episode 2 from DVD. So this is mpeg 2 with AC-3. Using MPC-HC, LAV splitter, LAV audio bitstreaming and LAV CUVID.
When I start the file the audio is a second or so behind the video. I watched for a while to see if it would catch up and it didn't. It got too annoying so I stopped it and restarted MPC-HC and tried playing the same file (I have MPC-HC keep the location so it started at that spot) and it is all good now.


My HTPC is attached to my old Onkyo via S/PDIF, don't have HDMI audio yet.
skingery is offline   Reply With Quote
Old 15th May 2011, 04:49   #2983  |  Link
Mark_A_W
3 eyed CRT supporter
 
Join Date: Jan 2008
Location: Or-strayl-ya
Posts: 563
Nev

I'm having an issue with the version you posted today (not sure if it's just this version).

When I use LAV Splitter for mkv files with FLAC audio, it insists on trying to load the LAV Audio decoder, giving an audio format not supported error. This is despite having madFLAC selected in Zoom Player for FLAC, and having the FLAC option unticked in the formats section of LAV Audio.

If I allow FLAC in LAV Audio, playback works, but with the "wrong" decoder (LAV).

If I change splitter, then madFLAC is loaded, as per the Zoom Player smart play settings.

So:

- LAV Splitter seems to be forcing LAV Audio, at least for me. I don't think it should force the matter.

- Is there any reason not to use LAV Audio for FLAC? Limited to 16 bit? Seems to be reporting 24 bit..
Mark_A_W is offline   Reply With Quote
Old 15th May 2011, 07:05   #2984  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by nevcairiel View Post
PS:
A "good" solution to the whole problem would be pretty simple.
- LAV Splitter creates one output pin for every stream, and connects the appropriate decoders.
- There is an extra stream switching filter, that sits between all the decoders, and the renderer.
- When you switch streams, you'll tell the stream switching filter, and it'll tell LAV Splitter. That way all the pins are connected, but only the active one produces data to be decoded.
But won't there be problems when having multiple active audio decoders? They all will want to connect to some renderer, won't they? So won't there be multiple audio renderers, too? I think only one of them can use WASAPI, correct? What if it's the wrong one that manages to grab WASAPI rights? Wouldn't there also have to be multiple Reclock instances?

If you can somehow fix all these issues, *and* if you can still properly support IAMStreamSelect, then I guess it would be ok with me. But I think I would still prefer the current logic.
madshi is offline   Reply With Quote
Old 15th May 2011, 09:52   #2985  |  Link
nlnl
Registered User
 
Join Date: Aug 2008
Posts: 176
Quote:
Originally Posted by nevcairiel View Post
So before i move myself to the couch for some TV enjoyment, here a quick new build.

http://files.1f0.de/lavf/LAVFilters-...1-g2a551ca.zip

nevcairiel


http://www.multiupload.com/FJ7YOCNC6M
MPC+LAV splitter (aggressive) +LAVaudio (bitstream) + system renderer= crash when switching audio tracks using A key, and =OK using menu (MPC or splitter) for switching.

Last edited by nlnl; 15th May 2011 at 09:55.
nlnl is offline   Reply With Quote
Old 15th May 2011, 10:05   #2986  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,344
Quote:
Originally Posted by madshi View Post
But won't there be problems when having multiple active audio decoders? They all will want to connect to some renderer, won't they? So won't there be multiple audio renderers, too? I think only one of them can use WASAPI, correct? What if it's the wrong one that manages to grab WASAPI rights? Wouldn't there also have to be multiple Reclock instances?

If you can somehow fix all these issues, *and* if you can still properly support IAMStreamSelect, then I guess it would be ok with me. But I think I would still prefer the current logic.
Thats where that extra stream switching filter comes in, basically a multiplexer that takes all decoders, and forwards only the active one to the renderer.
But yeah, its not a viable solution, unless a player fully supports this mode.

The problem with the current logic is that switching the decoder for different audio tracks is just not easily doable, especially with all the different players out there, all trying to be smart about graph building, and DirectShows graph building routines trying to be smart and skip decoders if possible..

Quote:
Originally Posted by Mark_A_W View Post
- LAV Splitter seems to be forcing LAV Audio, at least for me. I don't think it should force the matter.
There is no code whatsoever that forces any decoder. Blame ZoomPlayer, its "smart play" is usually not so smart.


Quote:
Originally Posted by skingery View Post
Trying this with a MKV rip of Star Wars Episode 2 from DVD. So this is mpeg 2 with AC-3. Using MPC-HC, LAV splitter, LAV audio bitstreaming and LAV CUVID.
When I start the file the audio is a second or so behind the video. I watched for a while to see if it would catch up and it didn't. It got too annoying so I stopped it and restarted MPC-HC and tried playing the same file (I have MPC-HC keep the location so it started at that spot) and it is all good now.
The Bitstreaming code does not yet use the new logic to check and correct A/V sync, i hope to add this in the future there as well, but it adds an extra layer of complexity.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 15th May 2011 at 10:58.
nevcairiel is offline   Reply With Quote
Old 15th May 2011, 10:21   #2987  |  Link
Gleb Egorych
Registered User
 
Join Date: Aug 2008
Posts: 231
Quote:
Originally Posted by nevcairiel View Post
http://files.1f0.de/lavf/LAVFilters-...1-g2a551ca.zip

.....

@Gleb Egorych:
I did some changes, and couldn't reproduce any crashes anymore, but it was pretty hard to reproduce them in the first place, so if you could try as well, that would be great.
Unfortunately, I reproduced crashes, on original file and on the small sample sent to you.
Code:
Problem signature:
  Problem Event Name:	APPCRASH
  Application Name:	zplayer.exe
  Application Version:	8.0.0.0
  Application Timestamp:	2a425e19
  Fault Module Name:	avcodec-53.dll
  Fault Module Version:	0.0.0.0
  Fault Module Timestamp:	4dcee988
  Exception Code:	c0000005
  Exception Offset:	001cab01
  OS Version:	6.1.7601.2.1.0.256.1
  Locale ID:	1049
  Additional Information 1:	0a9e
  Additional Information 2:	0a9e372d3b4ad19135b953a78882e789
  Additional Information 3:	0a9e
  Additional Information 4:	0a9e372d3b4ad19135b953a78882e789
There is another problem, seems to be related to LAV Audio. Before the latest build and now I sometimes get hang of Zoom Player when I try to exit the player. I thought it was related to source filter but now I got hang with LAV Audio only in the graph. So I guess it is related to LAV Audio Decoder.

Here is a screenshot of thread list of hanged player:

Zoom Player has special "Guard dog" feature which restarts the player if hang is detected. Interestingly that in the case the feature does not work. Also while normal playing I can't see LAVAudio.ax thread in the thread list, guess it runs in player's thread or something like this. Other decoders have their own threads.
Gleb Egorych is offline   Reply With Quote
Old 15th May 2011, 10:26   #2988  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,344
An audio decoder does not need its own thread. It just takes the data it gets, decodes it, and sends it to the renderer. Adding a thread in the middle there would just add unnecessary overhead.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 15th May 2011, 10:53   #2989  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,344
@Gleb Egorych:

Here is a new one to try. I hope this time around it helps, at least in my mind the change i did this time would prevent the one crash i have been seeing.

http://files.1f0.de/lavf/LAVFilters-...3-ge0ade4c.zip
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 15th May 2011, 11:14   #2990  |  Link
CiNcH
Registered User
 
CiNcH's Avatar
 
Join Date: Jan 2004
Posts: 567
Hmm, trying my luck once more...

Can anybody summarize the common media subtypes for the BD HD audio formats (TrueHD, DTS-HD, LPCM)?

Would be cool... thanks in advance
__________________
Bye
CiNcH is offline   Reply With Quote
Old 15th May 2011, 11:24   #2991  |  Link
Mark_A_W
3 eyed CRT supporter
 
Join Date: Jan 2008
Location: Or-strayl-ya
Posts: 563
Quote:
Originally Posted by nevcairiel View Post

There is no code whatsoever that forces any decoder. Blame ZoomPlayer, its "smart play" is usually not so smart.
Ok, sorry, just reporting what I'm finding. I'll post it on the inmatrix forum.


I have one more question:

- Is there any reason *not* to use LAV Audio for FLAC?

madshi wrote madFLAC for a reason, as ffdshow FLAC decoding was not up to scratch (16 bit for 24 bit streams). As LAV Audio is also based on ffmpeg, I am after confirmation that all is ok (it appears ok, reading the graph properties).


Thanks

Mark
Mark_A_W is offline   Reply With Quote
Old 15th May 2011, 11:25   #2992  |  Link
Gleb Egorych
Registered User
 
Join Date: Aug 2008
Posts: 231
CiNcH, AFAIK, different splitters send different subtypes. If you are asking about LAV Splitter then

TrueHD {EB27CEC4-163E-4CA3-8B74-8E25F91B517E}
DTS-HD {00002001-0000-0010-8000-00AA00389B71}
LPCM {949F97FD-56F6-4527-B4AE-DDEB375AB80F}

I believe in case of DTS-HD LAV Splitter makes some on-the-fly tweak if ArcSoft is used for decoding since ArcSoft requires special subtype.

nevcairiel, thanks, I'll test it.

Last edited by Gleb Egorych; 15th May 2011 at 11:34.
Gleb Egorych is offline   Reply With Quote
Old 15th May 2011, 11:28   #2993  |  Link
CiNcH
Registered User
 
CiNcH's Avatar
 
Join Date: Jan 2004
Posts: 567
Thanks Gleb,

so there is no real standard yet? What about those defined by Microsoft? Are they only used for protected audio?
__________________
Bye
CiNcH is offline   Reply With Quote
Old 15th May 2011, 11:29   #2994  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,344
Quote:
Originally Posted by Mark_A_W View Post
- Is there any reason *not* to use LAV Audio for FLAC?

madshi wrote madFLAC for a reason, as ffdshow FLAC decoding was not up to scratch (16 bit for 24 bit streams). As LAV Audio is also based on ffmpeg, I am after confirmation that all is ok (it appears ok, reading the graph properties).
I don't know how good the ffmpeg flac decoder is, but it will output full bitdepth. I don't know what ffdshow did to break it, but that might've also been years ago..
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 15th May 2011, 11:31   #2995  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,344
Quote:
Originally Posted by CiNcH View Post
Thanks Gleb,

so there is no real standard yet? What about those defined by Microsoft? Are they only used for protected audio?
MEDIASUBTYPE_DOLBY_TRUEHD is defined my Microsoft (in wmcodecdsp.h from the Windows SDK).
DTS is also the official Microsoft subtype, it does not use a special DTS-HD subtype.

LPCM is rather special, MS does not have a type at all for that. They probably use "normal" PCM for that, but its not exactly the same.
LAV Splitter supports two formats there, its own format, that only LAV Audio understands, and the MPC-HC format thats supported by the MPC-HC decoders and ffdshow.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 15th May 2011, 12:30   #2996  |  Link
Gleb Egorych
Registered User
 
Join Date: Aug 2008
Posts: 231
Yes, I was wrong, special subtype is not required for ArcSoft (although it exists), it accepts {00002001-0000-0010-8000-00AA00389B71}. Some time ago there was problem that gabest splitter output DTS-HD with {E06D8033-DB46-11CF-B4D1-00805F6CBBEA} subtype, and here was suggested to patch the splitter to output custom subtype.
Gleb Egorych is offline   Reply With Quote
Old 15th May 2011, 12:43   #2997  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,344
I just changed the main DTS type to that one ({00002001-0000-0010-8000-00AA00389B71}), because the other one caused some funny issues. FYI.

Also, the aggressive mode was removed again, as it didn't really solve the problem properly, and only caused issues.
I'll be working on some new logic for stream switching for 0.27 or so, more details when its closer.

PS:
How about that avi crash?
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 15th May 2011 at 12:49.
nevcairiel is offline   Reply With Quote
Old 15th May 2011, 12:55   #2998  |  Link
jmone
Registered User
 
Join Date: Dec 2007
Posts: 652
Any luck with that JTV Sample BTW?
jmone is offline   Reply With Quote
Old 15th May 2011, 14:03   #2999  |  Link
VipZ
Registered User
 
Join Date: Jun 2009
Location: London
Posts: 378
Nev just tested latest build vs official 0.25, you might still be doing work on this, but sync is totally off now, in the region of 2-3 seconds with DTS in MKV. I was bitstreaming, and the toggle for the auto av sync didn't do anything.
__________________
Windows 11 Pro, CPU: Ryzen 9 5900X, GPU: GeForce RTX 3090 /w 512.95, Audio: HDMI to Yamaha RX-A3060 (5.1)
VipZ is offline   Reply With Quote
Old 15th May 2011, 14:12   #3000  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,344
The A/V sync toggle didn't do anything for Bitstreaming yet.

Can you try this:
http://files.1f0.de/lavf/LAVFilters-...5-g31d0dd6.zip

It now uses the A/V sync control for bitstreaming as well, maybe that solves your issue.

Timing for Bitstreaming is really stupid, well actually, bitstreaming itself is totally stupid.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Reply

Tags
decoders, directshow, filters, splitter

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 21:08.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.