Log in

View Full Version : Resize 1080p h264 to 720p h264 ???


rfisher1968
2nd October 2007, 13:28
I have tried to resize a 1080p H264 video with no luck.

First with graphedit select the Haali Media splitter filter and select the video.

Then i tried to use WMVideo Decoder DMO which gives me a error that they cannot agree on a connection.

I then render the pin which gives me Sonic Cinemaster VideoDecoder 4.2. I delete the video rendered. Then save the graph file.

Then by hand create the Avisynth file.

DirectShowSource("bog.grf", framecount=134037, audio=false)
AssumeFPS(23.976)
spline36resize(1280,720)
ConvertToYV12()

Then using Megui i select the avs file and HD DVD profile and start encoding.

What i get is a video that can not be played by anything.

What am i doing wrong?

Thank You in advance

rfisher1968
2nd October 2007, 20:43
Does anybody have any ideas?

Guest
2nd October 2007, 21:14
Don't bump threads like that so soon or you'll get a rule 12 strike.

Does the AVS script play OK when just previewed in VirtualDub?

Demi9OD
3rd October 2007, 02:10
You could try FFMpegSource instead of DirectShowSource on the original file.

rfisher1968
3rd October 2007, 20:57
Don't bump threads like that so soon or you'll get a rule 12 strike.

Does the AVS script play OK when just previewed in VirtualDub?

It does play in VirtualDub.

rfisher1968
3rd October 2007, 20:57
You could try FFMpegSource instead of DirectShowSource on the original file.

Everything tells me "there is no function named FFMpegSource"

Dark Shikari
3rd October 2007, 21:02
Everything tells me "there is no function named FFMpegSource"You need to download the plugin.

rfisher1968
4th October 2007, 15:49
You need to download the plugin.

Can you post an example? I've been trying to use FFMpegSource with no luck.

Or a guide that would be any help

foxyshadis
4th October 2007, 21:49
ffmpegsource is a bit of a beast: First off, all of its helper dlls (everything but ffmpegsource.dll) has to go in a folder on the path, the simplest way to get them there is the windows or system32 folder, or the host program's folder (ie, virtualdub's, not avisynth's).

Then you have to load the dll manually with Load_StdCall_Plugin(). (You can make an avsi to do this.) After that you should be able to use it.

It can be a bit of a pain to get it set up the first time and the docs really need to be explicit about that, yes.

Myrsloik
5th October 2007, 01:15
There's a very good reason the manual isn't explicit about it. IT ISN'T THAT WAY AT ALL.

FFmpegSource is a normal avisynth plugin with a pile of annoying dll dependencies. Another well kept secret is that it's 100% safe to put in avisynth's autoloading dir and you won't even need to put it in system32 like the weird automkv people seem to be recommending everywhere.

You might still need an avsi file for it though.

foxyshadis
5th October 2007, 01:33
Oops, serves me right for getting it confused with yadif, for the stdcall part.

The dlls will only work if the avisynth folder is on the path, which it isn't unless someone adds it themselves. That's why they recommend that. (Hosts won't set the current folder, and avisynth doesn't though IanB mentioned it might in the future, or maybe that was just me asking him.) Not just theoretical, all I have to do is swap avcodec-51.dll to the plugin folder and nothing works. If you dynamically link them in the future then sure, it could work there.

Myrsloik
5th October 2007, 01:50
I got it working with this simple avsi file:

loadplugin("ffmpegsource.dll")

Don't ask me why it loads the avsi before the actual dll when autoloading stuff or why the working dir is right in avsi files.