[FFmpeg-trac] #4143(avfilter:open): Support Core Image of MacOSX

FFmpeg trac at avcodec.org
Sun Mar 13 12:39:04 CET 2016


#4143: Support Core Image of MacOSX
-------------------------------------+-------------------------------------
             Reporter:  rusghon      |                    Owner:
                 Type:  enhancement  |  thilo.borgmann
             Priority:  wish         |                   Status:  open
              Version:  git-master   |                Component:  avfilter
             Keywords:  osx          |               Resolution:
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------

Comment (by ponpon):

 thank you for your pointing out.
 the result is the same. the filter isn't tried still.
 {{{
 ./configure --prefix=${TARGET} --cc=clang-mp-3.7 --cxx=clang++-mp-3.7 &&
 make -j 8

 CC      libavutil/xtea.o
 HTML    doc/ffmpeg.html
 HTML    doc/ffplay.html
 HTML    doc/ffprobe.html
 HTML    doc/ffserver.html
 HTML    doc/ffmpeg-all.html
 HTML    doc/ffplay-all.html
 HTML    doc/ffprobe-all.html
 HTML    doc/ffserver-all.html
 HTML    doc/ffmpeg-filters.html
 HTML    doc/libswscale.html
 HTML    doc/libswresample.html
 HTML    doc/libavcodec.html
 HTML    doc/libavformat.html
 HTML    doc/libavdevice.html
 HTML    doc/libavfilter.html
 HTML    doc/developer.html
 HTML    doc/faq.html
 HTML    doc/fate.html
 doc/filters.texi:4958: misplaced {
 doc/filters.texi:4958: misplaced }
 doc/filters.texi:4969: @option expected braces
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:5021: unknown command `inputCorrectionLevel'
 make: *** [doc/ffmpeg-filters.html] Error 1
 make: *** Waiting for unfinished jobs....
 HTML    doc/general.html
 doc/filters.texi:4958: misplaced {
 doc/filters.texi:4958: misplaced }
 doc/filters.texi:4969: @option expected braces
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:5021: unknown command `inputCorrectionLevel'
 make: *** [doc/ffplay-all.html] Error 1
 doc/filters.texi:4958: misplaced {
 doc/filters.texi:4958: misplaced }
 doc/filters.texi:4969: @option expected braces
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:5021: unknown command `inputCorrectionLevel'
 make: *** [doc/ffprobe-all.html] Error 1
 doc/filters.texi:4958: misplaced {
 doc/filters.texi:4958: misplaced }
 doc/filters.texi:4969: @option expected braces
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:5021: unknown command `inputCorrectionLevel'
 make: *** [doc/ffmpeg-all.html] Error 1
 doc/filters.texi:4958: misplaced {
 doc/filters.texi:4958: misplaced }
 doc/filters.texi:4969: @option expected braces
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:4985: unexpected @
 doc/filters.texi:5021: unknown command `inputCorrectionLevel'
 make: *** [doc/ffserver-all.html] Error 1
 }}}

 man page
 {{{
  man ffmpeg-filters
    copy
        Copy the input source unchanged to the output. This is mainly
 useful for testing purposes.

         at section coreimage

        Video filtering on GPU using Apple's CoreImage API on OSX.

        Hardware acceleration is based on an OpenGL context. Usually, this
 means it is processed by video hardware. However, software-based OpenGL
 implementations exist which means there is no guarantee for hardware
        processing. It depends on the respective OSX.

        There are many filters and image generators provided by Apple that
 come with a large variety of options. The filter has to be referenced by
 its name along with its options.

        The coreimage filter accepts the following options:
         at table @option
         at item list_filters List all available filters along with all
 their respective options as well as possible minimum and maximum values
 along with the default values.
         at example
            coreimage=list_filters=true
         at end example

         at item filter
        Specifiy all filters by their respective name and options.
        Use B<list_filters> to determine all valid filter names and
 options.
        Numerical options are specified by a float value and are
 automatically clamped to their respective value range.
        Vector and color options have to be specified by a list of space
 separated float values. Character escaping has to be done.
        A special option name C<default> is available to use default
 options for a filter.
        It is required to specify either C<default> or at least one of the
 filter options.
        All omitted options are used with their default values.
        The syntax of the filter string is as follows:
         at example
 filter=E<lt>NAMEE<gt>@E<lt>OPTIONE<gt>=E<lt>VALUEE<gt>[@E<lt>OPTIONE<gt>=E<lt>VALUEE<gt>][...][#E<lt>NAMEE<gt>@E<lt>OPTIONE<gt>=E<lt>VALUEE<gt>[@E<lt>OPTIONE<gt>=E<lt>VALUEE<gt>][...]]
         at end example
         at end table

        Several filters can be chained for successive processing without
 GPU-HOST transfers allowing for fast processing of complex filter chains.
 Currently, only filters with zero (generators) or exactly one (filters)
        input image and one output image are supported.  Also, transition
 filters are not yet usable as intended.

        Some filters generate output images with additional padding
 depending on the respective filter kernel. The padding is automatically
 removed to ensure the filter output has the same size as the input image.
 For image
        generators, the size of the output image is determined by the given
 input image. The generators do not use the pixel information of the input
 image to generate their output. However, the generated output is blended
        onto the input image, resulting in partial or complete coverage of
 the output image.

         at subsection Examples

         at itemize

         at item
        List all filters available:
         at example
        coreimage=list_filters=true
         at end example

         at item
        Use the CIBoxBlur filter with default options to blur an image:
         at example
        coreimage=filter=CIBoxBlur at default
         at end example

         at item
        Use a filter chain with CISepiaTone at default values and
 CIVignetteEffect with its center at 100x100 and a radius of 50 pixels:
         at example
        coreimage=filter=CIBoxBlur at default#CIVignetteEffect at
 inputCenter=100\ 100 at inputRadius=50
         at end example

         at item
        Use nullsrc and CIQRCodeGenerator to create a QR code for the
 FFmpeg homepage, given as complete and escaped command-line for Apple's
 standard bash shell:
         at example
        ./ffmpeg -f lavfi -i
 nullsrc=s=100x100,coreimage=filter=CIQRCodeGenerator at
 inputMessage=https\\\\\://FFmpeg.org/@inputCorrectionLevel=H -frames:v 1
 QRCode.png
         at end example
         at end itemize

    crop
        Crop the input video to given dimensions.
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/4143#comment:11>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list