1. 05 Sep, 2019 1 commit
  2. 30 Aug, 2019 2 commits
  3. 29 Aug, 2019 1 commit
  4. 28 Aug, 2019 1 commit
  5. 27 Aug, 2019 1 commit
  6. 24 Aug, 2019 1 commit
  7. 23 Aug, 2019 1 commit
    • Marton Balint's avatar
      avformat/mpegtsenc: get rid of packet counting for sdt/pat/pmt · 2fb55089
      Marton Balint authored
      The packet counting based approach caused excessive sdt/pat/pmt for VBR, so
      let's use a timestamp based approach instead similar to how we emit PCRs.
      SDT/PAT/PMT period should be consistent for both VBR and CBR from now on.
      
      Also change the type of sdt_period and pat_period to AV_OPT_TYPE_DURATION so no
      floating point math is necessary.
      
      Fixes ticket #3714.
      Signed-off-by: 's avatarMarton Balint <cus@passwd.hu>
      2fb55089
  8. 19 Aug, 2019 1 commit
    • Guo, Yejun's avatar
      FATE/dnn: let fate/dnn tests depend on ffmpeg static libraries · d0fa1a58
      Guo, Yejun authored
      background:
      DNN (deep neural network) is a sub module of libavfilter, and FATE/dnn
      is unit test for the DNN module, one unit test for one dnn layer.
      The unit tests are not based on the APIs exported by libavfilter,
      they just directly call into the functions within DNN submodule.
      
      There is an issue when run the following command:
      build$ ../ffmpeg/configure --disable-static --enable-shared
      make
      make fate-dnn-layer-pad
      
      And part of error message:
      tests/dnn/dnn-layer-pad-test.o: In function `test_with_mode_symmetric':
      /work/media/ffmpeg/build/src/tests/dnn/dnn-layer-pad-test.c:73: undefined reference to `dnn_execute_layer_pad'
      
      The root cause is that function dnn_execute_layer_pad is a LOCAL symbol
      in libavfilter.so, and so the linker could not find it when build dnn-layer-pad-test.
      To check it, just run: readelf -s libavfilter/libavfilter.so | grep dnn
      
      So, add dependency in fate/dnn Makefile with ffmpeg static libraries.
      This is the same method used in fate/checkasm
      Signed-off-by: 's avatarGuo, Yejun <yejun.guo@intel.com>
      Signed-off-by: 's avatarPedro Arthur <bygrandao@gmail.com>
      d0fa1a58
  9. 17 Aug, 2019 2 commits
  10. 13 Aug, 2019 1 commit
  11. 05 Aug, 2019 1 commit
  12. 01 Aug, 2019 1 commit
  13. 29 Jul, 2019 1 commit
  14. 25 Jul, 2019 1 commit
  15. 22 Jul, 2019 2 commits
    • Limin Wang's avatar
      avformat/f_select: add support for more pixel formats for scene change score calculations · b696caba
      Limin Wang authored
      This avoids automatic conversions to rgb if scene change score is used in the expression.
      
      Below is the tested results for the new added pixel format without autoscale to rgb24:
      1. AV_PIX_FMT_YUVJ420P
      time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
      "sws_flags=+accurate_rnd+bitexact;movie=../fate-suite/svq3/Vertical400kbit.sorenson3.mov,select=gt(scene\,.25)"
      
      master:
      pkt_pts=1620|tag:lavfi.scene_score=1.000000
      pkt_pts=4140|tag:lavfi.scene_score=0.875036
      pkt_pts=5800|tag:lavfi.scene_score=1.000000
      pkt_pts=6720|tag:lavfi.scene_score=0.461625
      pkt_pts=8160|tag:lavfi.scene_score=1.000000
      pkt_pts=9760|tag:lavfi.scene_score=1.000000
      pkt_pts=14080|tag:lavfi.scene_score=0.838916
      pkt_pts=15700|tag:lavfi.scene_score=1.000000
      pkt_pts=18500|tag:lavfi.scene_score=0.474948
      pkt_pts=20040|tag:lavfi.scene_score=0.379700
      pkt_pts=21760|tag:lavfi.scene_score=1.000000
      ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f  0.71s user 0.01s system 99% cpu 0.721 total
      
      patch applied:
      pkt_pts=1620|tag:lavfi.scene_score=1.000000
      pkt_pts=4140|tag:lavfi.scene_score=0.668643
      pkt_pts=5800|tag:lavfi.scene_score=0.996721
      pkt_pts=6720|tag:lavfi.scene_score=0.357390
      pkt_pts=8160|tag:lavfi.scene_score=0.886268
      pkt_pts=9760|tag:lavfi.scene_score=0.926219
      pkt_pts=14080|tag:lavfi.scene_score=0.650033
      pkt_pts=15700|tag:lavfi.scene_score=1.000000
      pkt_pts=18500|tag:lavfi.scene_score=0.316402
      pkt_pts=20040|tag:lavfi.scene_score=0.269509
      pkt_pts=21760|tag:lavfi.scene_score=1.000000
      ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f  0.19s user 0.01s system 81% cpu 0.240 total
      
      2. AV_PIX_FMT_YUV420P
      time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
      "sws_flags=+accurate_rnd+bitexact;movie=../Passengers_Breakfast_1080-sdr.mkv,select=gt(scene\,.2)"
      master:
      pkt_pts=3587|tag:lavfi.scene_score=0.462364
      pkt_pts=4838|tag:lavfi.scene_score=0.419519
      pkt_pts=6548|tag:lavfi.scene_score=0.397027
      pkt_pts=9968|tag:lavfi.scene_score=0.419245
      pkt_pts=12471|tag:lavfi.scene_score=0.413084
      pkt_pts=16225|tag:lavfi.scene_score=0.506370
      pkt_pts=19645|tag:lavfi.scene_score=0.507538
      pkt_pts=22314|tag:lavfi.scene_score=0.504319
      pkt_pts=24817|tag:lavfi.scene_score=0.417544
      pkt_pts=25651|tag:lavfi.scene_score=0.413916
      pkt_pts=26652|tag:lavfi.scene_score=0.487707
      18.58s user 0.07s system 99% cpu 18.663 total
      
      patch applied:
      pkt_pts=3587|tag:lavfi.scene_score=0.272173
      pkt_pts=4838|tag:lavfi.scene_score=0.247841
      pkt_pts=6548|tag:lavfi.scene_score=0.233134
      pkt_pts=9968|tag:lavfi.scene_score=0.247253
      pkt_pts=12471|tag:lavfi.scene_score=0.244129
      pkt_pts=16225|tag:lavfi.scene_score=0.302531
      pkt_pts=19645|tag:lavfi.scene_score=0.303560
      pkt_pts=22314|tag:lavfi.scene_score=0.301861
      pkt_pts=24817|tag:lavfi.scene_score=0.249331
      pkt_pts=25651|tag:lavfi.scene_score=0.247096
      pkt_pts=26652|tag:lavfi.scene_score=0.287728
      10.90s user 0.06s system 99% cpu 10.967 total
      
      3. AV_PIX_FMT_YUV422P
      
      time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
      "sws_flags=+accurate_rnd+bitexact;movie=../Passengers_Breakfast_1080-sdr.mkv,format=yuv422p,select=gt(scene\,.2)"
      master:
      
      patched applied:
      pkt_pts=3587|tag:lavfi.scene_score=0.224017
      pkt_pts=4838|tag:lavfi.scene_score=0.204225
      pkt_pts=9968|tag:lavfi.scene_score=0.204636
      pkt_pts=12471|tag:lavfi.scene_score=0.202772
      pkt_pts=16225|tag:lavfi.scene_score=0.248765
      pkt_pts=19645|tag:lavfi.scene_score=0.250144
      pkt_pts=22314|tag:lavfi.scene_score=0.248802
      pkt_pts=24817|tag:lavfi.scene_score=0.208362
      pkt_pts=25651|tag:lavfi.scene_score=0.205777
      pkt_pts=26652|tag:lavfi.scene_score=0.230742
      
      4.  AV_PIX_FMT_YUV420P10
      time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
      "sws_flags=+accurate_rnd+bitexact;movie=../Passengers_Breakfast_4k.mkv,select=gt(scene\,.2)"
      
      master:
      pkt_pts=3587|tag:lavfi.scene_score=0.269890
      pkt_pts=4838|tag:lavfi.scene_score=0.248957
      pkt_pts=6548|tag:lavfi.scene_score=0.234619
      pkt_pts=9969|tag:lavfi.scene_score=0.224912
      pkt_pts=12471|tag:lavfi.scene_score=0.225158
      pkt_pts=16225|tag:lavfi.scene_score=0.289809
      pkt_pts=19645|tag:lavfi.scene_score=0.285013
      pkt_pts=22314|tag:lavfi.scene_score=0.280295
      pkt_pts=24817|tag:lavfi.scene_score=0.206486
      pkt_pts=25651|tag:lavfi.scene_score=0.208556
      pkt_pts=26652|tag:lavfi.scene_score=0.249577
      ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f  76.03s user 0.22s system 99% cpu 1:16.27 total
      
      patch applied
      pkt_pts=3587|tag:lavfi.scene_score=0.269890
      pkt_pts=4838|tag:lavfi.scene_score=0.248957
      pkt_pts=6548|tag:lavfi.scene_score=0.234619
      pkt_pts=9969|tag:lavfi.scene_score=0.224912
      pkt_pts=12471|tag:lavfi.scene_score=0.225158
      pkt_pts=16225|tag:lavfi.scene_score=0.289809
      pkt_pts=19645|tag:lavfi.scene_score=0.285013
      pkt_pts=22314|tag:lavfi.scene_score=0.280295
      pkt_pts=24817|tag:lavfi.scene_score=0.206486
      pkt_pts=25651|tag:lavfi.scene_score=0.208556
      pkt_pts=26652|tag:lavfi.scene_score=0.249577
      ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f  50.27s user 0.20s system 99% cpu 50.476 total
      
      5. AV_PIX_FMT_RGBA, AV_PIX_FMT_ABGR, AV_PIX_FMT_BGRA, AV_PIX_FMT_GRAY8
      are tested by format= with the fate sample: Vertical400kbit.sorenson3.mov like below:
      time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
      "sws_flags=+accurate_rnd+bitexact;movie=../fate-suite/svq3/Vertical400kbit.sorenson3.mov,format=rgba,select=gt(scene\,.25)"
      
      patch applied:
      pkt_pts=1620|tag:lavfi.scene_score=1.000000
      pkt_pts=4140|tag:lavfi.scene_score=0.656277
      pkt_pts=5800|tag:lavfi.scene_score=1.000000
      pkt_pts=6720|tag:lavfi.scene_score=0.346218
      pkt_pts=8160|tag:lavfi.scene_score=0.987686
      pkt_pts=9760|tag:lavfi.scene_score=1.000000
      pkt_pts=14080|tag:lavfi.scene_score=0.629187
      pkt_pts=15700|tag:lavfi.scene_score=1.000000
      pkt_pts=18500|tag:lavfi.scene_score=0.356211
      pkt_pts=20040|tag:lavfi.scene_score=0.284775
      pkt_pts=21760|tag:lavfi.scene_score=1.000000
      
      6. AV_PIX_FMT_YUVJ422P
      time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
      "sws_flags=+accurate_rnd+bitexact;movie=../fate-suite/svq3/Vertical400kbit.sorenson3.mov,format=yuvj422p,select=gt(scene\,.25)"
      
      patch applied:
      pkt_pts=1620|tag:lavfi.scene_score=0.838281
      pkt_pts=4140|tag:lavfi.scene_score=0.541382
      pkt_pts=5800|tag:lavfi.scene_score=0.780588
      pkt_pts=6720|tag:lavfi.scene_score=0.298274
      pkt_pts=8160|tag:lavfi.scene_score=0.699106
      pkt_pts=9760|tag:lavfi.scene_score=0.730136
      pkt_pts=14080|tag:lavfi.scene_score=0.537742
      pkt_pts=15700|tag:lavfi.scene_score=0.811946
      pkt_pts=18500|tag:lavfi.scene_score=0.263382
      pkt_pts=21760|tag:lavfi.scene_score=0.880773
      Reviewed-by: 's avatarMarton Balint <cus@passwd.hu>
      Signed-off-by: 's avatarLimin Wang <lance.lmwang@gmail.com>
      b696caba
    • Limin Wang's avatar
      fate: change the scenecut fate threshold · d75c7dd4
      Limin Wang authored
      why change .4 to .25, it's for:
      one scenecut(pkt_pts=20040) isn't detected by 0.4 threshold
      
      why not change to 0.3 instead of 0.25:
      it will miss the scenecut(pkt_pts=20040) after applying the next
      patch which enables yuvj420
      
      for fate testing, it's better to catch all scenecut scenes.
      Reviewed-by: 's avatarMarton Balint <cus@passwd.hu>
      Signed-off-by: 's avatarLimin Wang <lance.lmwang@gmail.com>
      d75c7dd4
  16. 15 Jul, 2019 1 commit
  17. 12 Jul, 2019 1 commit
  18. 11 Jul, 2019 2 commits
  19. 07 Jul, 2019 1 commit
  20. 12 Jun, 2019 3 commits
  21. 09 Jun, 2019 1 commit
  22. 14 May, 2019 1 commit
  23. 12 May, 2019 3 commits
    • Philip Langdale's avatar
      swscale: Add test for isSemiPlanarYUV to pixdesc_query · 4fa4f1d7
      Philip Langdale authored
      Lauri had asked me what the semi planar formats were and that reminded
      me that we could add it to pixdesc_query so we know exactly what the
      list is.
      4fa4f1d7
    • Philip Langdale's avatar
      swscale: Add support for NV24 and NV42 · cd483180
      Philip Langdale authored
      The implementation is pretty straight-forward. Most of the existing
      NV12 codepaths work regardless of subsampling and are re-used as is.
      Where necessary I wrote the slightly different NV24 versions.
      
      Finally, the one thing that confused me for a long time was the
      asm specific x86 path that did an explicit exclusion check for NV12.
      I replaced that with a semi-planar check and also updated the
      equivalent PPC code, which Lauri kindly checked.
      cd483180
    • Philip Langdale's avatar
      avutil: Add NV24 and NV42 pixel formats · 5de4f1d8
      Philip Langdale authored
      These are the 4:4:4 variants of the semi-planar NV12/NV21 formats.
      
      These formats are not used much, so we've never had a reason to add
      them until now. VDPAU recently added support HEVC 4:4:4 content
      and when you use the OpenGL interop, the returned surfaces are in
      NV24 format, so we need the pixel format for media players, even
      if there's no direct use within ffmpeg.
      
      Separately, there are apparently webcams that use NV24, but I've
      never seen one.
      5de4f1d8
  24. 08 May, 2019 3 commits
  25. 03 May, 2019 1 commit
  26. 02 May, 2019 1 commit
  27. 23 Apr, 2019 1 commit
  28. 22 Apr, 2019 1 commit
  29. 19 Apr, 2019 1 commit
  30. 18 Apr, 2019 1 commit