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 > Video Encoding > New and alternative video codecs

Reply
 
Thread Tools Search this Thread Display Modes
Old 17th May 2007, 15:36   #1241  |  Link
haruhiko_yamagata
Registered User
 
Join Date: Feb 2006
Location: Japan
Posts: 1,560
Quote:
Originally Posted by zambelli View Post
Decoders:
- disable MP3
- disable MP1, MP2

My reasoning for disabling default MPEG audio decoding support is that those codecs are already supported on Windows without Ffdshow and I don't think Ffdshow should ever be changing the default codec assignment unless the user specifically choses to do so. Ffdshow should augment the existing codec ecosystem but not change it. I think this is the "right" thing to do not for political reasons, but for legacy/compatibility reasons.
I agree. What other's opinion?
Quote:
Speaker setup:
* choose "disable mixer" or add the "same as input" option
No.
__________________
[ Download ffdshow | Wiki ]
haruhiko_yamagata is offline   Reply With Quote
Old 17th May 2007, 15:55   #1242  |  Link
ExtraEye
Registered User
 
ExtraEye's Avatar
 
Join Date: Nov 2004
Posts: 166
i like decoding mp3 with ffdshow. Isn't it better to decode it that way?
__________________
Hardware: Core 2 Duo E8400 3GHz, 2048 Ram, Geforce 9800GT.
ExtraEye is offline   Reply With Quote
Old 17th May 2007, 16:03   #1243  |  Link
fastplayer
Registered User
 
Join Date: Nov 2006
Posts: 799
Quote:
Originally Posted by haruhiko_yamagata View Post
What other's opinion?
I agree about zambelli's MP1/2/3 and tray icon suggestions but I don't understand why the mixer should be disabled.
fastplayer is offline   Reply With Quote
Old 17th May 2007, 16:19   #1244  |  Link
vlada
Registered User
 
Join Date: Apr 2003
Location: Czech Republic
Posts: 752
I don't agree with disabling MPEG-1 audio. For example with ffdshow I can use volume normalization. I also know many people who use ffdhsow to upmix stereo MP3 to 5.1. Or are there any problems with the ffdshow decoder why it should be disabled?

One of the strong points of ffdshow is the fact, that it usually takes over any other decoders installed in system. So it can very often fix problems caused by various codecpacks.

Edit: Maybe instead of it, we might want to create some easy to understand profiles during installation (with the option to choose details):

1) Enable only basic formats
2) Enable all fully supported formats (including VfW)
3) Enable everything

Last edited by vlada; 17th May 2007 at 16:23.
vlada is offline   Reply With Quote
Old 17th May 2007, 21:58   #1245  |  Link
zambelli
Doom9ing since 2001
 
zambelli's Avatar
 
Join Date: Oct 2001
Location: Seattle, WA, USA
Posts: 2,002
Quote:
Originally Posted by ExtraEye View Post
i like decoding mp3 with ffdshow. Isn't it better to decode it that way?
My suggestion was more based on backwards compatibility and legacy support than on quality. I'm not sure how much quality gain there is in decoding MP3 with Ffdshow versus the default Fraunhofer decoder anyway.

Quote:
Originally Posted by vlada
I don't agree with disabling MPEG-1 audio. For example with ffdshow I can use volume normalization. I also know many people who use ffdhsow to upmix stereo MP3 to 5.1. Or are there any problems with the ffdshow decoder why it should be disabled?
We're talking about defaults here. There'd be nothing stopping users who want to upmix MP3 to select MP3 during install.

Quote:
One of the strong points of ffdshow is the fact, that it usually takes over any other decoders installed in system. So it can very often fix problems caused by various codecpacks.
It shouldn't be Ffdshow's role to solve problems introduced by bad codec packs. That'd be like sweeping the problem under the rug anyway.

My approach for installing Ffdshow has always been to let it handle only codecs which aren't already handled by other codecs on the system - unless there's a very good reason to do so. I think the installer's goal should be to fill the gaps in codec coverage, not try to patch existing codecs. Idealy there'd be a detection method in the installer that checks for present codecs - but at the least, I think Ffdshow should not replace decoders that are known to exist on every Windows OS (MP2/MP3, MPEG-1, WMA, WMV, etc.).
zambelli is offline   Reply With Quote
Old 18th May 2007, 01:42   #1246  |  Link
vlada
Registered User
 
Join Date: Apr 2003
Location: Czech Republic
Posts: 752
@zambelli> But AFAIK currently ffdshow works right the opposite way. It has very high merit a replaces all existing filters (why everybody calls them codecs?). I think your request would be much better fulfilled if you just decreased ffdshow's merit and enabled all formats. Then ffdshow would be used only if there are no other filters installed.

My target is always to let ffdshow handle as much formats (why everybody calls them codecs?) as it can, because I want to use the same postprocessing filters for all formats (subtitles, volume normalization, downmix). I know I could just use ffdhow as RAW filter, but why not letting it do the decoding part too. I'm afraid we'll probably won't find a common attitude on this matter.

That's why I suggest to prepare some presets so users can choose what they want. Informed people like you and me have no problems to select whatever they want. So I think we shouldn't care about what we need, but what setting will be the best for a common user. And unfortunately many users have their system damaged by different codecpacks. I already saved many people by telling them just to install ffdshow with default setting, if they had video playback problems and hoped to solve it by installing more and more codecpacks I agree it's sweeping the problem under the rug, but have you ever tried to explain to a common user how to work with Graphedit, identify problematic filters and disable them?

The way ffdshow works now gains a lot of success because it solves many video playback issues people have. But I think it's up to the developers to decide which way they want to go. There are 2 extremes: Associate everything to ffdshow (my wish) or associate only formats not yet supported on the system (your wish). Maybe something between would be the right choice.
vlada is offline   Reply With Quote
Old 18th May 2007, 03:40   #1247  |  Link
squid_80
Registered User
 
Join Date: Dec 2004
Location: Melbourne, AU
Posts: 1,963
Quote:
Originally Posted by zambelli View Post
but at the least, I think Ffdshow should not replace decoders that are known to exist on every Windows OS (MP2/MP3, MPEG-1, WMA, WMV, etc.).
Windows x64 doesn't have a 64-bit mp3 codec, and I've never known any windows to come with an acm mp2 codec.
squid_80 is offline   Reply With Quote
Old 18th May 2007, 10:37   #1248  |  Link
haruhiko_yamagata
Registered User
 
Join Date: Feb 2006
Location: Japan
Posts: 1,560
@Leak
Thank you for your great work. It is getting more stable and I can report only one this meaningless issue.
Code:
FadeIn(30)
With this script and your latest build, when I seek, fade in occurs every time. Without your patch, fade in occurs only on start up (after stop). Which is normal?

Well, my sample is meaningless test. But compatible behavior with original ffdshow is more likable for the case that buffering is not necessary.

Here, I have a feature request.
Please add a new check box "Enable buffering", off by default. Buffers back/ahead can be set 10/10 or something by default.

With the check box off, "Buffers back/ahead", "Use Current", "3:2 Pulldown" is grayed out. The behavior can be as compatible as possible unless the original one is too buggy.

It's good for not only compatibility but also user's convenience.
__________________
[ Download ffdshow | Wiki ]
haruhiko_yamagata is offline   Reply With Quote
Old 18th May 2007, 11:26   #1249  |  Link
Leak
ffdshow/AviSynth wrangler
 
Leak's Avatar
 
Join Date: Feb 2003
Location: Austria
Posts: 2,441
Quote:
Originally Posted by haruhiko_yamagata View Post
@Leak
Thank you for your great work. It is getting more stable and I can report only one this meaningless issue.
Thanks!

Quote:
Code:
FadeIn(30)
With this script and your latest build, when I seek, fade in occurs every time. Without your patch, fade in occurs only on start up (after stop). Which is normal?
There's a problem with FadeIn, because it makes the output clip one frame longer than the input clip.

Since every time my filter skips ahead it adds 1000 to the frame number and rounds it up according to the input/output frame ratio - this works fine if the ratio is 5:4 with IVTC, or 1:2 with bobbing, but with a ratio of 10810800:10810801 the value to round to gets waaay too big and thus the current frame number is reset to 0.

If you use FadeIn0, which doesn't add an extra frame at the very end of the clip (which you probably won't ever reach anyway), you won't get that problem, but you won't get the fade either (unless it's several thousand frames long), since all the resizing/re-connecting/re-you-name-it at the beginning of playback will make the filter seek ahead several thousand frames.

I'm afraid there's not much I can do... if I don't seek ahead, you'll be getting green/double/wrong frames again, and if I go back to reseting AviSynth, people will complain about seeking/starting being slow, and the FadeIn is going to happen after every seek.

Then again, using FadeIn doesn't make much sense, and FadeOut won't work anyway - it's best to only use filters in ffdshow that will do their magic on all frames of the video, and not just some fixed range of a clip that is a moving target.

It does work when buffering is turned off, though, as seeking ahead only seeks ahead one frame then.

Quote:
Well, my sample is meaningless test. But compatible behavior with original ffdshow is more likable for the case that buffering is not necessary.
It already is compatible in that regard when you use FadeIn0 - I guess I can just disable the rounding part as well when buffering is off since it doesn't really make much sense then, as the only adding and removing of frames that will work reliably then is either multiplying or dividing the input number of frames by an integer, i.e. halving or doubling the number of frames.

I was planning to add some code to figure out a "better" ratio if it's just off by a few frames (in a range of, say, -15 to +15 frames, by just trying them out), as any difference of a few frames with a clip that's 10 million frames long can be compensated by buffering an extra frame or two ahead at most.

Quote:
Here, I have a feature request.
Please add a new check box "Enable buffering", off by default. Buffers back/ahead can be set 10/10 or something by default.

With the check box off, "Buffers back/ahead", "Use Current", "3:2 Pulldown" is grayed out. The behavior can be as compatible as possible unless the original one is too buggy.

It's good for not only compatibility but also user's convenience.
Sure, why not?

Would a checkbox before "Buffers back/ahead" be sufficient? I really don't want tear the dialog design apart another time, which would be neccessary to fit another checkbox with label.

I won't disable the pulldown options though, as they're independent from buffering - only "Apply pulldown" adds frames, and that's just using the current and the previous frame, so there's no lag introduced either since it doesn't buffer ahead.

The pulldown part would even make sense as a filter on it's own - if you've got a TV connected to the PC you can make sure it gets it's 30 interlaced frames per second that way instead of leaving that up to the renderer. And smoothing the timestamps just averages the frame duration to get the oscillating between two frame lenghts out, but won't do anything else.

I've also found that leaving the script empty produces no image at all; most probably because an empty script in the config is used to signal the filter to reset itself - that should probably be fixed...

Also, it would probably be nice to change the FPS value in the output video headers as well instead of just mangling the timestamps - do you perhaps know where that information is stored?
__________________
now playing: [artist] - [track] ([album])

Last edited by Leak; 18th May 2007 at 11:39.
Leak is offline   Reply With Quote
Old 18th May 2007, 12:53   #1250  |  Link
haruhiko_yamagata
Registered User
 
Join Date: Feb 2006
Location: Japan
Posts: 1,560
Quote:
Originally Posted by Leak View Post
There's a problem with FadeIn, because it makes the output clip one frame longer than the input clip.
Thank you for explanation.
Quote:
Sure, why not?

Quote:
Also, it would probably be nice to change the FPS value in the output video headers as well instead of just mangling the timestamps - do you perhaps know where that information is stored?
It's in VIDEOINFOHEADER / VIDEOINFOHEADER2. They are used on connection. It should be hard to calculate the value before decoding begins. I think it's better to leave it as it is.
__________________
[ Download ffdshow | Wiki ]
haruhiko_yamagata is offline   Reply With Quote
Old 18th May 2007, 14:32   #1251  |  Link
vlada
Registered User
 
Join Date: Apr 2003
Location: Czech Republic
Posts: 752
@squid_80> ffdshow supports ACM codecs? How can I enable/disable them?
vlada is offline   Reply With Quote
Old 18th May 2007, 14:33   #1252  |  Link
clsid
*****
 
Join Date: Feb 2005
Posts: 5,643
Quote:
Originally Posted by zambelli View Post
My suggestion was more based on backwards compatibility and legacy support than on quality.
What kind of compatibility issues are there? A whitelist was recently added to ffdshow to prevent the filter from being used by (possibly) incompatible applications/games.
__________________
MPC-HC 2.1.7.2
clsid is offline   Reply With Quote
Old 19th May 2007, 11:53   #1253  |  Link
Vampik
Registered User
 
Join Date: May 2006
Posts: 4
It seems that libavcodec encoding is totally broken since rev.1155. drevil_xxl said mpeg4 doesn't work, but really any other format doesn't work too. Error message is the same, tested on Athlon 64 SSE3.
Vampik is offline   Reply With Quote
Old 19th May 2007, 18:30   #1254  |  Link
clsid
*****
 
Join Date: Feb 2005
Posts: 5,643
I am reverting one of the ffmpeg patches. That should hopefully fix the encoding crash. New build will be online asap.
__________________
MPC-HC 2.1.7.2
clsid is offline   Reply With Quote
Old 19th May 2007, 19:33   #1255  |  Link
Vampik
Registered User
 
Join Date: May 2006
Posts: 4
It doesn't work. I've just compiled libavcodec.dll, rev.1183, gcc 4.0.4 - the same crash.
Vampik is offline   Reply With Quote
Old 19th May 2007, 22:35   #1256  |  Link
Isochroma
Registered User
 
Join Date: Mar 2005
Posts: 468
I use ffdshow for decoing MPEG audio, and would not use any version without such support. It's really important to me, because it gives extended realtime bitrate info while playing, among other things.
Isochroma is offline   Reply With Quote
Old 19th May 2007, 22:58   #1257  |  Link
Leak
ffdshow/AviSynth wrangler
 
Leak's Avatar
 
Join Date: Feb 2003
Location: Austria
Posts: 2,441
Quote:
Originally Posted by Isochroma View Post
I use ffdshow for decoing MPEG audio, and would not use any version without such support. It's really important to me, because it gives extended realtime bitrate info while playing, among other things.
Errr... could it be that you missed the part where the whole discussion was about what codecs to enable *by default* (i.e. you still being able to activate any and all of them via ffdshow's configuration window if you so choose) and not about dropping support for any of them?

Just saying...

np: David Sylvian - Jean The Birdman (Everything And Nothing)
__________________
now playing: [artist] - [track] ([album])
Leak is offline   Reply With Quote
Old 20th May 2007, 02:35   #1258  |  Link
Inventive Software
Turkey Machine
 
Join Date: Jan 2005
Location: Lowestoft, UK (but visit lots of places with bribes [beer])
Posts: 1,953
Suggestion for the installer: have a sub-option on the codecs selection page, so the user can choose to use WMV or libavcodec, for WMV7, WMV8, WMV9, WVC1, *if* Microsoft codecs are installed. This is also assuming it's relatively easy to check whether the codecs are installed.....
__________________
On Discworld it is clearly recognized that million-to-one chances happen 9 times out of 10. If the hero did not overcome huge odds, what would be the point? Terry Pratchett - The Science Of Discworld
Inventive Software is offline   Reply With Quote
Old 20th May 2007, 13:02   #1259  |  Link
Dr Pizza
Registered User
 
Dr Pizza's Avatar
 
Join Date: Feb 2007
Posts: 65
The recent change (May 10th) for processor feature detection is making me sad.

The asm functions (check_cpu_features etc.) are declared in an extern "C" block in a .cpp file. This is making VC++ presume that their names should be completely undecorated.

However, cpuid64.asm is built with PREFIX defined, and with PREFIX defined, functions gain a leading underscore.

In other words, cpuid64.obj exports a function _check_cpu_features, but the linker is looking for check_cpu_features.

Easiest thing would be to remove the PREFIX define.
Dr Pizza is offline   Reply With Quote
Old 20th May 2007, 13:40   #1260  |  Link
clsid
*****
 
Join Date: Feb 2005
Posts: 5,643
Edit: you should have SVN access now. So you can commit fixes.
__________________
MPC-HC 2.1.7.2

Last edited by clsid; 20th May 2007 at 13:46.
clsid is offline   Reply With Quote
Reply

Tags
ffdshow, ffdshow tryouts, ffdshow-mt, ffplay, icl

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 03:14.


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