Hi,
I have a Treo 650 (Palm OS 5) and am in the process of converting a number of video files to play on it using MMPlayer. After trying various settings, I have determined that the limitiations on this device have more to do with the frame rate than the bitrate.
The screen on the 650 is 320x320, so I am resizing 4:3 material to 320x240 and 16:9 material to 320x180. I can play back 320x180 pretty well at 24 fps, but 320x240 plays much better at 20 fps.
I have tried the "decimate by 2" setting in VD, but this gives a framerate of 12-15 fps, depending on my source. I was not happy with the results. I have also tried specifying a framerate of 20 fps in VD, but playback was kind of jerky, especially on scenes where the camera pans across a landscape (like at the beginning of nearly every episode of CSI).
Given all of this, I have started testing with AviSynth and the ConvertFPS function. This is where I need some help.
I have tried a few AVI files using the follow script:
Code:AviSource("i:\test.avi") # Source is 640x480, 23.98 FPS ConvertToYUY2() # This is required by ConvertFPS ConvertFPS(20) ConvertToRGB # Is this really necessary? ReduceBy2 # My source file is 640x480, # so this gets me to 320x240 for the Treo
Does this look correct? It seems to be working but I want to ensure I am doing this the best possible way.
My second issue is with some captured MPEG2 files that I also want to convert for the Treo. These were captured using a Hauppauge PVR 250 from a DirecTV (S-Video) source. Most of them are 720x480 and are interlaced, according to DGIndex. Here is a rough draft for my script:
Do I really need the Bob, Weave, and SeparateFields commands? Thanks for any advice. I am pretty new to AviSynth.Code:DirectShowSource("NTSC_clip.mpg") # Clip is 720x480, 29.97 FPS Bob(height=480) # Separate fields and interpolate them # to full height. BicubicResize(640,480) # In other conversions, I read it was better # to do this followed by the ReduceBy2 below # rather than resize in one step. True? ConvertFPS(40) # I want the end result to be 20 FPS # for the Treo SeparateFields.SelectEvery(4,0,3) # Undo Bob, even field first. # Would SelectEvery(4,1,2) for odd fields # be better? Weave # Finish undoing Bob ReduceBy2 # I want the result to be 320x240
+ Reply to Thread
Results 1 to 5 of 5
-
-
The first script looks OK to me.
The second script can be improved.
Run mpeg file from PVR250 (I assume it is an mpeg2, right?) through DGIndex and save d2v project. Then change in the script Directshow source(bla-bla.mpg) with Mpeg2source(bla-bla.d2v)
With this script you try to keep the interlace input as interlaced output. The problem is that Reduce by 2 will throw away one of the fields - then all the attempt to keep interlacing is void. If you want really to keep it interlaced you should keep also the full vertical resolution. As it is not suitable for your device for playback then it is better (maybe! not sure) to separate fields and selecteven or odd. Then resize to 320x240.
Should look something like
Code:Mpeg2source("NTSC_clip.d2v") # Clip is 720x480, 29.97 FPS SeparateFields() # Separate fields Selecteven() # Here you can Selectodd() also BicubicResize(320,240) #It is beter to resize so here as the clip is already x240 ConvertFPS(20) # I want the end result to be 20 FPS # for the Treo
-
Thanks for the reply. I'll try your script later.
I know the original source is interlaced, since I am using S-video to connect to my capture card. The card, a Hauppauge PVR-250 does hardware MPEG-2 encoding. I can set my encoding parameters to be interlaced or not interlaced, but this is where I am getting lost.
The machine doing the capturing is an HTPC in my living room connected directly to my SDTV using the S-video out on my Radeon video card. This is the primary job for this machine.
Should I allow the encoder to de-interlace at capture time? Most playback will be interlaced anyway, since this will be on an SDTV, so I am not sure what the pros/cons are. -
This is not hint that the source is interlaced (I mean realy interlaced NTSC video) or telecined. You can check this loading the source in VDubMod and advanced frame by frame. If you have patern of 3 progressive frames followed by 2 interlaced then it is telecined 23.976 to 29.97 (3:2 pulldown, eh). If every frame show interlacing artefacts (combs) then it is true interlaced 29.97. Now if it is telecined with Decomb filter for avisynth you can get back 23.976 progressive frames - and directly resize them. If it is true interlaced - simpy use separatefield().selecteven() and resize.
I have the same card and use it quite often but I am in pal area - so here is not so complicatedBut from my experience it is not bad to use also some denoising routines in avisynth for the captures. Very promising is LRemovedust.avsi function. You may want to search at doom9 for it. Think that if the source is progressive even if the card set to interlaced encoding the both fields of the frame will match and there are no artefacts visible.
Deinterlacing especially when is not proper done will lead to blur, lack of some details. Anyway, 320x240 will lead also to lack of details. -
Originally Posted by Abond
I look at two different captures, both interlaced, and both recorded from DirecTV using identical Hauppauge PVR 250 settings. One of them, a commercial from the Superbowl, was telecined. It was restored perfectly using Telecide(). The other capture, a clip from a live basketball game, was pure interlaced.
I also found that if I used DirectShowSource the FPS was wrong (30.00 vs. 29.97) and that Telecide() would not work. Using DGIndex and mpeg2source everything was fine.
Similar Threads
-
Best framerate conversion? (eg: 23.97 to 30 fps to avoid judder)
By ionone in forum Video ConversionReplies: 16Last Post: 12th Mar 2014, 07:56 -
[C++] My custom FFmpeg wrapper for batch conversion between formats
By AlecTaylor in forum Video ConversionReplies: 0Last Post: 7th Jun 2011, 14:43 -
Framerate Conversion
By rackball in forum Video ConversionReplies: 10Last Post: 11th Aug 2008, 04:04 -
Changing the framerate during conversion
By 2nickelstripper in forum Video ConversionReplies: 2Last Post: 7th Dec 2007, 07:46 -
Audio framerate conversion?
By pYShTr in forum AudioReplies: 2Last Post: 28th Jun 2007, 11:05