1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-07 11:13:41 +02:00
FFmpeg/fftools
Derek Buitenhuis f5cd00bf52 ffprobe: Check for invalid matrix error when printing rotation
av_display_rotation_get will return NAN when the display matrix is invalid,
which would end up printing NAN as an integer in the rotation field. This
is poor for multiple reasons:

* Users of ffprobe have no way of discerning "valid but ugly rotation from
  display matrix" from "invalid display matrix".
* It can have unintended consequences on some platforms, such as Linux x86_64,
  where NAN is equal to INT64_MIN, which, for example, when printed as JSON,
  which uses floating point for all numbers, can end up as invalid JSON or wit
  a number that cannot be reserialized as an integer at all.

Since NAN is av_display_rotation_get's error case, just print 0 (no rotation)
when that happens.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2022-09-27 17:37:21 +01:00
..
cmdutils.c fftools: Use report_error_then_exit_program() for allocation failures 2022-09-01 14:26:00 +02:00
cmdutils.h fftools/cmdutils: Add function to report error before exit 2022-09-01 14:21:56 +02:00
ffmpeg_demux.c fftools/ffmpeg: stop accessing av_stream_get_parser() from the main thread 2022-08-29 15:42:11 +02:00
ffmpeg_filter.c fftools/ffmpeg_filter: configure min_hard_comp unconditionally 2022-09-23 19:58:08 +08:00
ffmpeg_hw.c fftools/ffmpeg: drop OutputStream.enc 2022-08-29 15:42:11 +02:00
ffmpeg_mux.c fftools/ffmpeg: use a separate counter for encoded packet data size 2022-08-29 15:42:11 +02:00
ffmpeg_opt.c fftools/ffmpeg_opt: Check creation of new program 2022-09-01 14:26:01 +02:00
ffmpeg.c fftools/ffmpeg: fix av_display_rotation_set() type cast 2022-09-22 20:03:57 +08:00
ffmpeg.h fftools/ffmpeg: use a separate counter for encoded packet data size 2022-08-29 15:42:11 +02:00
ffplay.c fftools/ffplay: fix rotation incorrect when frame contains the displaymatrix 2022-09-15 16:16:16 +08:00
ffprobe.c ffprobe: Check for invalid matrix error when printing rotation 2022-09-27 17:37:21 +01:00
fftools.manifest fftools: add DPI awareness manifest 2022-08-13 14:42:52 +02:00
fftoolsres.rc fftools: add DPI awareness manifest 2022-08-13 14:42:52 +02:00
fopen_utf8.h fftools/fopen_utf8: support long paths on Windows for fftools 2022-06-19 01:38:23 +03:00
Makefile fftools: add DPI awareness manifest 2022-08-13 14:42:52 +02:00
objpool.c fftools/objpool: Don't use return with expression when returning void 2022-07-23 18:58:35 +02:00
objpool.h fftools: add an object pool 2022-07-23 11:53:19 +02:00
opt_common.c fftools/opt_common: check the return value of av_hwdevice_get_type_name before printing it 2022-09-14 09:54:19 -03:00
opt_common.h fftools/cmdutils: split common option handlers into their own file 2022-03-22 18:49:43 +01:00
sync_queue.c fftools/ffmpeg: replace AVFrame.pkt_duration with duration 2022-07-24 08:46:16 +02:00
sync_queue.h fftools/ffmpeg: use the sync queues to handle -frames 2022-07-23 11:53:19 +02:00
thread_queue.c fftools: add a multistream thread-safe queue 2022-07-23 11:53:19 +02:00
thread_queue.h fftools: add a multistream thread-safe queue 2022-07-23 11:53:19 +02:00