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 17th March 2012, 18:08   #9961  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
Then you're out of luck, i managed to reproduce a problem once, and now its fixed.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is online now   Reply With Quote
Old 17th March 2012, 18:15   #9962  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
If the freeze is inside of LAV Filters, maybe it would help to provide a PDB file in a test build, so the madVR freeze report might include the LAV Filter internal stack traces? Just a thought...
madshi is offline   Reply With Quote
Old 17th March 2012, 18:31   #9963  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
I suppose.
Here is a build with its pdb files
http://files.1f0.de/lavf/LAVFilters-...b88bb9+pdb.zip

Here is the link to the madVR Trace Tool
http://madshi.net/madTraceProcess.zip

Cause the freeze, run it, select the zplayer.exe process, and pastebin the output somewhere.
Only works if you use madVR as a renderer.

I still did fix one hang that i reproduced in ZP, didn't find any more. I've also been analyzing the code, and i don't see what condition could otherwise cause a deadlock now.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 17th March 2012 at 19:26.
nevcairiel is online now   Reply With Quote
Old 17th March 2012, 20:39   #9964  |  Link
Gleb Egorych
Registered User
 
Join Date: Aug 2008
Posts: 231
madTraceProcess log of hung Zoom Player.
Gleb Egorych is offline   Reply With Quote
Old 17th March 2012, 20:40   #9965  |  Link
cengizhan
Registered User
 
Join Date: May 2003
Location: Turkey
Posts: 98
I also had several freezes with latest mpc-hc, lav and madvr while seeking forward. Will try with LAVFilters-0.49-9b88bb9.
cengizhan is offline   Reply With Quote
Old 17th March 2012, 20:48   #9966  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
Quote:
Originally Posted by Gleb Egorych View Post
madTraceProcess log of hung Zoom Player.
I see not one thread in there that is doing anything in LAV.

Considering i cannot even figure out how to configure ZP to use LAV without turning off its "smart play", i suggest you start over with a factory-reset version of ZP and then try to replicate the issue, and once you can, tell me the config exactly.
Alternatively, maybe ZP can somehow export its config, so i can import it?

Edit:
I finally managed to convinced it to use LAV in Smart Play mode, but still no problem here.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 17th March 2012 at 21:36.
nevcairiel is online now   Reply With Quote
Old 17th March 2012, 23:00   #9967  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by nevcairiel View Post
I see not one thread in there that is doing anything in LAV.
I'm seeing two interesting things:

(1) One thread callstack looks like this:

Code:
thread $df0:
75f9ee32 +5d GDI32.dll              D3DKMTSignalSynchronizationObject
0923c642 +32 nvcuvid.dll            cuvidMapVideoFrame
0922a8a0 +20 nvcuvid.dll            cuvidParseVideoData
I think this is likely an LAV Video Decoder related thread, don't you agree? But somehow the callstack doesn't contain any LAV Video Decoder related callstack items. That makes me think that the PDB file somehow didn't work.

@Gleb Egorych, can you confirm that you had a "LAVVideo.pdb" file in the same directory as "LAVVideo.ax" when creating the freeze report? And you do have a "dbghelp.dll" file in the madVR directory, correct?

(2) ZP's main thread seems to be stuck here:

Code:
77638cd3 +16a33 ntdll.dll                               RtlEnterCriticalSection
005192a2 +0000e zplayer.exe  BaseClass        6911  +11 TBCCritSec.Lock
005204dc +000a4 zplayer.exe  DSFilter         1602  +30 TDCDSPFilter.Stop
00675681 +00025 zplayer.exe  mainunit         4125   +5 TMainForm.dsMediaControlStop
00679722 +00332 zplayer.exe  mainunit         5905  +86 TMainForm.StopMovie
006587fa +00076 zplayer.exe  mainunit          124  +16 TMainForm.StopButtonClick
Another ZP thread is here at the same time:

Code:
thread $40c: <priority:1>
77638cd3 +16a33 ntdll.dll                       RtlEnterCriticalSection
005192a2 +0000e zplayer.exe  BaseClass 6911 +11 TBCCritSec.Lock
00520cf8 +00014 zplayer.exe  DSFilter  2099  +2 TDCDSPFilter.CheckInputType
00518d5b +0001b zplayer.exe  BaseClass 6705  +2 TBCTransformInputPin.CheckMediaType
005189cd +001b9 zplayer.exe  BaseClass 5870 +46 TBCBaseInputPin.Receive
00519169 +00041 zplayer.exe  BaseClass 6840  +5 TBCTransformInputPin.Receive
0051db3b +000d3 zplayer.exe  DSFilter   391 +21 TDCDSPFilterInputPin.Receive
My interpretation of this is that the main thread is trying to react to a press on the ZP "stop" button, while the ZP DSP filter is busy receiving data. Both try to enter the same critical section at the same time while it might even already be in use by a 3rd thread. I think DSP is audio related, though?
madshi is offline   Reply With Quote
Old 17th March 2012, 23:17   #9968  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
Quote:
Originally Posted by madshi View Post
(1) One thread callstack looks like this:

Code:
thread $df0:
75f9ee32 +5d GDI32.dll              D3DKMTSignalSynchronizationObject
0923c642 +32 nvcuvid.dll            cuvidMapVideoFrame
0922a8a0 +20 nvcuvid.dll            cuvidParseVideoData
I think this is likely an LAV Video Decoder related thread, don't you agree? But somehow the callstack doesn't contain any LAV Video Decoder related callstack items. That makes me think that the PDB file somehow didn't work.
Ah, i somehow missed that one. Thanks for looking

cuvidParseVideoData is a NVIDIA function i call, which in turn calls a callback function of LAV, in which i then call cuvidMapVideoFrame (which basically is the LockRect of CUVID)
This would indicate the decoder is still working just fine, and is not deadlocked somewhere (except if that function somehow hangs, but never seen that happen and wouldn't even know why/how). This is called directly from my decoder worker thread, and if that thread is working and processing a frame, then everything else is still running.

Quote:
Originally Posted by madshi View Post
My interpretation of this is that the main thread is trying to react to a press on the ZP "stop" button, while the ZP DSP filter is busy receiving data. Both try to enter the same critical section at the same time while it might even already be in use by a 3rd thread. I think DSP is audio related, though?
I agree with your interpretation.
Both the main thread and some other thread try to enter the same critical section, but that also means something else has to hold that one right now.

But DSP is audio indeed, so its rather unlikely to be related to my latest changes (not knowing ZP itself, not ruling anything out)
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 17th March 2012 at 23:20.
nevcairiel is online now   Reply With Quote
Old 17th March 2012, 23:26   #9969  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by nevcairiel View Post
cuvidParseVideoData is a NVIDIA function i call, which in turn calls a callback function of LAV, in which i then call cuvidMapVideoFrame (which basically is the LockRect of CUVID)
This would indicate the decoder is still working just fine, and is not deadlocked somewhere (except if that function somehow hangs, but never seen that happen and wouldn't even know why/how). This is called directly from my decoder worker thread, and if that thread is working and processing a frame, then everything else is still running.
Yeah, but the thing that confuses me is that there's no trace whatsoever of LAVVideo.ax in the stack trace. Which would make sense only if either the LAV PDB files are missing or if the dbghlp.dll is missing in the madVR folder. If I do a test freeze report on my PC with LAV Video decoding, I see plenty of LAV Video callstack items (when using your test build with the PDB files). Though, I can't do a freeze report exactly when the graph is stopped. Maybe that's a special situation. Still, I would expect to at least see *some* LAV related stack items in the freeze report somewhere, if both PDB files and dbghlp.dll are there.

Quote:
Originally Posted by nevcairiel View Post
I agree with your interpretation.
Both the main thread and some other thread try to enter the same critical section, but that also means something else has to hold that one right now.

But DSP is audio indeed, so its rather unlikely to be related to my latest changes (not knowing ZP itself, not ruling anything out)
Yeah, it does seem to be audio related. But that could be just the final phase of the freeze. It's possible that something else made ZP end up in that situation. In any case I find it suspicious that the main thread is hanging in the "StopButtonClick" event handler. That's a clear indication that the problem occurs as a direct consequence of ZP trying to stop the playback. Did something change in LAV somewhere (splitter, video or audio) in regards to the graph being stopped?
madshi is offline   Reply With Quote
Old 17th March 2012, 23:33   #9970  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
Quote:
Originally Posted by madshi View Post
Did something change in LAV somewhere (splitter, video or audio) in regards to the graph being stopped?
Audio and Splitter haven't changed at all since the release version, which he reported to work fine (short of a ffmpeg update)
The only change i did was to move the video decoding onto a worker thread, and i had some synchronization issues between the main processing thread (the one from the splitter) and that worker thread at first, but those seem to all be worked out.

Stopping in ZP doesn't even do anything special with the decoder, it just seeks to 0, so i get the usual seeking events (BeginFlush/EndFlush and NewSegment)
What i do find interesting though, why would the video decoder still have data to process while the player is stopping the graph (and frozen at that). Shouldn't the Graph stop the splitter first so that no new data is arriving? (He is using Haali, so i cannot say how it really works for it)

On the other hand, why would the Main Thread try to stop a single filter? But maybe some stack trace lines are missing there too from a DirectShow internal dll?
In any case, LAV does not seem to be directly involved in the freeze, and the main thread even looks like its supposed to do what it does.

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

Does anyone else still have some Freeze/Hang issues with the latest test version? Here is the link again for reference:
http://files.1f0.de/lavf/LAVFilters-...b88bb9+pdb.zip

I included some debug symbols, so if it does hang and you happen to use madVR, you can get a better freeze report using its new tools.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 18th March 2012 at 00:57.
nevcairiel is online now   Reply With Quote
Old 18th March 2012, 02:31   #9971  |  Link
suanm
Registered User
 
Join Date: Apr 2011
Posts: 121
i have not tested the last lav 0.49 verson yet,but the old lav 0.48 version works very perfectly with madvr 0.54 version (i dislike 0.55 version or newer ) on my pc(xp+sp3 or win7 x86).i didn't find any of frozen filter, screen or player during playback,pausing blayback or stopping playback
suanm is offline   Reply With Quote
Old 18th March 2012, 07:08   #9972  |  Link
CruNcher
Registered User
 
CruNcher's Avatar
 
Join Date: Apr 2002
Location: Germany
Posts: 4,926
nev i still have that crash issue with Mainconcepts Decoder (on close,stop playback, drag and drop while playing) and Lavsplitter framework, not sure if it happens with Madvr too but if thats the way to trace whats going on ofcourse i gonna try it


PS: Actually wait i guess its fixed somehow, might be one of the recent lock fixes, yep seems really fixed tried multiple drag and drop operations no crash anymore , of course their are distortion issues with the Frame Accurate Seeking, so i have force it to seek on I frames only. Nope it's still crashing but it can hold up much more Drag and Drop operations now before it crashes @ some sample
__________________
all my compares are riddles so please try to decipher them yourselves :)

It is about Time

Join the Revolution NOW before it is to Late !

http://forum.doom9.org/showthread.php?t=168004

Last edited by CruNcher; 18th March 2012 at 07:33.
CruNcher is offline   Reply With Quote
Old 18th March 2012, 07:41   #9973  |  Link
Gleb Egorych
Registered User
 
Join Date: Aug 2008
Posts: 231
Quote:
Originally Posted by madshi View Post
@Gleb Egorych, can you confirm that you had a "LAVVideo.pdb" file in the same directory as "LAVVideo.ax" when creating the freeze report? And you do have a "dbghelp.dll" file in the madVR directory, correct?
Yes.

Quote:
Originally Posted by madshi View Post
I think DSP is audio related, though?
Yes.

Quote:
Originally Posted by nevcairiel View Post
Considering i cannot even figure out how to configure ZP to use LAV without turning off its "smart play", i suggest you start over with a factory-reset version of ZP and then try to replicate the issue, and once you can, tell me the config exactly.
Alternatively, maybe ZP can somehow export its config, so i can import it?
Here are my settings. Paste them in zplayer.local file and place it in zplayer.exe dir. I use Zoom Player 8.1.1 with this hotfix.

Hangs with some previous LAV versions were exposed by ZP internal DSP and stream switching filter. When you press "S" key Zoom Player stops the graph and sometimes it hangs on this action.

I reproduced the hang without LAV Video in the graph, only Haali splitter, ffdshow video decoder and LAV Audio. Log.
Gleb Egorych is offline   Reply With Quote
Old 18th March 2012, 07:49   #9974  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Ah, @Gleb, so this has nothing to do with nevcairiel's recent changes at all? The bug was there in some older LAV versions, too? Hmmmmm... And you're sure that it only occurs with LAV Audio and with no other audio decoder? According to the freeze report it more looks like a ZP bug to me. But if it is, it should probably occur with other audio decoders, as well.

Sorry for the stupid question, but just to be safe: You have the LAV PDB files in the path "C:\Program Files (x86)\codecs\LAV", correct? You didn't actually copy them to "C:\Program Files\codecs\LAV" instead of "C:\Program Files (x86)\codecs\LAV"?
madshi is offline   Reply With Quote
Old 18th March 2012, 07:55   #9975  |  Link
CruNcher
Registered User
 
CruNcher's Avatar
 
Join Date: Apr 2002
Location: Germany
Posts: 4,926
Perfect it crashes fast away with MadVR on Drag and Drop with Mainconcepts Decoder tried Lav Video no crash, i try to trace it

Here the report http://www.mediafire.com/?cmc46mv5otdvj59

the crash isn't as fast with EVR basic but it comes after some time only with Lav Splitter though


PS: Im 100% sure the Internal MPC-HC .ts splitter never triggers this MPC-HC crash Internal .ts/Lav Audio with Mainconcepts Decoder it's only Lav Splitter/Lav Audio
__________________
all my compares are riddles so please try to decipher them yourselves :)

It is about Time

Join the Revolution NOW before it is to Late !

http://forum.doom9.org/showthread.php?t=168004

Last edited by CruNcher; 18th March 2012 at 08:39.
CruNcher is offline   Reply With Quote
Old 18th March 2012, 08:04   #9976  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
Quote:
Originally Posted by Gleb Egorych View Post
I reproduced the hang without LAV Video in the graph, only Haali splitter, ffdshow video decoder and LAV Audio. Log.
That doesn't make any sense whatsoever. Specifically the part where you say 0.49 release works.
LAV Audio was not changed one single bit. The first versions you reported the problem on (0.49-19) didn't even have an ffmpeg update, i only did that later on.

Are you absolutely sure that 0.49 release works?
Maybe you should ask Blight to look into it, he can properly see where all the ZP threads are stuck, and then contact me directly if he sees something.
I remember being in contact with him about this problem before, but he confirmed it was fixed, and i never changed anything to change that.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 18th March 2012 at 08:09.
nevcairiel is online now   Reply With Quote
Old 18th March 2012, 08:05   #9977  |  Link
Gleb Egorych
Registered User
 
Join Date: Aug 2008
Posts: 231
Quote:
Originally Posted by madshi View Post
Ah, @Gleb, so this has nothing to do with nevcairiel's recent changes at all? The bug was there in some older LAV versions, too? Hmmmmm... And you're sure that it only occurs with LAV Audio and with no other audio decoder? According to the freeze report it more looks like a ZP bug to me. But if it is, it should probably occur with other audio decoders, as well.
It was present for some time, the it was fixed (in 0.27, not sure). Then there were made some changes and it reappeared in in some 0.3x beta version and was fastly fixed by nevcairiel. No bug in 0.49 release, it only presents in recent betas.

Quote:
Originally Posted by madshi View Post
Sorry for the stupid question, but just to be safe: You have the LAV PDB files in the path "C:\Program Files (x86)\codecs\LAV", correct? You didn't actually copy them to "C:\Program Files\codecs\LAV" instead of "C:\Program Files (x86)\codecs\LAV"?
Yes, I paste with replace the entire archive in the same directory, "C:\Program Files (x86)\codecs\LAV".
Gleb Egorych is offline   Reply With Quote
Old 18th March 2012, 08:11   #9978  |  Link
Gleb Egorych
Registered User
 
Join Date: Aug 2008
Posts: 231
Quote:
Originally Posted by nevcairiel View Post
Are you absolutely sure that 0.49 release works?
I used 0.49 for a week and haven't faced the problem. At the same time ZP with 0.49-xx hung the same day I installed the update. I'll 0.49 release further.

I'll report the bug to Blight too.

Last edited by Gleb Egorych; 18th March 2012 at 08:15.
Gleb Egorych is offline   Reply With Quote
Old 18th March 2012, 11:43   #9979  |  Link
Gleb Egorych
Registered User
 
Join Date: Aug 2008
Posts: 231
nevcairiel,
after some testing I can say that 0.49 and 0.48 are affected by the hang too. Need some time to find the last working version.
Gleb Egorych is offline   Reply With Quote
Old 18th March 2012, 11:54   #9980  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
Quote:
Originally Posted by Gleb Egorych View Post
nevcairiel,
after some testing I can say that 0.49 and 0.48 are affected by the hang too. Need some time to find the last working version.
Can you confirm that it works with for example ffdshow first?
Nothing major changed really in LAV for quite a while.

I still think that DSP filter is having the issue here.
The hang you got with 0.49-19 during normal playback was probably video related, which i fixed. Now that you do intensive testing, it may be related to something completely different.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 18th March 2012 at 12:01.
nevcairiel is online now   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 14:29.


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