FAQ: add an entry for common error when using -profile
authorAnton Khirnov <anton@khirnov.net>
Sun, 25 Dec 2011 12:48:06 +0000 (13:48 +0100)
committerAnton Khirnov <anton@khirnov.net>
Sun, 25 Dec 2011 13:31:13 +0000 (14:31 +0100)
doc/faq.texi

index f3ddbbe..8044200 100644 (file)
@@ -266,6 +266,26 @@ avconv -f u16le -acodec pcm_s16le -ac 2 -ar 44100 -i all.a \
 rm temp[12].[av] all.[av]
 @end example
 
+@section -profile option fails when encoding H.264 video with AAC audio
+
+@command{avconv} prints an error like
+
+@example
+Undefined constant or missing '(' in 'baseline'
+Unable to parse option value "baseline"
+Error setting option profile to value baseline.
+@end example
+
+Short answer: write @option{-profile:v} instead of @option{-profile}.
+
+Long answer: this happens because the @option{-profile} option can apply to both
+video and audio.  Specifically the AAC encoder also defines some profiles, none
+of which are named @var{baseline}.
+
+The solution is to apply the @option{-profile} option to the video stream only
+by using @url{http://libav.org/avconv.html#Stream-specifiers-1, Stream specifiers}.
+Appending @code{:v} to it will do exactly that.
+
 @chapter Development
 
 @section Are there examples illustrating how to use the Libav libraries, particularly libavcodec and libavformat?