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 > Announcements and Chat > General Discussion

Reply
 
Thread Tools Search this Thread Display Modes
Old 15th February 2003, 02:15   #361  |  Link
Safai
Registered User
 
Join Date: May 2002
Location: Canada
Posts: 41
@gabest: since we're talking about aspect ratio here... when using the overlay mixer, the aspect ratio is always fixed to the original... i believe this is the function that you need to call to make it "resizable"...

IMixerPinConfig::SetAspectRatioMode(AM_ARMODE_NONE)
__________________
Safai
Album List for Winamp
Safai is offline   Reply With Quote
Old 15th February 2003, 02:22   #362  |  Link
gabest
Registered User
 
gabest's Avatar
 
Join Date: Oct 2001
Posts: 1,459
Thanks, I'm going to try it.

edit: The parameter was called AM_ARMODE_STRETCHED, but it worked great.
__________________
gabest.org

Last edited by gabest; 15th February 2003 at 02:34.
gabest is offline   Reply With Quote
Old 15th February 2003, 13:49   #363  |  Link
downloada
Registered User
 
Join Date: Sep 2002
Location: Germany
Posts: 64
Quote:
Originally posted by gabest
This is easy to answer, different streams might need different decoders downstream. This is why ogm's splitter (switching inside the filter) is not very good if you want to put differently encoded audio streams in one file.
thanks for clearing that up! i didn't think of that problem...

it would really be great, if the switcher was included directly into reclock (already requested it via email...), that would really make things easier (and you don't need to install/register a separate filter)...

cu
downloada is offline   Reply With Quote
Old 15th February 2003, 23:22   #364  |  Link
((( atom )))
noise is all around us...
 
((( atom )))'s Avatar
 
Join Date: Nov 2001
Location: - deep within -
Posts: 466
sadly i have to report that the mute-button solution has a very annoying issue: when i watch a movie, that spans over two discs (mine all do) reclock defaults to playing both audio-streams when loading a new file. so i have to get up and mute one channel again
__________________
((( atom )))
((( atom ))) is offline   Reply With Quote
Old 16th February 2003, 13:44   #365  |  Link
Chibi Jasmin
Registered User
 
Join Date: Oct 2001
Posts: 800
It still creates(!) a logfile, when logging is disabled...not needed I think...

And why does anybode need a separate stream switcher at all (morgan)...I repeat my question: DirectSound stream switching has been handled by the players for a long time now without any seperate stream switcher filter...why doesn't this work with ReClock? Player's or ReClock's fault?
Chibi Jasmin is offline   Reply With Quote
Old 18th February 2003, 22:11   #366  |  Link
Chibi Jasmin
Registered User
 
Join Date: Oct 2001
Posts: 800
The mute button is no solution for dual audio streams here, even if I mute a stream, it still plays (avi with ac3) with 'clickering' sound all the time...also ZoomPlayer crashes sometimes with dual audio files
Chibi Jasmin is offline   Reply With Quote
Old 19th February 2003, 11:17   #367  |  Link
oddball
Registered User
 
Join Date: Jan 2002
Posts: 1,264
I have a new problem with 99g. When playing back 25FPS with AC3 and SPDIF output the audio and video repeats itself every few seconds like it's got stuck in a sampling machine 'N-N-Nineteen' style.

I have to manually set to nearest integer to stop it.
oddball is offline   Reply With Quote
Old 24th February 2003, 15:43   #368  |  Link
Sumster
Registered User
 
Join Date: Sep 2002
Posts: 53
Oddball....

I have the same problem with 25fps PAL movies... with Reclock, it skips when using AC3 out. How did you correct the problem? No settings seem to alleviate it on my setup.

fortunately, I have very few 25fps clips....

Sumster
Sumster is offline   Reply With Quote
Old 24th February 2003, 16:34   #369  |  Link
Ewi
Registered User
 
Ewi's Avatar
 
Join Date: Jan 2002
Posts: 124
Hi!

I have 15fps anime clips here. At the moment Reclock does no adaption when used with "Auto" Media Adaption ("No rate adaption can be made for this media..."). So I'm switching to PAL60 and switch to "Refresh Rate /4" in speed and its seems to adapt correctly.

So my question: is it possible to do this internally in "Auto" mode; i.e. if the refresh rate is a multiple of the media playback rate it is adapted to this factor, for example:

15 fps and PAL60/NTSC => Refresh Rate /4
20 fps and PAL60/NTSC => Refresh Rate /3

so a kind of more general way for rate adaption.

Thank you...
Ewi is offline   Reply With Quote
Old 24th February 2003, 23:16   #370  |  Link
oddball
Registered User
 
Join Date: Jan 2002
Posts: 1,264
I set ReClock to nearest integer. Still glitches ehere and there slightly but does not do the repeated audio thing. Effectively by setting to anything other than auto the icon goes yellow.
oddball is offline   Reply With Quote
Old 25th February 2003, 11:49   #371  |  Link
RobScreene
Registered User
 
Join Date: Feb 2003
Location: England
Posts: 1
Hi,
Is it possible to get the mode to default to "integer" or "original" as opposed to Auto?

If I set to original, then close and re-open my player, ReClock defaults back to Auto.

thanks and regards,
Rob.
RobScreene is offline   Reply With Quote
Old 6th March 2003, 13:08   #372  |  Link
eLupus
Registered User
 
Join Date: Jan 2003
Posts: 46
Filter Merit

I have a problem with ReClock filter merit.

Even if i set ReClock's filter merit to 200001 = MERIT_DO_NOT_USE, Zoomplayer always load's the filter nomatter what custom audio device i set. This includes windows media player which also load's it at all time as soon as it is registered.

I wish to have the reclock filter registered, but only loaded when zoomplayer requests it.


I also have a problem with lockups if i try play SVCD's. I can still access the reclock filter through it's tray icon, but zoomplayer is completely locked. Only way is to kill it through taskmanager. I attatched my log, though i couldn't see anything weird it it.


Have you noticed these problems ogo?

Joakim Plate
eLupus is offline   Reply With Quote
Old 7th March 2003, 02:36   #373  |  Link
Perplx
Registered User
 
Join Date: Feb 2003
Location: Canada
Posts: 22
A feature I'd really like to see is a "save wav" or "disk writer" it really come in handy for windows media etc.
Perplx is offline   Reply With Quote
Old 7th March 2003, 03:08   #374  |  Link
Loul
Registered User
 
Join Date: Dec 2002
Location: Paris, France
Posts: 37
Hello !
I've been reading all this LLLLLLLLLOOOOOOONNNNNNNNNNGGGGGGGGG thread (long but still interesting at least for the parts I could get ) and it made me think at a wish I have had in my diistorted mind.

I'm a kind of weirdo who thinks that it s most important to watch a movie as much as the director wanted it to.
So that's why I thought of one day planning to learn how to encode movies at 24 fps (to be honnest 23.976 FPS is considerated as ok for me but PAL 25 @ FPS ain't ).

Reclock or a modified version of it could solve this issue in a very elegant way without making it so complicated to encode (especially concerning the audio of course).

So is it possible with Reclock (or could it be possible) to force movies to be played at 24FPS ?

I guess that it could be on a PC Monitor (the idea would be also not to be forced to change its refresh rate though that could be an option if the end user wants it).

When it comes to TV, I don't know if 24 FPS is too far away from the usual 25 FPS for the TV to sync to.

I hope I was clear enough. Tell me if not !
And if there s no hope , well I can tell him to ogo in French as I'm French too !
Loul is offline   Reply With Quote
Old 7th March 2003, 10:15   #375  |  Link
billou2k
Registered User
 
Join Date: Feb 2002
Location: Under the grey sky
Posts: 146
ogo

does somoeone knows what's happenning to ogo by the way?
its been weeks since we last saw him
__________________
Minds are like parachutes - they only function when open.
billou2k is offline   Reply With Quote
Old 10th March 2003, 12:48   #376  |  Link
ogo
Registered User
 
Join Date: Oct 2001
Posts: 156
Hi guys

Well, ogo is working hard on the next version of ReClock !

I'm working on the last cause of stutter i know of : presentation of frames to the renderer during vertical sync. I've nearly managed to solve this problem with the implementation of another filter that sits just before the renderer in the graph. This filter is controlled by reclock and does some interesting stuff ...

This filter will add some interesting capabilities :
- you will be able to see "on screen" if reclock is doing its work correctly (this filter will shown you on the picture when VSYNC occurs). For people with multi-cards display, you will have the response if reclock is useful to you or not.
- this filter is able to correct the frame presentation/vsync problem.

From initial testing, it is promising, but i have a lot of trouble to make this little filter work with DVD mode. Maybe a specialist of DirectShow could help me, because i don't find many help on newsgroup and/or google. My filter derives from CTransInPlace, and i have problem with format changes that occurs during playback with the MPEG2 decoder and the renderer (VMR7/9 or Overlay mixer). I detect correctly format change in my Transform() function, but i'm not able to propagate them correctly downstream or upstream. For example when the MPEG2 decoder switch from NTSC to PAL, the renderer is not notified, and then display garbled pictures.

Maybe Gabest you could help me there ? I saw you post some help on microsoft directx newsgroups I already spent 1 full day trying to solve that without success.
There is a microsoft page that speak of this here

I also had some new ideas for AC3 which i have to implement ...

Also some other news : the author of ZoomPlayer told me that next beta of ZP will have an audio switcher compatible with reclock. It will solve some problems

So it may be a few weeks until next version

Last edited by ogo; 10th March 2003 at 12:56.
ogo is offline   Reply With Quote
Old 10th March 2003, 12:52   #377  |  Link
ogo
Registered User
 
Join Date: Oct 2001
Posts: 156
Loul>To respond you question Loul. If you want to play movies at the right speed, simply set you monitor refresh rate to a multiple of 24hz (72hz for example), and then when you will play of 23,976 movie, reclock will make it run at 24 fps. If you play a 25fps movie, simply force it to 24fps in the media adaptation tab, on you're done

Ewi>Good idea, i'll try to implement that in next version (something more universal)
ogo is offline   Reply With Quote
Old 10th March 2003, 14:07   #378  |  Link
Chibi Jasmin
Registered User
 
Join Date: Oct 2001
Posts: 800
Quote:
Originally posted by ogo
- you will be able to see "on screen" if reclock is doing its work correctly (this filter will shown you on the picture when VSYNC occurs). For people with multi-cards display, you will have the response if reclock is useful to you or not.
This absolutely rocks! And of course your other ideas are also more than welcome...I love ReClock!
Chibi Jasmin is offline   Reply With Quote
Old 10th March 2003, 14:25   #379  |  Link
gabest
Registered User
 
gabest's Avatar
 
Join Date: Oct 2001
Posts: 1,459
Hm-hm, what should I say about the video filter... I think I have already said it wasn't a good idea The less important prob with it that you are copying the pic +1 time and mpeg2 decoders can't use hw accel on the renderer, the more important is that a video transform filter (forget transinplace, it prooved to be useless in many discussions) is the only filter which has to handle dynamic format changes from both directions, which brings a lot of problems and some of them are _impossible_ to solve because of the nature of dshow filters.

Let's start with the easier one, when the old renderer wants to change between yuv and rgb or wants to change the pitch of the images. After getting a buffer from the renderer and Receive calls your Transform function, the sample will have a new media type attached to it to signal that the format (and also the size of the buffer!) has changed. This can already be a major pain if the upstream filter doesn't offer such a format and you have to color convert it, considering the number of format-format pairs, this seems impossible to handle (don't even try this approach ). So, what can be done then? You can't attach this new media type on the sample requested upstream because you have no control over that allocator. The solution is of course to create and use your own allocator! When the downstream format changes at Transform, skip that frame and notify the upstream allocator to return the next sample with the new media type (format change can often make the decoder show blackness till the next keyframe) and also to recommit its buffers when they are smaller than needed. There is only one problem left, what to do when the renderer wants to switch into a format not available upstream. One would think that simply passing the available types from upstream to downstream in GetMediaType is enough, but it's not! There are cases when a decoder says it will decode to format x and when giving them a sample with media type x attached they just don't accept it. For example avi decompressor likes to offer all commonly used formats and only switch to one of them when the wrapped vfw codec can decompress to it, most older vfw codecs are "rgb-only". Then there is the divx5 decoder, it has some confusing label (extended overlay or something) in its options, but it is simply for disabling anything else than yv12, though it still offers all formats on its output when enumerated. The solution to this prob is to call upstream pin's QueryAccept from your own output's QueryAccept, but some lazy filters or renderers could just attach a new media type on the next sample without asking, rule one: "trust no filters" :P.

Case, number 2. the upstream filter wants to change the format (dvd switching 480/576 lines is the most common case). There is one major problem with this, not all renderer is smart enough to do it... The old gdi/ddraw renderer is completly dumb, can't do anything, overlay mixer is so-so, but I couldn't perform a change with it flawlessly so far, vmr7/9 are the most flexible, unfortunately you can't expect that they will be the renderer all the time... So, the new media type arrives on the input sample and you notice that. If there was a type change in the other direction too, well, then hm, hm-hm, let's just die then :P, if there wasn't we need to request a new sample from downstream which format matches so we can copy the frame on it. There could be several samples checked out and waiting to be rendered (double/tripple buffering is a good idea), so call BeginFlush/EndFlush first on the renderer's input, this will make them released. Next step is to recommit the renderer's alloctor to inform it about our possibly larger image buffer needs. Then call GetBuffer again (the first one was hidden inside the baseclasses' Receive) to get a new sample, copy the pic and attach the new media type. If you are lucky the renderer will accept it and not show garbage on the screen... To make sure it will accept it one could use QueryAccept or DynamicQueryAccept again on the render's input pin, BUT the return codes are varying on a wide range depending on the renderer and some of them will even change the format by just calling QueryAccept! I wish they had found out a better way to do these dynamic format changes, but now it is too late... Oh, I almost forgot, some filters try to call ReceiveConnection with the new type instead of attaching it on the sample, which can fail transparently to you in the baseclasses if you didn't set CBasePin::m_bCanReconnectWhenActive to TRUE. I hope I didn't leave out anything, that's all for now.

p.s. Something completly else, do you happen to use MediaDet from reclock? I've got a few unreleased object because of it, rare but happens. MediaDet is a poor solution, this is making those undeletable avi files in explorer too.
__________________
gabest.org

Last edited by gabest; 10th March 2003 at 14:32.
gabest is offline   Reply With Quote
Old 10th March 2003, 15:22   #380  |  Link
ogo
Registered User
 
Join Date: Oct 2001
Posts: 156
Thanks a lot Gabest for your long and precise response !

I know you did tell me in the past not to add a filter before the renderer, but well i just add to try But i learn the hard way ...

At first i tried a "normal" transform filter, but it was not very pretty because of the buffer copy that take place. I thought an in-place filter does only some copies in rare cases. Am i wrong ?

I'll study your explanations carefully (well i don't understand everything for now). But just to reassure me, provided that my filter don't care at all about video formats, is it possible to make a completely "transparent" filter (like nullip -but working-) ? If not then my filter is useless. It's a pity because when there are no format change it does work great (with AVI files for example) ...

I'm not a specialist at all of directshow, but the more i use it the more it make me think of a big messy beast, full of workarounds, tricks, bugs, etc ... Well something not clean at all. In reclock i have to do horrible things like holding interfaces to other filters to achieve my goals ...
I work on .NET stuff at work. Even if .NET has a lot of bugs in the initial release, at least it's understandable, elegant, and pleasing to work with.

About mediadet, yes i use it. It's the only solution i have found to find the framerate of files (i use IDVDInfo2 for DVD). I don't know any other solution in DirectShow. Would you have any other idea ?

The only pointer release problem i know of is with scheduled events inside the reference clock. It happens sometime. Also Sonic DVD filters seem to fail to release reclock sometimes (maybe because of the reference clock). Maybe it's the same bug.
ogo is offline   Reply With Quote
Reply

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 00:08.


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