[FFmpeg-devel] [PATCH 20/20] cbs: Add some read/write tests

Michael Niedermayer michael at niedermayer.cc
Mon Oct 9 21:41:18 EEST 2017


On Sun, Oct 08, 2017 at 09:01:54PM +0100, Mark Thompson wrote:
> Use the appropriate metadata filter for each codec - in the absence of any
> options to modify the stream, the output bitstream should be identical to
> the input (though the output file may differ in padding).
> 
> All tests use conformance bitstreams, the MPEG-2 streams are newly added
> from the conformance test streams
> <http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/Video/>
> ---
>  tests/Makefile                                |  1 +
>  tests/fate/cbs.mak                            | 74 +++++++++++++++++++++++++++
>  tests/ref/fate/cbs-h264-AUD_MW_E              |  1 +
>  tests/ref/fate/cbs-h264-BASQP1_Sony_C         |  1 +
>  tests/ref/fate/cbs-h264-CABACI3_Sony_B        |  1 +
>  tests/ref/fate/cbs-h264-CVBS3_Sony_C          |  1 +
>  tests/ref/fate/cbs-h264-CVFC1_Sony_C          |  1 +
>  tests/ref/fate/cbs-h264-CVMANL1_TOSHIBA_B     |  1 +
>  tests/ref/fate/cbs-h264-CVNLFI1_Sony_C        |  1 +
>  tests/ref/fate/cbs-h264-CVSE2_Sony_B          |  1 +
>  tests/ref/fate/cbs-h264-CVWP1_TOSHIBA_E       |  1 +
>  tests/ref/fate/cbs-h264-FM1_BT_B              |  1 +
>  tests/ref/fate/cbs-h264-MR1_BT_A              |  1 +
>  tests/ref/fate/cbs-h264-SVA_Base_B            |  1 +
>  tests/ref/fate/cbs-h264-Sharp_MP_PAFF_1r2     |  1 +
>  tests/ref/fate/cbs-h264-sp1_bt_a              |  1 +
>  tests/ref/fate/cbs-hevc-CAINIT_E_SHARP_3      |  1 +
>  tests/ref/fate/cbs-hevc-CAINIT_H_SHARP_3      |  1 +
>  tests/ref/fate/cbs-hevc-CONFWIN_A_Sony_1      |  1 +
>  tests/ref/fate/cbs-hevc-HRD_A_Fujitsu_2       |  1 +
>  tests/ref/fate/cbs-hevc-LTRPSPS_A_Qualcomm_1  |  1 +
>  tests/ref/fate/cbs-hevc-NUT_A_ericsson_5      |  1 +
>  tests/ref/fate/cbs-hevc-PICSIZE_A_Bossen_1    |  1 +
>  tests/ref/fate/cbs-hevc-PICSIZE_B_Bossen_1    |  1 +
>  tests/ref/fate/cbs-hevc-RPLM_A_qualcomm_4     |  1 +
>  tests/ref/fate/cbs-hevc-RPS_A_docomo_4        |  1 +
>  tests/ref/fate/cbs-hevc-RPS_E_qualcomm_5      |  1 +
>  tests/ref/fate/cbs-hevc-SLIST_A_Sony_4        |  1 +
>  tests/ref/fate/cbs-hevc-SLIST_D_Sony_9        |  1 +
>  tests/ref/fate/cbs-hevc-STRUCT_A_Samsung_5    |  1 +
>  tests/ref/fate/cbs-hevc-TILES_B_Cisco_1       |  1 +
>  tests/ref/fate/cbs-hevc-WPP_A_ericsson_MAIN_2 |  1 +
>  tests/ref/fate/cbs-hevc-WPP_F_ericsson_MAIN_2 |  1 +
>  tests/ref/fate/cbs-hevc-WP_A_Toshiba_3        |  1 +
>  tests/ref/fate/cbs-hevc-ipcm_E_NEC_2          |  1 +
>  tests/ref/fate/cbs-mpeg2-hhi_burst_422_short  |  1 +
>  tests/ref/fate/cbs-mpeg2-sony-ct3             |  1 +
>  tests/ref/fate/cbs-mpeg2-tcela-6              |  1 +
>  38 files changed, 111 insertions(+)
>  create mode 100644 tests/fate/cbs.mak
>  create mode 100644 tests/ref/fate/cbs-h264-AUD_MW_E
>  create mode 100644 tests/ref/fate/cbs-h264-BASQP1_Sony_C
>  create mode 100644 tests/ref/fate/cbs-h264-CABACI3_Sony_B
>  create mode 100644 tests/ref/fate/cbs-h264-CVBS3_Sony_C
>  create mode 100644 tests/ref/fate/cbs-h264-CVFC1_Sony_C
>  create mode 100644 tests/ref/fate/cbs-h264-CVMANL1_TOSHIBA_B
>  create mode 100644 tests/ref/fate/cbs-h264-CVNLFI1_Sony_C
>  create mode 100644 tests/ref/fate/cbs-h264-CVSE2_Sony_B
>  create mode 100644 tests/ref/fate/cbs-h264-CVWP1_TOSHIBA_E
>  create mode 100644 tests/ref/fate/cbs-h264-FM1_BT_B
>  create mode 100644 tests/ref/fate/cbs-h264-MR1_BT_A
>  create mode 100644 tests/ref/fate/cbs-h264-SVA_Base_B
>  create mode 100644 tests/ref/fate/cbs-h264-Sharp_MP_PAFF_1r2
>  create mode 100644 tests/ref/fate/cbs-h264-sp1_bt_a
>  create mode 100644 tests/ref/fate/cbs-hevc-CAINIT_E_SHARP_3
>  create mode 100644 tests/ref/fate/cbs-hevc-CAINIT_H_SHARP_3
>  create mode 100644 tests/ref/fate/cbs-hevc-CONFWIN_A_Sony_1
>  create mode 100644 tests/ref/fate/cbs-hevc-HRD_A_Fujitsu_2
>  create mode 100644 tests/ref/fate/cbs-hevc-LTRPSPS_A_Qualcomm_1
>  create mode 100644 tests/ref/fate/cbs-hevc-NUT_A_ericsson_5
>  create mode 100644 tests/ref/fate/cbs-hevc-PICSIZE_A_Bossen_1
>  create mode 100644 tests/ref/fate/cbs-hevc-PICSIZE_B_Bossen_1
>  create mode 100644 tests/ref/fate/cbs-hevc-RPLM_A_qualcomm_4
>  create mode 100644 tests/ref/fate/cbs-hevc-RPS_A_docomo_4
>  create mode 100644 tests/ref/fate/cbs-hevc-RPS_E_qualcomm_5
>  create mode 100644 tests/ref/fate/cbs-hevc-SLIST_A_Sony_4
>  create mode 100644 tests/ref/fate/cbs-hevc-SLIST_D_Sony_9
>  create mode 100644 tests/ref/fate/cbs-hevc-STRUCT_A_Samsung_5
>  create mode 100644 tests/ref/fate/cbs-hevc-TILES_B_Cisco_1
>  create mode 100644 tests/ref/fate/cbs-hevc-WPP_A_ericsson_MAIN_2
>  create mode 100644 tests/ref/fate/cbs-hevc-WPP_F_ericsson_MAIN_2
>  create mode 100644 tests/ref/fate/cbs-hevc-WP_A_Toshiba_3
>  create mode 100644 tests/ref/fate/cbs-hevc-ipcm_E_NEC_2
>  create mode 100644 tests/ref/fate/cbs-mpeg2-hhi_burst_422_short
>  create mode 100644 tests/ref/fate/cbs-mpeg2-sony-ct3
>  create mode 100644 tests/ref/fate/cbs-mpeg2-tcela-6

make V=2 fate-cbs-h264-FM1_BT_B
appears to segfault
Input #0, h264, from 'fate-suite//h264-conformance/FM1_BT_B.h264':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Video: h264 (Baseline), yuv420p(progressive), 176x144, 25 fps, 25 tbr, 1200k tbn, 50 tbc
File 'tests/data/fate/cbs-h264-FM1_BT_B.out' already exists. Exiting.
==14524==    at 0x11AE4C3: VALGRIND_PRINTF_BACKTRACE (valgrind.h:4550)
==14524==    by 0x11AEF33: av_log_default_callback (log.c:355)
==14524==    by 0x11AF0D2: av_vlog (log.c:383)
==14524==    by 0x11AF092: av_log (log.c:375)
==14524==    by 0x414A46: assert_file_overwrite (ffmpeg_opt.c:926)
==14524==    by 0x41C6F1: open_output_file (ffmpeg_opt.c:2559)
==14524==    by 0x41F0F9: open_files (ffmpeg_opt.c:3278)
==14524==    by 0x41F2FD: ffmpeg_parse_options (ffmpeg_opt.c:3332)
==14524==    by 0x43D1F6: main (ffmpeg.c:4786)
==14524== Invalid read of size 8
==14524==    at 0xE9CD1D: ff_cbs_close (cbs.c:85)
==14524==    by 0x9110F9: h264_metadata_close (h264_metadata_bsf.c:443)
==14524==    by 0x8333F7: av_bsf_free (bsf.c:44)
==14524==    by 0x42C1BA: ffmpeg_cleanup (ffmpeg.c:537)
==14524==    by 0x42483F: exit_program (cmdutils.c:138)
==14524==    by 0x414A50: assert_file_overwrite (ffmpeg_opt.c:927)
==14524==    by 0x41C6F1: open_output_file (ffmpeg_opt.c:2559)
==14524==    by 0x41F0F9: open_files (ffmpeg_opt.c:3278)
==14524==    by 0x41F2FD: ffmpeg_parse_options (ffmpeg_opt.c:3332)
==14524==    by 0x43D1F6: main (ffmpeg.c:4786)
==14524==  Address 0x8 is not stack'd, malloc'd or (recently) free'd
==14524==
==14524==
==14524== Process terminating with default action of signal 11 (SIGSEGV)
==14524==  Access not within mapped region at address 0x8
==14524==    at 0xE9CD1D: ff_cbs_close (cbs.c:85)
==14524==    by 0x9110F9: h264_metadata_close (h264_metadata_bsf.c:443)
==14524==    by 0x8333F7: av_bsf_free (bsf.c:44)
==14524==    by 0x42C1BA: ffmpeg_cleanup (ffmpeg.c:537)
==14524==    by 0x42483F: exit_program (cmdutils.c:138)
==14524==    by 0x414A50: assert_file_overwrite (ffmpeg_opt.c:927)
==14524==    by 0x41C6F1: open_output_file (ffmpeg_opt.c:2559)
==14524==    by 0x41F0F9: open_files (ffmpeg_opt.c:3278)
==14524==    by 0x41F2FD: ffmpeg_parse_options (ffmpeg_opt.c:3332)
==14524==    by 0x43D1F6: main (ffmpeg.c:4786)
==14524==  If you believe this happened as a result of a stack
==14524==  overflow in your program's main thread (unlikely but
==14524==  possible), you can try to increase the size of the
==14524==  main thread stack using the --main-stacksize= flag.
==14524==  The main thread stack size used in this run was 8388608.


[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

When the tyrant has disposed of foreign enemies by conquest or treaty, and
there is nothing more to fear from them, then he is always stirring up
some war or other, in order that the people may require a leader. -- Plato
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20171009/528c8574/attachment.sig>


More information about the ffmpeg-devel mailing list