doc/indevs: Rework and update documentation of AVFoundation device.
authorThilo Borgmann <thilo.borgmann@mail.de>
Thu, 13 Nov 2014 16:25:02 +0000 (17:25 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 14 Nov 2014 17:28:12 +0000 (18:28 +0100)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
doc/indevs.texi

index 18fc5a2..5d2a308 100644 (file)
@@ -58,36 +58,94 @@ AVFoundation input device.
 AVFoundation is the currently recommended framework by Apple for streamgrabbing on OSX >= 10.7 as well as on iOS.
 The older QTKit framework has been marked deprecated since OSX version 10.7.
 
-The filename passed as input is parsed to contain two input streams seperated by ":".
-The first entry selects the video input while the latter selects the audio input @option{"<video>:<audio>"}.
-Each stream can either be specified by the device name or the index.
-The device index can also be given by using @option{-video_device_index <index>} and/or @option{-audio_device_index <index>}, respectively.
-A given device index will override any given device name.
-If the desired device consists of numbers only, use the device index option to identify it.
-The default device will be chosen if an empty string  or the device name @code{default} is given.
-The available devices can be enumerated by using @option{-list_devices true}.
-The pixel format can be set using @option{-pixel_format <format>}.
-Available formats:
+The input filename has to be given in the following syntax:
+@example
+-i "[[VIDEO]:[AUDIO]]"
+@end example
+The first entry selects the video input while the latter selects the audio input.
+The stream has to be specified by the device name or the device index as shown by the device list.
+Alternatively, the video and/or audio input device can be chosen by index using the
+@option{
+    -video_device_index <INDEX>
+}
+and/or
+@option{
+    -audio_device_index <INDEX>
+}
+, overriding any
+device name or index given in the input filename.
+
+All available devices can be enumerated by using @option{-list_devices true}, listing
+all device names and corresponding indices.
+
+There are two device name aliases:
+@table @code
+
+@item default
+Select the AVFoundation default device of the corresponding type.
+
+@item none
+Do not record the corresponding media type.
+This is equivalent to specifiying an empty device name or index.
+
+@end table
+
+@subsection Options
+
+AVFoundation supports the following options:
+
+@table @option
+
+@item -list_devices <TRUE|FALSE>
+If set to true, a list of all available input devices is given showing all
+device names and indices.
+
+@item -video_device_index <INDEX>
+Specify the video device by its index. Overrides anything given in the input filename.
+
+@item -audio_device_index <INDEX>
+Specify the audio device by its index. Overrides anything given in the input filename.
+
+@item -pixel_format <FORMAT>
+Request the video device to use a specific pixel format.
+If the specified format is not supported, a list of available formats is given
+und the first one in this list is used instead. Available pixel formats are:
 @code{monob, rgb555be, rgb555le, rgb565be, rgb565le, rgb24, bgr24, 0rgb, bgr0, 0bgr, rgb0,
  bgr48be, uyvy422, yuva444p, yuva444p16le, yuv444p, yuv422p16, yuv422p10, yuv444p10,
  yuv420p, nv12, yuyv422, gray}
 
+@end table
+
+@subsection Examples
+
+@itemize
+
+@item
+Print the list of AVFoundation supported devices and exit:
 @example
-ffmpeg -f avfoundation -i "0:0" out.mpg
+$ ffmpeg -f avfoundation -list_devices true -i ""
 @end example
 
+@item
+Record video from video device 0 and audio from audio device 0 into out.avi:
 @example
-ffmpeg -f avfoundation -video_device_index 0 -i ":0" out.mpg
+$ ffmpeg -f avfoundation -i "0:0" out.avi
 @end example
 
+@item
+Record video from video device 2 and audio from audio device 1 into out.avi:
 @example
-ffmpeg -f avfoundation -pixel_format bgr0 -i "default:default" out.mpg
+$ ffmpeg -f avfoundation -video_device_index 2 -i ":1" out.avi
 @end example
 
+@item
+Record video from the system default video device using the pixel format bgr0 and do not record any audio into out.avi:
 @example
-ffmpeg -f avfoundation -list_devices true -i ""
+$ ffmpeg -f avfoundation -pixel_format bgr0 -i "default:none" out.avi
 @end example
 
+@end itemize
+
 @section bktr
 
 BSD video input device.