Log in

View Full Version : CVS builds - DirectShowSource.dll and TCPDeliver.dll


IanB
27th November 2006, 11:54
Here are updated builds of the latest CVS fixes.

See 2.5.7 Release version.

This hopefully fixes the Grey Frame problem with direct show rapidly starting, stopping and restarting as the graph first starts. Also on end of stream the last good frame is now repeated instead of a grey frame.

And fix the crash during Audio negotiation regresssion.


See 2.5.7 Released version.

This fixes an off by 4 bytes error with audio data and transfering 50% to much data with YV12. I have also added the Avisynth icon.

Unzip the downloads and replace the existing .dll's in your Avisynth pluggin directory.

bratao
27th November 2006, 14:02
I´m getting im directshowsource this error:
Evaluate:System exception: Acess Violation

Fizick
27th November 2006, 19:34
bratao, script?

bratao
27th November 2006, 22:08
Just a DirectShowSource("file")
Work good with the another version.

BTW, my windows is 2003

Fizick
27th November 2006, 22:13
Now please more info about "file"

bratao
28th November 2006, 00:52
That really matter ?
Its a Finale episodie of The last season of X-files, "The truth"
Its a 1:26 hour long , 700 Megas Xvid encoded in 700x400 resolution, framerate is 23.976. Audio is a mp3 , at VBR
My DirectShow decoder is a cvs ffdshow tryout from 23-11-2006

IanB
28th November 2006, 02:33
The complete error message, accurately copied and a log would be most helpfull.DirectShowSource("file", logfile="blah.log", logmask=-1)

bratao
28th November 2006, 03:18
00:00:00.000 fff 0x00000000 DirectShowSource 2.5.7 build:Nov 27 2006 [12:11:30]
00:00:00.000 080 0x00E7BEA8 New GetSample (audio).
00:00:00.000 080 0x00E7BEA0 New DirectShowSource.
00:00:00.027 040 0x00E7BEA8 GetSample::AddRef() -> 2
00:00:00.027 008 0x00E7BEA8 GetSample::JoinFilterGraph(0x01072960, GetSample)
00:00:00.027 008 0x00E7BEA8 GetSample::QueryInterface({8e1c39a1-de53-11cf-aa63-0080c744528d}, ppv) ** E_NOINTERFACE **
00:00:00.027 008 0x00E7BEA8 GetSample::QueryInterface({f90a6130-b658-11d2-ae49-0000f8754b99}, ppv) ** E_NOINTERFACE **
00:00:00.063 008 0x00E7BEA8 GetSample::EnumPins()
00:00:00.063 080 0x01073578 New GetSampleEnumPins.
00:00:00.063 040 0x00E7BEA8 GetSample::AddRef() -> 3
00:00:00.063 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:00.063 040 0x00E7BEA8 GetSample::Release() -> 2
00:00:00.063 080 0x01073578 ~GetSampleEnumPins.
00:00:00.063 008 0x00E7BEA8 GetSample::EnumPins()
00:00:00.063 080 0x01073578 New GetSampleEnumPins.
00:00:00.063 040 0x00E7BEA8 GetSample::AddRef() -> 3
00:00:00.063 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:00.063 020 0x00E7BEA8 GetSample::ConnectedTo() ** VFW_E_NOT_CONNECTED **
00:00:00.063 040 0x00E7BEA8 GetSample::Release() -> 2
00:00:00.063 080 0x01073578 ~GetSampleEnumPins.
00:00:00.063 040 0x00E7BEA8 GetSample::AddRef() -> 3
00:00:00.063 008 0x00E7BEA8 GetSample::EnumPins()
00:00:00.063 080 0x01073578 New GetSampleEnumPins.
00:00:00.063 040 0x00E7BEA8 GetSample::AddRef() -> 4
00:00:00.063 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:00.063 040 0x00E7BEA8 GetSample::AddRef() -> 5
00:00:00.063 008 0x00E7BEA8 GetSample::QueryPinInfo() 0x00e7bea8
00:00:00.063 040 0x00E7BEA8 GetSample::Release() -> 4
00:00:00.063 020 0x00E7BEA8 GetSample::ConnectedTo() ** VFW_E_NOT_CONNECTED **
00:00:00.063 008 0x00E7BEA8 GetSample::QueryInternalConnections()
00:00:00.063 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:00.063 040 0x00E7BEA8 GetSample::AddRef() -> 5
00:00:00.063 001 0x00E7BEA8 GetSample::QueryAccept(audio) reject major type {e436eb83-524f-11ce-9f53-0020af0ba770}
00:00:00.063 020 0x00E7BEA8 GetSample::ReceiveConnection() ** VFW_E_TYPE_NOT_ACCEPTED **
00:00:00.063 040 0x00E7BEA8 GetSample::Release() -> 4
00:00:00.063 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:00.063 008 0x00E7BEA8 GetSample::EnumMediaTypes()
00:00:00.063 080 0x010739D0 New GetSampleEnumMediaTypes.
00:00:00.063 008 0x010739D0 GetSampleEnumMediaTypes::Next(1) pos=0
00:00:00.063 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:00.063 008 0x010739D0 GetSampleEnumMediaTypes::Next(1) pos=1
00:00:00.063 080 0x010739D0 ~GetSampleEnumMediaTypes.
00:00:00.063 040 0x00E7BEA8 GetSample::Release() -> 3
00:00:00.063 080 0x01073578 ~GetSampleEnumPins.
00:00:00.063 040 0x00E7BEA8 GetSample::Release() -> 2
00:00:00.119 040 0x00E7BEA8 GetSample::AddRef() -> 3
00:00:00.119 008 0x00E7BEA8 GetSample::QueryInterface({ebe1fb08-3957-47ca-af13-5827e5442e56}, ppv) ** E_NOINTERFACE **
00:00:00.119 040 0x00E7BEA8 GetSample::Release() -> 2
00:00:00.119 040 0x00E7BEA8 GetSample::AddRef() -> 3
00:00:00.119 008 0x00E7BEA8 GetSample::QueryInterface({ebe1fb08-3957-47ca-af13-5827e5442e56}, ppv) ** E_NOINTERFACE **
00:00:00.119 008 0x00E7BEA8 GetSample::EnumPins()
00:00:00.119 080 0x0107C878 New GetSampleEnumPins.
00:00:00.119 080 0x0107C878 ~GetSampleEnumPins.
00:00:00.119 040 0x00E7BEA8 GetSample::Release() -> 2
00:00:00.120 040 0x00E7BEA8 GetSample::AddRef() -> 3
00:00:00.120 008 0x00E7BEA8 GetSample::QueryInterface({56a868b3-0ad4-11ce-b03a-0020af0ba770}, ppv) ** E_NOINTERFACE **
00:00:00.120 040 0x00E7BEA8 GetSample::Release() -> 2
00:00:01.264 040 0x00E7BEA8 GetSample::AddRef() -> 3
00:00:01.264 008 0x00E7BEA8 GetSample::EnumPins()
00:00:01.264 080 0x01073CF8 New GetSampleEnumPins.
00:00:01.264 040 0x00E7BEA8 GetSample::AddRef() -> 4
00:00:01.264 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:01.264 040 0x00E7BEA8 GetSample::AddRef() -> 5
00:00:01.264 008 0x00E7BEA8 GetSample::QueryPinInfo() 0x00e7bea8
00:00:01.264 040 0x00E7BEA8 GetSample::Release() -> 4
00:00:01.264 020 0x00E7BEA8 GetSample::ConnectedTo() ** VFW_E_NOT_CONNECTED **
00:00:01.264 008 0x00E7BEA8 GetSample::QueryInternalConnections()
00:00:01.264 008 0x00E7BEA8 GetSample::EnumMediaTypes()
00:00:01.264 080 0x0107C930 New GetSampleEnumMediaTypes.
00:00:01.264 008 0x0107C930 GetSampleEnumMediaTypes::Next(1) pos=0
00:00:01.264 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:01.264 040 0x00E7BEA8 GetSample::AddRef() -> 5
00:00:01.264 008 0x00E7BEA8 GetSample::QueryInterface({56a8689d-0ad4-11ce-b03a-0020af0ba770}, ppv)
00:00:01.264 040 0x00E7BEA8 GetSample::Release() -> 4
00:00:01.264 008 0x0107C930 GetSampleEnumMediaTypes::Next(1) pos=1
00:00:01.264 080 0x0107C930 ~GetSampleEnumMediaTypes.
00:00:01.264 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:01.264 040 0x00E7BEA8 GetSample::AddRef() -> 5
00:00:01.264 008 0x00E7BEA8 GetSample::QueryInterface({56a8689d-0ad4-11ce-b03a-0020af0ba770}, ppv)
00:00:01.264 040 0x00E7BEA8 GetSample::AddRef() -> 6
00:00:01.264 001 0x00E7BEA8 GetSample::QueryAccept(audio) MEDIATYPE_Video
00:00:01.264 020 0x00E7BEA8 GetSample::ReceiveConnection() ** VFW_E_TYPE_NOT_ACCEPTED **
00:00:01.264 040 0x00E7BEA8 GetSample::Release() -> 5
00:00:01.264 040 0x00E7BEA8 GetSample::Release() -> 4
00:00:01.264 040 0x00E7BEA8 GetSample::Release() -> 3
00:00:01.264 080 0x01073CF8 ~GetSampleEnumPins.
00:00:01.264 040 0x00E7BEA8 GetSample::Release() -> 2
00:00:01.290 040 0x00E7BEA8 GetSample::AddRef() -> 3
00:00:01.290 008 0x00E7BEA8 GetSample::GetClassID() E_NOTIMPL
00:00:01.290 040 0x00E7BEA8 GetSample::Release() -> 2
00:00:01.482 040 0x00E7BEA8 GetSample::AddRef() -> 3
00:00:01.482 008 0x00E7BEA8 GetSample::EnumPins()
00:00:01.482 080 0x0107C930 New GetSampleEnumPins.
00:00:01.482 040 0x00E7BEA8 GetSample::AddRef() -> 4
00:00:01.482 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:01.482 040 0x00E7BEA8 GetSample::AddRef() -> 5
00:00:01.482 008 0x00E7BEA8 GetSample::QueryPinInfo() 0x00e7bea8
00:00:01.482 040 0x00E7BEA8 GetSample::Release() -> 4
00:00:01.482 020 0x00E7BEA8 GetSample::ConnectedTo() ** VFW_E_NOT_CONNECTED **
00:00:01.482 008 0x00E7BEA8 GetSample::QueryInternalConnections()
00:00:01.482 008 0x00E7BEA8 GetSample::EnumMediaTypes()
00:00:01.482 080 0x0107C790 New GetSampleEnumMediaTypes.
00:00:01.482 008 0x0107C790 GetSampleEnumMediaTypes::Next(1) pos=0
00:00:01.482 040 0x00E7BEA8 GetSample::AddRef() -> 5
00:00:01.482 008 0x00E7BEA8 GetSample::QueryPinInfo() 0x00e7bea8
00:00:01.482 040 0x00E7BEA8 GetSample::Release() -> 4
00:00:01.482 008 0x00E7BEA8 GetSample::GetClassID() E_NOTIMPL
00:00:01.482 008 0x00E7BEA8 GetSample::QueryDirection()
00:00:01.482 040 0x00E7BEA8 GetSample::AddRef() -> 5
00:00:01.482 008 0x00E7BEA8 GetSample::QueryInterface({56a8689d-0ad4-11ce-b03a-0020af0ba770}, ppv)
00:00:01.482 040 0x00E7BEA8 GetSample::AddRef() -> 6
00:00:01.482 001 0x00E7BEA8 GetSample::QueryAccept(audio) MEDIATYPE_Audio
00:00:01.482 008 0x00E7BEA8 GetSample::GetState(), state is 0
00:00:01.482 010 0x00E7BEA8 StopGraph() indicating done with sample - state:0
00:00:01.482 080 0x00E7BEA8 ~GetSample.
00:00:01.482 fff 0x00000000 Close audio log 2.
00:00:01.482 fff 0x00000000 Close Create_DirectShowSource Cleanup Handler log 1.

bratao
28th November 2006, 13:35
Is this that you want ?
Evaluate: System Exception - Access Violation (F:\temporarios\X-Files-Season9-HQ-DVDRIP-720x400\DISC 5\09.19.19-20 The Truth(19-05-2002)\20 The Truth.avs, line 1)
The script:
DirectShowSource("F:\temporarios\X-Files-Season9-HQ-DVDRIP-720x400\DISC 5\09.19.19-20 The Truth (19-05-2002)\09.19.19-20 The Truth (19-05-2002).avi", logfile="blah.log", logmask=-1)

IanB
28th November 2006, 14:15
@bratao,

Thank you.

I have add a stack of validation to the audio negotiation code where I think the crash was happening.

I have update the link above with a new version. Please try this one.

bratao
28th November 2006, 16:41
IanB, Everything working great now !

Thank You, and the team for the excellent work !

netsnake
6th December 2006, 12:05
IanB thank you very mush~~

alcio85
14th December 2006, 16:47
very good, thx very much !!!
But... it only works with seek=false

Is there any reason why without seek=false doesn't work ?

foxyshadis
15th December 2006, 09:49
Because some splitters are agressively stupid and broken. Most of the problems with DirectShowSource boil down to that.

IanB
16th December 2006, 23:48
:confused: Only some spliters :D

zrb
17th September 2007, 21:29
link in the first message is dead %( (http://avisynth2.sourceforge.net/directshowsource.zip)

IanB
17th September 2007, 22:17
Sorry, I'll edit the post.

This was just a pre-release of the shipped 2.5.7 version.

The latest DSS available is in the 2.5.8-Alpha.