Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I'm running Ubuntu 8.04 on my laptop. I have an .avi file that is in PAL format. I want to convert it to NTSC. What is the best way to do this that won't degrade the video quality or size?
There's only 3 ways that I can think of:
1) Compress it vertically, this will lead to distortions on that axis.
2) Crop it, this will lead to a missing chuck at the top and/or bottom.
3) Scale it down and add borders / pad it on the left and right.
Basically what I want to do is convert the .avi file to NTSC so it will play on my stand-alone DVD player. My DVD player can play DiVX files in NTSC, but not PAL.
I thought about using ffmpeg with the following command:
Yes, that will definitely work, but take a look at the output before you burn it. I'm betting it will use strategy #1. If you think it looks fine, burn it. Also, I don't believe that you need a '-o' for the output file so just:
Code:
ffmpeg -i input.avi -target ntsc-dvd output.avi
Last edited by H_TeXMeX_H; 09-10-2008 at 04:06 PM.
Also, you may want to check the specs of your DVD player, it will tell you stuff like what's the maximum video bitrate, audio bitrate, FPS, resolutions, etc. for a divx file. But, I'm betting if you have an divx avi to start with on a PAL DVD and it works, then when you convert it, it will work too. To see more info on the movie you can run:
Code:
ffmpeg -i input.avi
If you want to preserve as much quality as possible you should know about '-pass' option, set it to 1, then 2 and it will improve quality in the final video. If you want to pad the video with borders use '-padleft', '-padright' option. Take a look at the ffmpeg documentation it will tell you more. If you want a GUI try avidemux. Dunno if this will help, but if you find the ffmpeg documentation a bit think, here are some notes I made on how to use it:
Code:
FFMPEG
Global: <option, list>, (units), [default], =description, #see description
Command:
ffmpeg <infile options> -i infile <outfile options> outfile
NOTE: Try to use as few options as possible, only those that are needed, usually
just bitrate, size, codecs.
General:
-formats
-y =overwrite output files
-t <hh:mm:ss.xxx> =duration of transcoded video sequence
-fs # =file size
-ss <hh:mm:ss.xxx> =seek
-target <vcd, svcd, dvd, dv, pal-vcd, ntsc-svcd>
-dframes # =number of frames to record
-scodec <codec> =subtitle force
Video:
1) -b <bitrate> (bps) [200k]
2) -sameq =variable bitrate
-bt # (bps) =bitrate tolerance
-maxrate <bitrate> (bps)
-minrate <bitrate> (bps)
-vcodec <codec>
-r <fps> [25]
-s <wxh> [same as source]
-aspect <4:3, 16:9>
-pass <1, 2> =two pass encoding, for more accurate bitrates, high quality
-passlogfile <file>
-crop<top, bottom, left, right> <size> (pixel)
-pad<top, bottom, left, right> <size> (pixel)
-padcolor (hex) [000000]
-vframes # =number of video frames to record
-vn =video null, disable video
Audio:
-ab <bitrate> (bps) [64k]
-ar <freq> (Hz) [44100]
-acodec <codec>
-aframes # =number of audio frames to record
-an =audio null, disable audio
I tried to convert an avi file to NTSC, but when I burned it to DVD and tried to play it on my stand-alone DVD player it wouldn't play. I'm not sure what I'm doing wrong.
According to my DVD player's manual I must use either the .avi or .divx file extension, which I did.
I used the following command to run the conversion:
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.