Welcome Guest ( Log In | Register )


Important

The forums will be closing permanently the weekend of March 15th. Please see the notice in the announcements forum for details.

Pages: (20) « First ... 14 15 [16] 17 18 ... Last » ( Go to first unread post )
Directshow Input Driver, 0.1
« Next Oldest | Next Newest » Track this topic | Email this topic | Print this topic
evropej
Posted: Aug 10 2011, 04:13 AM


Advanced Member


Group: Members
Posts: 514
Member No.: 26523
Joined: 28-November 09



What is the advantage of using this and when is it applicable?
<=== complete noob here lol
 
     Top
-vdub-
Posted: Aug 10 2011, 04:15 PM


Advanced Member


Group: Members
Posts: 613
Member No.: 27087
Joined: 24-February 10



Tested with mpeg-2 the sound is racing and chirping. loading mpeg-2 using other filters sound is correct.


QUOTE
Fixed the source aspect ratio -- it was sending DAR as PAR.

Not loading with DAR 16:9 instead loading SAR 5:4 value.

Screen display AR i use 'Free Adjust'

AR 5:4 seen with VDMod_Resize filter used to show exactly what the main display is showing.
 
    Top
dloneranger
Posted: Aug 10 2011, 07:33 PM


Moderator


Group: Moderators
Posts: 2366
Member No.: 22158
Joined: 26-September 07



version 0.9

Moving to (almost) the end of a video and pressing the fast forward scene seek results in vdub locking up as it reaches the end


--------------------
MultiAdjust JoinWav WavNormalize FFMPeg Input Plugin v1827 UnSharpMask
Windows7/8 Codec Chooser
All FccHandlers Stuff inc. Installers for acm codecs AAC, AC3, LameMp3
 
    Top
phaeron
Posted: Aug 14 2011, 12:48 AM


Virtualdub Developer


Group: Administrator
Posts: 7773
Member No.: 61
Joined: 30-July 02



MPEG-2 is looking pretty hopeless from the DirectShow side, I'm afraid. The default Microsoft DirectShow filter that handles it is lousy and has problems such as imperfect seeking and unstable timestamps. I put in some code to try to handle it, but there's not much I can do when the MPEG-2 filter tells me that the video stream is 90 hours long (not joking). You should continue to use input plugins with specific MPEG-2 code for that format.

I've seen the near-end hang and am trying to fix it. It happens when the duration reported by the stream is longer than what the decoders actually provide. I need to beef up the end of stream handling support.
 
    Top
dloneranger
Posted: Aug 14 2011, 11:37 AM


Moderator


Group: Moderators
Posts: 2366
Member No.: 22158
Joined: 26-September 07



QUOTE
I've seen the near-end hang and am trying to fix it. It happens when the duration reported by the stream is longer than what the decoders actually provide. I need to beef up the end of stream handling support.


With that info:
As a quick hack, I've reduced mStreamInfo.mSampleCount by 1 seconds worth of samples (or 30 if a sanity check on 1 seconds worth fails)
Like I say, it's a hack, but it works and losing the last second is not usually a problem wink.gif

On the plus side, v0.9 is much faster at scene reverse

--------------------
MultiAdjust JoinWav WavNormalize FFMPeg Input Plugin v1827 UnSharpMask
Windows7/8 Codec Chooser
All FccHandlers Stuff inc. Installers for acm codecs AAC, AC3, LameMp3
 
    Top
phaeron
Posted: Aug 18 2011, 01:54 AM


Virtualdub Developer


Group: Administrator
Posts: 7773
Member No.: 61
Joined: 30-July 02



Turned out to be nastier than I thought... the sample grabber wasn't getting anything on a seek near the end. No NewSegment(), no EndOfStream() calls. I changed the SetPositions() call in 0.91 to explicitly specify an end position and that seemed to fix it. Wish they'd document this stuff....
 
    Top
dloneranger
Posted: Aug 18 2011, 06:04 AM


Moderator


Group: Moderators
Posts: 2366
Member No.: 22158
Joined: 26-September 07



I'm still getting hangs at the end
Here's a dump of the debug strings for the last few frames when scene forwarding
CODE
[7764] Video: requesting sample at time 29912200000
[7764] SampleGrabber[video grabber]: CheckForSample[29912200000, 29912200001]
[7764] SampleGrabber[video grabber]: Discarding sample [29911800000, 29912000000]
[7764] SampleGrabber[video grabber]: Discarding sample [29912000000, 29912200000]
[7764] SampleGrabber[video grabber]: Pushing sample [29912200000, 29912400000] from buffer 067377B8
[7764] Receiving video: [-152571072, -152471072]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] Video: requesting sample at time 29912600000
[7764] SampleGrabber[video grabber]: CheckForSample[29912600000, 29912600001]
[7764] SampleGrabber[video grabber]: Discarding sample [29912200000, 29912400000]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] Video: missed sample at -152171072; streaming through from -152371072
[7764] SampleGrabber[video grabber]: Receiving [29912600000, 29912700000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29912400000, 29912600000]
[7764] SampleGrabber[video grabber]: Receiving [29912800000, 29912900000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29912600000, 29912800000]
[7764] Receiving video: [-152171072, -152071072]
[7764] SampleGrabber[video grabber]: Receiving [29913000000, 29913100000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29912800000, 29913000000]
[7764] Video: requesting sample at time 29913000000
[7764] SampleGrabber[video grabber]: CheckForSample[29913000000, 29913000001]
[7764] SampleGrabber[video grabber]: Discarding sample [29912600000, 29912800000]
[7764] SampleGrabber[video grabber]: Discarding sample [29912800000, 29913000000]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] Video: missed sample at -151771072; streaming through from -151771072
[7764] SampleGrabber[video grabber]: Receiving [29913200000, 29913300000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29913000000, 29913200000]
[7764] Receiving video: [-151771072, -151671072]
[7764] SampleGrabber[video grabber]: Receiving [29913400000, 29913500000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29913200000, 29913400000]
[7764] Video: requesting sample at time 29913400000
[7764] SampleGrabber[video grabber]: CheckForSample[29913400000, 29913400001]
[7764] SampleGrabber[video grabber]: Discarding sample [29913000000, 29913200000]
[7764] SampleGrabber[video grabber]: Discarding sample [29913200000, 29913400000]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] Video: missed sample at -151371072; streaming through from -151371072
[7764] SampleGrabber[video grabber]: Receiving [29913600000, 29913700000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29913400000, 29913600000]
[7764] Receiving video: [-151371072, -151271072]
[7764] SampleGrabber[video grabber]: Receiving [29913800000, 29913900000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29913600000, 29913800000]
[7764] Video: requesting sample at time 29913800000
[7764] SampleGrabber[video grabber]: CheckForSample[29913800000, 29913800001]
[7764] SampleGrabber[video grabber]: Discarding sample [29913400000, 29913600000]
[7764] SampleGrabber[video grabber]: Discarding sample [29913600000, 29913800000]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] Video: missed sample at -150971072; streaming through from -150971072
[7764] SampleGrabber[video grabber]: Receiving [29914000000, 29914100000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29913800000, 29914000000]
[7764] SampleGrabber[video grabber]: Receiving [29914200000, 29914300000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29914000000, 29914200000]
[7764] SampleGrabber[video grabber]: Time missed -- aborting ([29914000000,29914200000] after [29913800000,29913800001])
[7764] Video: requesting sample at time 29913800000
[7764] SampleGrabber[video grabber]: CheckForSample[29913800000, 29913800001]
[7764] SampleGrabber[video grabber]: Pushing sample [29913800000, 29914000000] from buffer 04CCA860
[7764] Receiving video: [-150971072, -150871072]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] SampleGrabber[video grabber]: Receiving [29914400000, 29914500000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29914200000, 29914400000]
[7764] Video: requesting sample at time 29914200000
[7764] SampleGrabber[video grabber]: CheckForSample[29914200000, 29914200001]
[7764] SampleGrabber[video grabber]: Discarding sample [29913800000, 29914000000]
[7764] SampleGrabber[video grabber]: Pushing sample [29914200000, 29914400000] from buffer 067377B8
[7764] Receiving video: [-150571072, -150471072]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] SampleGrabber[video grabber]: Receiving [29914600000, 29914700000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29914400000, 29914600000]
[7764] SampleGrabber[video grabber]: Receiving [29914800000, 29914900000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29914600000, 29914800000]
[7764] Video: requesting sample at time 29914600000
[7764] SampleGrabber[video grabber]: CheckForSample[29914600000, 29914600001]
[7764] SampleGrabber[video grabber]: Discarding sample [29914200000, 29914400000]
[7764] SampleGrabber[video grabber]: Discarding sample [29914400000, 29914600000]
[7764] SampleGrabber[video grabber]: Pushing sample [29914600000, 29914800000] from buffer 04CCA860
[7764] Receiving video: [-150171072, -150071072]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] SampleGrabber[video grabber]: Receiving [29915000000, 29915100000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29914800000, 29915000000]
[7764] Video: requesting sample at time 29915000000
[7764] SampleGrabber[video grabber]: CheckForSample[29915000000, 29915000001]
[7764] SampleGrabber[video grabber]: Discarding sample [29914600000, 29914800000]
[7764] SampleGrabber[video grabber]: Discarding sample [29914800000, 29915000000]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] Video: missed sample at -149771072; streaming through from -149771072
[7764] SampleGrabber[video grabber]: Receiving [29915200000, 29915300000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29915000000, 29915200000]
[7764] Receiving video: [-149771072, -149671072]
[7764] SampleGrabber[video grabber]: Receiving [29915400000, 29915500000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29915200000, 29915400000]
[7764] Video: requesting sample at time 29915400000
[7764] SampleGrabber[video grabber]: CheckForSample[29915400000, 29915400001]
[7764] SampleGrabber[video grabber]: Discarding sample [29915000000, 29915200000]
[7764] SampleGrabber[video grabber]: Discarding sample [29915200000, 29915400000]
[7764] SampleGrabber[video grabber]: CheckForSample() completed
[7764] Video: missed sample at -149371072; streaming through from -149371072
[7764] SampleGrabber[video grabber]: Receiving [29915600000, 29915700000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29915400000, 29915600000]
[7764] Receiving video: [-149371072, -149271072]
[7764] SampleGrabber[video grabber]: Receiving [29915800000, 29915900000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29915600000, 29915800000]
[7764] SampleGrabber[video grabber]: Receiving [29916000000, 29916100000] size 1382400
[7764] SampleGrabber[video grabber]: Processing pending sample [29915800000, 29916000000]
[7764] [AudioSource] Requesting 1000 samples (4000 bytes) starting at 143594160; setting search bracket to [29915450104, 29915658438]; cached [29915306655, 29915946654]
[7764] SampleGrabber[audio grabber]: CheckForSample[29915450104, 29915658438]
[7764] SampleGrabber[audio grabber]: Pushing sample [29915306655, 29915519988] from buffer 04CCB0A0
[7764] [AudioSource] Receiving audio: [29915306655, 29915519988]
[7764] [AudioSource] Copying out 1344 bytes from offset 2752
[7764] SampleGrabber[audio grabber]: Pushing sample [29915519988, 29915733321] from buffer 04CCB218
[7764] [AudioSource] Receiving audio: [29915519988, 29915733321]
[7764] [AudioSource] Copying out 2656 bytes from offset 0
[7764] SampleGrabber[audio grabber]: CheckForSample() completed
[7764] [AudioSource] Received 1000 samples
[7764] [AudioSource] Requesting 1000 samples (4000 bytes) starting at 143595160; setting search bracket to [29915658438, 29915866771]; cached [29915306655, 29915946654]
[7764] SampleGrabber[audio grabber]: CheckForSample[29915658438, 29915866771]
[7764] SampleGrabber[audio grabber]: Discarding sample [29915306655, 29915519988]
[7764] SampleGrabber[audio grabber]: Pushing sample [29915519988, 29915733321] from buffer 04CCB218
[7764] [AudioSource] Receiving audio: [29915519988, 29915733321]
[7764] [AudioSource] Copying out 1440 bytes from offset 2656
[7764] SampleGrabber[audio grabber]: Pushing sample [29915733321, 29915946654] from buffer 04CCB020
[7764] [AudioSource] Receiving audio: [29915733321, 29915946654]
[7764] [AudioSource] Copying out 2560 bytes from offset 0
[7764] SampleGrabber[audio grabber]: CheckForSample() completed
[7764] [AudioSource] Received 1000 samples
[7764] [AudioSource] Requesting 1000 samples (4000 bytes) starting at 143596160; setting search bracket to [29915866771, 29916075104]; cached [29915519988, 29915946654]
[7764] SampleGrabber[audio grabber]: CheckForSample[29915866771, 29916075104]
[7764] SampleGrabber[audio grabber]: Discarding sample [29915519988, 29915733321]
[7764] SampleGrabber[audio grabber]: Pushing sample [29915733321, 29915946654] from buffer 04CCB020
[7764] [AudioSource] Receiving audio: [29915733321, 29915946654]
[7764] [AudioSource] Copying out 1536 bytes from offset 2560
[7764] SampleGrabber[audio grabber]: CheckForSample() completed
[7764] SampleGrabber[audio grabber]: Receiving [29916159987, 29916373320] size 4096
[7764] SampleGrabber[audio grabber]: Processing pending sample [29915946654, 29916159987]
[7764] [AudioSource] Receiving audio: [29915946654, 29916159987]
[7764] [AudioSource] Copying out 2464 bytes from offset 0
[7764] [AudioSource] Received 1000 samples
[7764] [AudioSource] Requesting 1000 samples (4000 bytes) starting at 143597160; setting search bracket to [29916075104, 29916283438]; cached [29915733321, 29916159987]
[7764] SampleGrabber[audio grabber]: CheckForSample[29916075104, 29916283438]
[7764] SampleGrabber[audio grabber]: Discarding sample [29915733321, 29915946654]
[7764] SampleGrabber[audio grabber]: Pushing sample [29915946654, 29916159987] from buffer 04CCB198
[7764] [AudioSource] Receiving audio: [29915946654, 29916159987]
[7764] [AudioSource] Copying out 1632 bytes from offset 2464
[7764] SampleGrabber[audio grabber]: CheckForSample() completed
[7764] SampleGrabber[audio grabber]: Receiving [29916373320, 29916586653] size 4096
[7764] SampleGrabber[audio grabber]: Processing pending sample [29916159987, 29916373320]
[7764] [AudioSource] Receiving audio: [29916159987, 29916373320]
[7764] [AudioSource] Copying out 2368 bytes from offset 0
[7764] [AudioSource] Received 1000 samples
[7764] SampleGrabber[audio grabber]: EndOfStream() called
[7764] SampleGrabber[audio grabber]: Processing pending sample [29916373320, 2305843039121643951]
[7764] [AudioSource] Requesting 560 samples (2240 bytes) starting at 143598160; setting search bracket to [29916283438, 29916400104]; cached [29915946654, 29916373320]
[7764] SampleGrabber[audio grabber]: CheckForSample[29916283438, 29916400104]
[7764] SampleGrabber[audio grabber]: Discarding sample [29915946654, 29916159987]
[7764] SampleGrabber[audio grabber]: Pushing sample [29916159987, 29916373320] from buffer 04CCB218
[7764] [AudioSource] Receiving audio: [29916159987, 29916373320]
[7764] [AudioSource] Copying out 1728 bytes from offset 2368
[7764] SampleGrabber[audio grabber]: CheckForSample() completed
--- virtualdub has now hung


--------------------
MultiAdjust JoinWav WavNormalize FFMPeg Input Plugin v1827 UnSharpMask
Windows7/8 Codec Chooser
All FccHandlers Stuff inc. Installers for acm codecs AAC, AC3, LameMp3
 
    Top
dloneranger
Posted: Aug 18 2011, 01:26 PM


Moderator


Group: Moderators
Posts: 2366
Member No.: 22158
Joined: 26-September 07



A nastier problem with .91 is a huge performance drop, with some files
The line
hr = mpGraphMediaSeeking->SetPositions(&startPos, AM_SEEKING_AbsolutePositioning, &endPos, AM_SEEKING_AbsolutePositioning);
in void DSVideoDecoder::DecodeFrameLocal(void *pvFrame)
looks like it's causing some really horrible reseeking every other frame

As an experiment i adjusted LONGLONG endPos = VDRoundToInt64((double)(frame + 2)
to be 50 frames, and the re-seeking delay did appear ever 50 frames then, so that looks like the problem alright

(the delay - especially toward the end of a file can be long enough for virtualdub to give up and report a deadlock)

--------------------
MultiAdjust JoinWav WavNormalize FFMPeg Input Plugin v1827 UnSharpMask
Windows7/8 Codec Chooser
All FccHandlers Stuff inc. Installers for acm codecs AAC, AC3, LameMp3
 
    Top
L.H.V.F.
Posted: Aug 22 2011, 02:52 AM


Advanced Member


Group: Members
Posts: 49
Member No.: 28822
Joined: 19-October 10



Hi, phaeron

I have an video that using the WMV Input Driver, by fccHandler, or the FFmpeg Input Driver, by raythe0n, I have not get synchrony, and also for DirectShow Input Driver (the video stay very slow in playback). I will test, when is possible, with apropriate versions DirectShow codecs or filters (knowing if I have them with RadLight Filter Manager v1.5), and don't know if I have the specific codecs for play correctly this (FFmpeg Input Driver plays more than DirectShow Input Driver, but also no get audio synchrony). For can convert it to DVD, with sync, I'm planing to use AviSynth, and some hacks, using also ffmpegsource, and timecodes for can do this. The address of the mentioned video is:

http://www.4shared.com/video/OE0y3D4v/Proj...ontinuidad.html
 
     Top
jpsdr
Posted: Aug 22 2011, 07:37 AM


Advanced Member


Group: Members
Posts: 335
Member No.: 20490
Joined: 23-December 06



VD still hang on the end of a list job process with 0.91.
 
     Top
Placio74
Posted: Aug 22 2011, 09:23 PM


VideoAudio


Group: Members
Posts: 1216
Member No.: 21485
Joined: 24-May 07



L.H.V.F., firstly 'repair' this WMV file using AsfBin.
After that, it should be sync (when importing through DirectShow import driver or fccHandler's WMV input plugin).

--------------------
VideoAudio.pl - Serwis o technologii wideo & audio
 
     Top
phaeron
Posted: Aug 23 2011, 05:57 AM


Virtualdub Developer


Group: Administrator
Posts: 7773
Member No.: 61
Joined: 30-July 02



QUOTE
As an experiment i adjusted LONGLONG endPos = VDRoundToInt64((double)(frame + 2)
to be 50 frames, and the re-seeking delay did appear ever 50 frames then, so that looks like the problem alright


Well that's just peachy. The audio hang I can solve -- the audio stream needs a slightly different mechanism to handle unexpected end of stream events -- but now I have no clue how to solve the video hang. The filter graph is ignoring my seek request and neither sending a new segment nor an end of stream event, so there's no good way I can see so far to know if the upstream filters are ever going to send me more samples or not. The only way left seems to be a timeout, which is an unacceptable solution.
 
    Top
jpsdr
Posted: Aug 23 2011, 07:31 AM


Advanced Member


Group: Members
Posts: 335
Member No.: 20490
Joined: 23-December 06



A "long" timeout (ie few seconds) + a popup windows saying something like "No responce from xxx, is the job complete" ?
It seems ugly, but if you have no other way round, it's always better than being obliged to kill the process (i think).
 
     Top
dloneranger
Posted: Oct 4 2011, 05:55 AM


Moderator


Group: Moderators
Posts: 2366
Member No.: 22158
Joined: 26-September 07



In this thread you mentioned using graphedit's connect to remote graph feature for a diagnosis
http://forums.virtualdub.org/index.php?act...=ST&f=4&t=20466

Interesting, I hadn't looked at that before, but it does raise a question

In all other directshow graphs, there is one graph and in the graph, you get the splitter and then the 2 rendering paths for audio and video
This plugin gives 2 different graphs, one for audio, and one for video
Is that on purpose? Do the 2 ever get out of sync?

--------------------
MultiAdjust JoinWav WavNormalize FFMPeg Input Plugin v1827 UnSharpMask
Windows7/8 Codec Chooser
All FccHandlers Stuff inc. Installers for acm codecs AAC, AC3, LameMp3
 
    Top
levicki
Posted: Jan 7 2012, 02:38 AM


Advanced Member


Group: Members
Posts: 167
Member No.: 22605
Joined: 13-December 07



QUOTE (phaeron @ Oct 23 2010, 09:07 AM)
I'm looking into modifying the internal ASF driver to have lower priority. Since all it does is output an error message, it's safe to say you would never want it to activate if any other plugin can handle the file.

Avery, I understand this must be a low priority issue for you, but it is still unsolved after more than a year and that is a bit too much of a wait for me.

You said you will change the internal ASF driver, but I just tested 1.10.1 build 34703 and I still get the same "ASF files are not supported" message when opening WMV.

Will this ever be fixed, or I will have to keep patching every new VirtualDub version to be able to open WMV files through DirectShowSource driver from command line (and from open dialog without having to select directshow driver manually every time)?
 
      Top
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:
291 replies since Jan 10 2008, 05:09 AM Track this topic | Email this topic | Print this topic
Pages: (20) « First ... 14 15 [16] 17 18 ... Last »
<< Back to VirtualDub Filters and Filter Development