[FFmpeg-user] novice, in need of advice regarding format conversion

Stefano Sabatini stefasab at gmail.com
Tue Jul 17 10:09:49 CEST 2012

On date Monday 2012-07-16 16:27:49 -0700, Ronald F. Guilmette encoded:
> Greetings,
> I have a number (20+) of non-encrypted DVDs that I would like to convert to
> something (anything) that my recently acquired LG BD670 Blu-Ray player will
> play from its USB port and/or via its network connection (via DLNA).
> Basically, I'd like to get rid of all of these DVD disks and put all of
> the video+audio content that they contain onto a large external USB drive,
> which I will then hook up to my LG BD670.  (Actually, due to fortunate
> circumstance, I already have an external 200GB USB drive that will work
> quite nicely.)  This will be nice, because then I won't have to be
> shuffling physical disks around and inserting/removing them from the
> BD670 all of the time.  I can just select what I want to watch from
> the content on the USB drive.
> The actual problem here is twofold.
> First, there are only a limited number of formats (codecs?) that the LG
> BD670 will allow to be played via either USB or network (DLNA), and these
> specifically DO NOT include .VOB files.  (And I have verified that indeed,
> the BD670 refuses to play .VOB files via the USB port.)
> Second, and more importantly, I don't know what the hell I'm doing.  What
> I know about codecs and container formats could fit into a thimble.  I am
> also almost entirely ignorant about ffmpeg (the command line tool) and its
> multitude of options.  This is really the bigger problem.  I'm hoping that
> someone here will take pity on me a send me some enlightenment.
> First however, allow me to share two critical pages of documentation from
> the LG BD670 manual:
>      http://www.tristatelogic.com/misc/pages-10-11.pdf

> As you can see in the second column of the first table on the first of these
> two pages, it is alleged that the BD670 can play files (from USB or network/
> DLNA) that make use of the following audio & video codecs:
> 	Video:
> 		DIVX3.xx, DIVX4.xx, DIVX5.xx, DIVX6.xx
> 			(``standard playback only'')
> 		XVID
> 		MPEG1 SS
> 		H.264/MPEG-4 AVC
> 		MPEG2 PS
> 		MPEG2 TS
> 		VC-1 SM (WMV3)
> 	Audio:
> 		Dolby Digital
> 		DTS
> 		MP3
> 		WMA
> 		AAC
> 		AC3
> Separately, the first column of the first table indicates support for the
> following filename extensions:  .avi, .divx, .mpg, .mpeg, .mkv, .mp4,
> .asf, .wmv, and via USB only, .m4v files.
> All of this stuff is pretty much greek to me.  I really know little or
> nothing about these codecs, containers, and file formats.  I don't know
> which is best for what I want to do, or why, and more importantly, I know
> nothing at all about the plethora of ffmpeg command line options or their
> various effects on the conversions I will ultimately perform.  So I could
> really use some help & guidance.... like a lot of it.
> Given that I don't really care if I have to leave my main machine crunching
> all night just to convert (with maximum quality) each one of my input DVDs,
> I need to know:
>    1)  To which of the BD670-supported formats (USB/DLNA) should I convert
>        my DVDs?

Do ffmpeg -codecs and ffmpeg -formats for getting an idea of the
formats supported by ffmpeg, also keep in mind the difference between
the audio/video elementary stream format, which is encoded/decoded by
a CODEC, and the container format, which usually corresponds to the
file suffix. In general a container format only supports a limited
number of elementary stream formats (codecs), ffmpeg will tell you in
the case, ffprobe -show_streams -show_format will show you more
detailed information regarding the format/streams of an input.

If you want something pretty portable, i suggest MPEG2 or MPEG4 part 2
(which is the equivalent of "divx") or H.264 for video, MP3 or AAC for
audio, AVI, MP4 or MKV for the container (format) should be fine (mkv
is less "portable" - meaning that some players may not support it, but
definitively nice for the supported features).

The lowest common denominator for players will be the
mpeg2video+MP3+avi combination.
>    2)  What are all of the ffmpeg command line options I should use for each
>        conversion?  (Perhaps it goes without saying, but I would like the
>        quality of the output video+audio to be as good as, or nearly as good
>        as what is on the original DVDs.)

Example command:

ffmpeg -i INPUT -vcodec mpeg2video -acodec libmp3lame out.avi

then start tweaking from it.

> Regarding question (1), I should perhaps clarify that with regarsd to this
> little project, I have absolutely no biases or religious predispositions.
> In general, I prefer ``open'' (as in ``open standards'' and ``open source'')
> over ``closed'', but for this project, whaever works best is all that I
> really care about.  I really don't care which of the BD670 supported formats
> I convert to, as long as it works and the quality is good.  (I will retain
> the original DVDs, so if in future I decide to re-convert them to some
> different/better format, I can always do that later on.  For now, whatever
> works is good enough.)
> Help in the form of suggested ffmpeg command lines would be much appreciated.

More than this, I suggest to give a read to the manual page or other
resources on the Internet, I don't feel like I want to rewrite the
manual here.

> Before closing, I'd just like to also mention two more desires... desires
> which may or may not be feasible as part of the conversions I plan to do.
> 1) It would be Extraordinarily Nice if the converted files contained chapter
> markers at the same places as the original DVDs... you know, so that I can
> skip around among chapters using the BD670 remote while watching the converted
> files.

IIRC MKV (Matroska) has support for chapters, you may read more about

> 2) It would be Extravagantly Terrific if the origianl menu system of the
> original DVDs could be preserved in the conversions also... but I am guessing
> that this is almost certainly asking for too much.

This is impossible, a multimedia file is not a DVD, so the navigation
info is definitively lost (you can still keep more than one audio
tracks in a file - e.g. one for each language), and switch back and
forth during playback.

ffmpeg-user random tip #2
The -y option will force the overwrite of the output, without to prompt you
for your confirmation. Example:
ffmpeg -i movie.avi -y movie.mp4

More information about the ffmpeg-user mailing list