Commit Graph

71 Commits

Author SHA1 Message Date
Diego Biurrun
122de16dd8 Replace cmdutils_common_opts.h by a macro 2017-01-12 11:42:21 +01:00
Vittorio Giovara
68f8db6108 avprobe: Allow specifying multiple stream entries to be shown 2016-12-07 14:35:08 -05:00
Vittorio Giovara
2fb6acd9c2 lavc: Add spherical packet side data API
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-12-07 14:34:34 -05:00
Vittorio Giovara
7d308bf84b avprobe: Add -show_stream_entry to get a single stream property
This is needed for improved fate testing and it is modeled after
-show_format_entry. The main behavioral difference is that when a print
function is called with an empty key, rather than discarding it, the
closes key in the hierarchy is used instead.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-11-01 11:27:52 -04:00
Vittorio Giovara
95f8029345 avprobe: Fix memory leak
After init_opts() there needs to be an uninit_opts() call
to free the swscale context and other buffers.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-08-29 19:08:26 +02:00
Vittorio Giovara
6135c3b61e Revert "avprobe: Zero the allocated avio buffer memory"
This reverts commit 0e0538aefc.

The valgrind warning was a false positive due to OSX implementation of
printf (invoking a strnlen), while this code is actually fine, since the
format specifier %.*s guarantes that no more than buf_size bytes from
buf will be read.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-07-21 21:53:20 +02:00
Vittorio Giovara
0e0538aefc avprobe: Zero the allocated avio buffer memory
Fixes valgrind warning "Conditional jump or move depends on
uninitialised value(s)." from avio_flush().
2016-07-20 17:13:33 +02:00
Vittorio Giovara
8e757716c6 avprobe: Print stereo3d information 2016-05-17 12:25:27 -04:00
Vittorio Giovara
41ed7ab45f cosmetics: Fix spelling mistakes
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-05-04 18:16:21 +02:00
Anton Khirnov
ba357e9869 avprobe: switch to codecpar 2016-02-26 09:15:29 +01:00
Anton Khirnov
567d6d5f9d avprobe: add local per-stream state
This will be useful in the following commits.
2016-02-26 09:15:20 +01:00
Anton Khirnov
c9478410c6 avprobe: add local per-file state
Do not pass just a bare AVFormatContext pointer around, wrap it in
struct. This will be useful in the following commits.
2016-02-26 09:15:06 +01:00
Anton Khirnov
168a443d43 avprobe: print information from the codec descriptor
avprobe is not doing any decoding, so this is more correct than printing
information from a random codec implementation.
2016-02-26 09:14:49 +01:00
Anton Khirnov
e7188a1a84 avprobe: remove a pointless condition and a dead branch
AVStream.codec is always non-NULL
2016-02-26 09:14:38 +01:00
Anton Khirnov
5efd91284e avprobe: do not call avio_close() on a custom context
avio_close() can only be called on AVIOContexts created by avio_open(2).
2016-02-22 11:28:26 +01:00
Luca Barbato
f0ca6ffa0a avprobe: Unref the packet once it is used
Make sure it does not leak packets.

CC: libav-stable@libav.org
2015-10-26 18:00:54 +01:00
Martin Storsjö
709e1c91ea avprobe: Print the display matrix from per-stream sidedata
This is printed in a separate subgroup "displaymatrix" inside a
new group named "sidedata". The subgroup has got two values,
"rotation" (which is the parsed rotation from the matrix) and
"matrix" containing the full actual values.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-02 22:09:09 +03:00
Martin Storsjö
3080b0497d avprobe: Support writing arrays of integers without keys
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-02 22:09:09 +03:00
Vittorio Giovara
7b9cb7b365 avprobe: Export coded_{width,height} in -show_streams 2015-03-08 20:41:50 +00:00
Diego Biurrun
bf704132a5 Don't anonymously typedef structs 2015-02-14 10:13:49 -08:00
Vittorio Giovara
b1306823d0 check memory errors from av_strdup() 2014-12-18 23:27:14 +01:00
Luca Barbato
aeb23fc454 avprobe: Remove a pointless check
The element is always valid.

CC: libav-stable@libav.org
Bug-Id: CID 732276
2014-10-17 09:55:46 +01:00
Vittorio Giovara
a2c00d22e7 avprobe: print color properties for show_streams 2014-10-08 18:17:49 +01:00
Luca Barbato
636ced8e1d cmdutils: wrap exit explicitly
Some C runtime implementations deadlock when calling threading functions
on the atexit() handler.

Use a simpler wrapper similar to av_log to call the cleanup function
before exit.

Bug-Id: 523
2013-07-07 21:43:23 +02:00
Luca Barbato
a4baf96abd avprobe: rename the prettyprint structures 2013-07-07 04:28:51 +02:00
Anton Khirnov
e19e8aeeaa avtools: move media_type_string() from avprobe to cmdutils.
It will be useful outside of avprobe.
2013-04-11 20:46:04 +02:00
Reimar Döffinger
efa7f42020 Use the avstring.h locale-independent character type functions
Make sure the behavior does not change with the locale.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-07 15:16:36 +02:00
Anton Khirnov
dda20a6e2c avprobe: also output dar/par if only defined in stream
Based on a patch by Jan Gerber <j@v2v.cc>
2013-01-04 12:55:58 +01:00
Janne Grunau
89a4465bd9 avprobe: report per stream bit rate if set by the decoder 2012-12-02 23:23:34 +01:00
Anton Khirnov
b7f1010c8f tools: do not use av_pix_fmt_descriptors directly. 2012-10-12 12:45:38 +02:00
Anton Khirnov
716d413c13 Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat 2012-10-08 07:13:26 +02:00
Diego Biurrun
8be5b0d6d5 avconv/avprobe: Add missing 'void' to exit_program() definition 2012-10-03 18:07:49 +02:00
Diego Elio Pettenò
5e3f9979fa Use atexit() instead of defining a custom exit_program() interface. 2012-10-01 17:17:42 -04:00
Anton Khirnov
11d957fbd8 avtools: remove the distinction between func_arg and func2_arg.
func2_arg is the same as func_arg, except it has one additional
parameter. Change all func_arg callbacks to take that parameter (and
ignore it).
2012-08-30 13:56:25 +02:00
Martin Storsjö
b42be2d56a avprobe: Get rid of ugly casts in the options table
This also makes sure the function pointers are stored via the same
union member as they are accessed via.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-27 18:59:06 +03:00
Anton Khirnov
f9fada2704 avconv: split printing "main options" into global and per-file. 2012-08-19 19:23:43 +02:00
Anton Khirnov
a3ad68d36c cmdutils: extend -h to allow printing codec details. 2012-08-19 19:22:08 +02:00
Anton Khirnov
dc4c24a3d3 avtools: move some newlines to show_help_options().
Don't require every caller to supply them.
2012-08-19 19:21:03 +02:00
Anton Khirnov
f617135bc9 avtools: fix show_foo() signatures.
show_foo() functions are declared as void show_foo(void), but called as
int show_foo(const char*, const char*).
2012-08-19 19:07:43 +02:00
Mans Rullgard
8b13445791 avprobe: add const to AVCodec pointer
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-18 14:20:57 +01:00
Martin Storsjö
0af85d57c1 avprobe: Include libm.h for the log2 fallback
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-14 01:37:52 +03:00
Mans Rullgard
d752509b74 Use log2(x) instead of log(x) / log(2)
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 17:59:21 +01:00
Anton Khirnov
36ef5369ee Replace all CODEC_ID_* with AV_CODEC_ID_* 2012-08-07 16:00:24 +02:00
Anton Khirnov
aba232cfa9 lavf: deprecate r_frame_rate.
According to its description, it is supposed to be the LCM of all the
frame durations. The usability of such a thing is vanishingly small,
especially since we cannot determine it with any amount of reliability.
Therefore get rid of it after the next bump.

Replace it with the average framerate where it makes sense.

FATE results for the wtv and xmv demux tests change. In the wtv case
this is caused by the file being corrupted (or possibly badly cut) and
containing invalid timestamps. This results in lavf estimating the
framerate wrong and making up wrong frame durations.
In the xmv case the file contains pts jumps, so again the estimated
framerate is far from anything sane and lavf again makes up different
frame durations.

In some other tests lavf starts making up frame durations from different
frame.
2012-07-29 08:06:30 +02:00
Ronald S. Bultje
dcb7ef5483 avprobe/avconv: fix tentative declaration compile errors on MSVS. 2012-07-28 11:48:18 -07:00
Alex Converse
503f2feb14 avprobe: Identify codec probe failures rather than calling them unsupported codecs. 2012-06-05 09:51:51 -07:00
Luca Barbato
43b50e62c4 avprobe: correctly set the default formatter 2012-05-29 14:09:43 -07:00
Luca Barbato
528995589f avprobe: move formatter functions in the context
Avoid possible clashes.
2012-05-29 11:00:12 -07:00
Anton Khirnov
8271f55bd7 avprobe: restore pseudo-INI old style format for compatibility. 2012-05-26 21:14:35 +02:00
Anton Khirnov
d30acfa94c avprobe: fix formatting. 2012-05-26 21:14:27 +02:00