1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-24 13:56:33 +02:00

4729 Commits

Author SHA1 Message Date
Timo Rothenpieler
4faa01f20c configure: add nvcc to CMDLINE_SET
This was somehow forgotten and nobody noticed until now.
2018-04-16 22:38:11 +02:00
Carl Eugen Hoyos
092febb2ad configure: bump year
Happy new year!

(cherry picked from commit bddf31ba7570325dd2c8d033eae3d0dd74127f96)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-01-28 15:33:09 +01:00
Jacob Trimble
5ab992cd38 configure: Fix dependencies of aac_at decoder.
Signed-off-by: Jacob Trimble <modmaker@google.com>
Signed-off-by: James Almer <jamrial@gmail.com>
(cherry picked from commit 83ecdc9a920d7f0b69d1a25d63757adb887a1f25)
2017-12-01 01:24:25 -03:00
James Almer
7deb7e6acd configure: force erroring out in check_disable_warning() if an option doesn't exists
Should prevent some options from being added to cflags when they
don't exist and the compiler only warns about it.

Reviewd-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
(cherry picked from commit ad56e8057d8af0201ed0cb65acc12e5889d4afcc)
2017-10-13 20:57:38 -03:00
Marton Balint
c8642473e0 configure: remove libdl dependency from libndi_newtek
We are not using dynamic loading for libndi.

Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
(cherry picked from commit 58143b15adda6391ec07f3eb19e80ed91d801edd)
2017-10-11 22:50:51 +02:00
Marton Balint
f280575a0f configure: fix decklink dependencies
We don't need libdl for win32/mingw.

Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2017-10-10 23:28:38 +02:00
Marton Balint
ff6de6b180 Makefile: generate stripped CLI tools directly instead of copying unstripped ones first
Now works with --disable-stripping.

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-10-10 19:45:14 +02:00
James Almer
fde3bb16f9 build: prevent SDL2 from polluting global cflags and extralibs
Remove the SDL_main define from the global cflags but not from the
ffplay cflags, and the -mwindows linker option from extralibs instead
of overriding it with the addition of -mconsole.

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-09 21:41:11 -03:00
Carl Eugen Hoyos
c585b4e9f0 configure: Disable -Wbool-operation using check_disable_warning().
Suggested-by: James Almer
2017-10-09 02:21:08 +02:00
Mark Thompson
c154c34c1b Revert "configure: Disable -Wbool-operation."
This reverts commit c2d155e11ee5ec732d471982f2dee43703bcd5a7.

GCC 6 incorrectly passes the configure test and then logs many warnings
of the form:

src/libavformat/dump.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-bool-operation’
2017-10-09 00:53:51 +01:00
Mark Thompson
9c7a71145b configure: Add config option for libva2 (VAAPI 1) 2017-10-09 00:11:53 +01:00
James Almer
65c3a32836 configure: disable libxcb dependent features if libxcb is not enabled
Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-08 18:46:25 -03:00
Carl Eugen Hoyos
c2d155e11e configure: Disable -Wbool-operation.
Requested-by: Ronald and Derek
2017-10-08 23:08:09 +02:00
Michael Bradshaw
41d6d62702 lavc: add support for OpenJPEG 2.3.0
Signed-off-by: Michael Bradshaw <mjbshaw@google.com>
2017-10-08 08:13:02 -07:00
James Almer
ede233a278 configure: fix detecting libdl when dlsym requires extra linker flags
Regression since 84b3f53acadced2dd31f6be95b491b25183b8c22.
2017-10-04 18:55:32 -03:00
Clément Bœsch
8be3fc88d3 build: make h264 VT encoder select the VT encoder dependency
Otherwise, it's never enabled unless the user explicitely enables it.

Regression since 9ef5a2f5f30bdc4ac86275ae4b4708ab4681b21d.

Fixes Ticket #6702.
2017-10-04 11:24:09 +02:00
James Almer
84b3f53aca Merge commit 'd154bdd3d053128c908a994bb26e14bbc17f0e53'
* commit 'd154bdd3d053128c908a994bb26e14bbc17f0e53':
  configure: Simplify dlopen check

Merged-by: James Almer <jamrial@gmail.com>
2017-10-04 01:05:56 -03:00
James Almer
54ce880a46 Partially revert "Merge commit '71a49fe25f2e4468fbbadbebef8d073b1b3cc1a5'"
Revert back to the test as done by commit af7a75cb517141f649cbbe0a9dcdb4854359b740,
where it was changed to compile and not just preprocess to fix build failures on
FreeBSD with gcc 4.7

Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-01 12:59:37 -03:00
James Almer
e16ea52ed3 configure: fix enabling SDL2 without pkg-config
Regression since d81b34069e80cb04160689ef5a160b9aee858257.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-09-28 21:34:38 -03:00
Aman Gupta
3d4f8b9184 avcodec/videotoolbox: add hevc support
Signed-off-by: Aman Gupta <aman@tmm1.net>
2017-09-28 16:47:47 -07:00
James Almer
d81b34069e Merge commit '7208e5b5d638d4b9c2784036b4fc5728f32233c7'
* commit '7208e5b5d638d4b9c2784036b4fc5728f32233c7':
  configure: Restructure the way check_pkg_config() operates

Merged-by: James Almer <jamrial@gmail.com>
2017-09-28 18:36:27 -03:00
James Almer
00a61f30a0 Merge commit '54e39b102e29adcc2f59f1eca85be5f86c89454b'
* commit '54e39b102e29adcc2f59f1eca85be5f86c89454b':
  configure: Explicitly spell out first require_pkg_config() parameter

Merged-by: James Almer <jamrial@gmail.com>
2017-09-28 13:46:31 -03:00
James Almer
47d6b02f6c Merge commit 'd00a0d8e84fef1b9124bfaf71cc17df79ca464a6'
* commit 'd00a0d8e84fef1b9124bfaf71cc17df79ca464a6':
  configure: Handle SDL version check through pkg-config

Merged-by: James Almer <jamrial@gmail.com>
2017-09-28 01:04:46 -03:00
James Almer
57db1faf7a Merge commit 'c546147db07d16a76c2fb698d2e8a3057f393475'
* commit 'c546147db07d16a76c2fb698d2e8a3057f393475':
  configure: Correctly recurse in do_check_deps()

See 7659f35638e2ca7a8b202cb3007ca5473b108fa4.

Merged-by: James Almer <jamrial@gmail.com>
2017-09-27 19:08:19 -03:00
James Almer
7659f35638 Merge commit 'dad7a9c7c0ae8ebc56f2e3a24e6fa4da5c2cd491'
* commit 'dad7a9c7c0ae8ebc56f2e3a24e6fa4da5c2cd491':
  configure: Rework dependency handling for conflicting components

Includes an important fix made by c546147db07d16a76c2fb698d2e8a3057f393475
as well.

Merged-by: James Almer <jamrial@gmail.com>
2017-09-27 19:00:50 -03:00
Lionel CHAZALLON
f3aefb3e1c lavc: Add support for RockChip Media Process Platform
This adds hardware decoding for H.264 / HEVC / VP8 / VP9 using the MPP
Rockchip API.  It returns frames holding an AVDRMFrameDescriptor struct
in buf[0] that allows drm / dmabuf usage.  Tested on RK3288 (TinkerBoard)
and RK3328.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
2017-09-27 22:43:58 +01:00
James Almer
d1256750e8 Merge commit '9127ac5ebc941d5e54828a91e5072c876be8ec42'
* commit '9127ac5ebc941d5e54828a91e5072c876be8ec42':
  configure: Add name parameter to require_pkg_config() helper function

Merged-by: James Almer <jamrial@gmail.com>
2017-09-27 16:45:32 -03:00
James Almer
55cc0bccf3 Revert "Merge commit 'a97563c889fefd81ad6b3758471434d8c2e2e550'"
This reverts commit 1985071e41f4df8fc693a564e25758676bba164a, reversing
changes made to a901869c19ed14c7d3647901468bd1297c9f98c0.

We autodetect libxcb, so this is not necessary.
2017-09-27 15:01:58 -03:00
Josh de Kock
56d2154b72
lavd: remove deprecated dv1394 device
Support for this device has been removed in kernel since v2.6.37. dv1394 has been superseded by libiec61883 which is functionally equivalent.

Signed-off-by: Josh de Kock <josh@itanimul.li>
Signed-off-by: wm4 <nfxjfg@googlemail.com>
2017-09-27 17:04:56 +01:00
James Almer
e00e8639b2 Merge commit '71a49fe25f2e4468fbbadbebef8d073b1b3cc1a5'
* commit '71a49fe25f2e4468fbbadbebef8d073b1b3cc1a5':
  configure: Use cppflags check helper functions where appropriate

Merged-by: James Almer <jamrial@gmail.com>
2017-09-27 12:23:50 -03:00
James Almer
407a7547da Merge commit '0ce3761c781f2c2de40a5a8a99563878804f47cc'
* commit '0ce3761c781f2c2de40a5a8a99563878804f47cc':
  configure: Add stdlib.h #include to CPPFLAGS check helper functions

Merged-by: James Almer <jamrial@gmail.com>
2017-09-27 12:14:52 -03:00
James Almer
8f2ab18063 Revert "Merge commit '66988320794a107f2a460eaa71dbd9fab8056842'"
This reverts commit 740e557d6eac3b579dfed53ed92ae70e2089c77c, reversing
changes made to 932e28b13e9ae29262dfd28419b700e03716e85e.

The commit apparently broke builds with shared libs, and "suggesting"
the use of external libraries that need to be explicitly enable has
dubious usefulness anyway.
2017-09-26 19:09:57 -03:00
James Almer
c83c164f05 Merge commit 'bcaedef1189a3531aa4dfb020627eb0133ffa89c'
* commit 'bcaedef1189a3531aa4dfb020627eb0133ffa89c':
  configure: Add require_cpp_condition() convenience function

Merged-by: James Almer <jamrial@gmail.com>
2017-09-26 18:05:30 -03:00
James Almer
14194090a6 Merge commit 'aba7fdcc8baaed35e804c7882b70a848a0e566c7'
* commit 'aba7fdcc8baaed35e804c7882b70a848a0e566c7':
  configure: Add require_header() convenience function

Merged-by: James Almer <jamrial@gmail.com>
2017-09-26 17:29:57 -03:00
James Almer
1985071e41 Merge commit 'a97563c889fefd81ad6b3758471434d8c2e2e550'
* commit 'a97563c889fefd81ad6b3758471434d8c2e2e550':
  configure: Simplify libxcb check

Merged-by: James Almer <jamrial@gmail.com>
2017-09-26 17:23:16 -03:00
James Almer
740e557d6e Merge commit '66988320794a107f2a460eaa71dbd9fab8056842'
* commit '66988320794a107f2a460eaa71dbd9fab8056842':
  configure: Add proper weak dependency of drawtext filter on libfontconfig

Merged-by: James Almer <jamrial@gmail.com>
2017-09-26 17:08:29 -03:00
James Almer
932e28b13e Merge commit '24d5680bbc01fc124709d522d348572ad4672563'
* commit '24d5680bbc01fc124709d522d348572ad4672563':
  configure: Simplify inline asm check with appropriate helper function

Merged-by: James Almer <jamrial@gmail.com>
2017-09-26 17:01:21 -03:00
James Almer
f944576028 Merge commit 'b3825723dceffc64240da7b0e562bd1fd024da26'
* commit 'b3825723dceffc64240da7b0e562bd1fd024da26':
  configure: Merge compiler/libc/os hacks sections

Merged-by: James Almer <jamrial@gmail.com>
2017-09-26 16:49:59 -03:00
James Almer
318778de9e Merge commit 'fd9212f2edfe9b107c3c08ba2df5fd2cba5ab9e3'
* commit 'fd9212f2edfe9b107c3c08ba2df5fd2cba5ab9e3':
  Mark some arrays that never change as const.

Merged-by: James Almer <jamrial@gmail.com>
2017-09-26 16:02:40 -03:00
James Almer
7289c7658a Merge commit 'ab87af41636b081dd3562423999351b5444fa09e'
* commit 'ab87af41636b081dd3562423999351b5444fa09e':
  configure: Add proper weak dependency of avformat on network

Merged-by: James Almer <jamrial@gmail.com>
2017-09-26 15:03:21 -03:00
Jorge Ramirez-Ortiz
1ef7752d64 libavcodec: v4l2: add support for v4l2 mem2mem codecs
This patchset enhances Alexis Ballier's original patch and validates
    it using Qualcomm's Venus hardware (driver recently landed upstream
    [1]).

    This has been tested on Qualcomm's DragonBoard 410c and 820c
    Configure/make scripts have been validated on Ubuntu 10.04 and
    16.04.

    Tested decoders:
           - h264
           - h263
           - mpeg4
           - vp8
           - vp9
           - hevc

    Tested encoders:
           - h264
           - h263
           - mpeg4

    Tested transcoding (concurrent encoding/decoding)

    Some of the changes introduced:
        - v4l2: code cleanup and abstractions added
        - v4l2: follow the new encode/decode api.
        - v4l2: fix display size for NV12 output pool.
        - v4l2: handle EOS (EPIPE and draining)
        - v4l2: vp8 and mpeg4 decoding and encoding.
        - v4l2: hevc and vp9 support.
        - v4l2: generate EOF on dequeue errors.
        - v4l2: h264_mp4toannexb filtering.
        - v4l2: fixed make install and fate issues.
        - v4l2: codecs enabled/disabled depending on pixfmt defined
        - v4l2: pass timebase/framerate to the context
        - v4l2: runtime decoder reconfiguration.
        - v4l2: add more frame information
        - v4l2: free hardware resources on last reference being released
        - v4l2: encoding: disable b-frames for upstreaming (patch required)

    [1] https://lwn.net/Articles/697956/

    System Level view:
        v42l_m2m_enc/dec --> v4l2_m2m --> v4l2_context --> v4l2_buffers

    Reviewed-by: Jorge Ramirez <jorge.ramirez-ortiz@linaro.org>
    Reviewed-by: Alexis Ballier <aballier@gentoo.org>
    Tested-by: Jorge Ramirez <jorge.ramirez-ortiz@linaro.org>

Signed-off-by: wm4 <nfxjfg@googlemail.com>
2017-09-23 08:47:52 +02:00
Yogender Gupta
21e077fcb3 avfilter/thumbnail_cuda: add cuda thumbnail filter
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2017-09-22 11:54:35 +02:00
Clément Bœsch
1a08285f05 build: fix coreimage filters dependency to AppKit framework
AppKit is not present on iOS.
2017-09-15 15:01:32 +02:00
Mark Thompson
52194f0bcb lavd: Add KMS screen grabber 2017-09-13 22:31:05 +01:00
Mark Thompson
9cb23cd9fe lavu: Add DRM hwcontext 2017-09-13 22:03:27 +01:00
James Almer
4d390344ec configure: check if NAN can be used as a constant initializer
Some targets, like NetBSD and DJGPP, don't seem to support it.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-09-13 15:38:10 -03:00
Steven Liu
96d70694ae avformat/dashdec: add dash demuxer base version
ffmpeg need a dash demuxer for demux the dash formats base on
https://github.com/samsamsam-iptvplayer/exteplayer3/blob/master/tmp/ffmpeg/patches/3.2.2/000001_add_dash_demux.patch

TODO:
1. support multi bitrate dash.

v2 fixed:
1. from autodetect to disabled
2. from camelCase code style to ffmpeg code style
3. from RepType to AVMediaType
4. fix variable typo
5. change time value from uint32_t to uint64_t
6. removed be used once API
7. change 'time(NULL)`, except it is not 2038-safe.' to av_gettime and av_timegm
8. merge complex free operation to free_fragment
9. use API from snprintf to av_asprintf

v3 fixed:
1. fix typo from --enabled-xml2 to --enable-xml2

v4 fixed:
1. from --enable-xml2 to --enable-libxml2
2. move system includes to top
3. remove nouse includes
4. rename enum name
5. add a trailing comma for the last entry enum
6. fix comment typo
7. add const to DASHContext class front
8. check sscanf if return arguments and give warning message when error
9. check validity before free seg->url and seg
10. check if the val is null, before use atoll

v5 fixed:
1. fix typo from mainifest to manifest

v6 fixed:
1. from realloc to av_realloc
2. from free to av_free

v7 fixed:
1. remove the -lxml2 from configure when require_pkg_config

v8 fixed:
1. fix replace filename template by av_asprintf secure problem

v9 modified:
1. make manifest parser clearly

v10 fixed:
1. fix function API name code style
2. remove redundant strreplace call
3. remove redundant memory operation and check return value from get_content_url()
4. add space between ) and {
5. remove no need to log the value for print

v11 fixed:
1. from atoll to strtoll
Suggested-by: Michael Niedermayer <michael@niedermayer.cc>

v12 fixed:
1. remove strreplace and instead by av_strreplace
Suggested-by: Nicolas George <george@nsup.org>

v13 fixed:
1. fix bug: cannot play:
http://dash.edgesuite.net/akamai/bbb_30fps/bbb_30fps.mpd
Reported-by: Andy Furniss <adf.lists@gmail.com>

v14 fixed:
1. fix bug: TLS connection was non-properly terminated
2. fix bug: No trailing CRLF found in HTTP header
Reported-by: Andy Furniss <adf.lists@gmail.com>

v15 fixed:
1. play youtube link: ffmpeg -i $(youtube-dl -J "https://www.youtube.com/watch?v=XmL19DOP_Ls" | jq -r ".requested_formats[0].manifest_url")
2. code refine for timeline living stream
Reported-by: Ricardo Constantino <wiiaboo@gmail.com>

v16 fixed:
1. remove the snprintf and instead by get_segment_filename make safety
2. remove unnecessary loops
3. updated xmlStrcmp and xmlFree to av_* functions
4. merge code repeat into one function
5. add memory alloc faild check
6. update update_init_section and open_url
7. output safety error message when filename template not safe
Suggested-by : wm4 <nfxjfg@googlemail.com>

v17 fixed:
1. add memory alloc faild check
2. fix resource space error at free_representation

v18 fixed:
1. add condition of template format

v19 fixed:
1. fix typo of the option describe

v20 fixed:
1. add the c->base_url alloc check
2. make the DASHTmplId same to dashenc

v21 fixed:
1. remove get_repl_pattern_and_format and get_segment_filename
2. process use dashcomm APIs

v22 fixed:
1. modify the include "dashcomm.h" to include "dash.h"
2. use internal API from dash_fill_tmpl_params to ff_dash_fill_tmpl_params

Signed-off-by: Steven Liu <lq@onvideo.cn>
Signed-off-by: samsamsam <samsamsam@o2.pl>
2017-09-09 08:32:03 +08:00
Clément Bœsch
260ea7a7b3 build: cleanup videotoolbox
- there is no need for kCVImageBufferColorPrimaries_ITU_R_2020 checks,
  it's done at runtime
- VideoToolbox presence is now checked with check_apple_framework()
- link to CoreServices is only done when videotoolbox is enabled
2017-09-08 18:55:19 +02:00
Clément Bœsch
1cf23e3fdd build: cleanup audiotoolbox handling
*_at codecs only need the AudioToolbox framework, which is now checked
like the other Apple frameworks.
2017-09-08 18:55:19 +02:00
Clément Bœsch
496d0178b0 build: add --disable-coreimage autodetect switch 2017-09-08 18:55:19 +02:00