[FFmpeg-devel] Looking for someone who is interested in some (paid!) freelance/consulting work around/in the FFmpeg (C-)codebase.

Thies C. Arntzen thieso at gmail.com
Tue Sep 10 10:33:50 EEST 2019


Hi,

First of all -> THANK YOU FOR FFMPEG!

We are currently building some software on macOS that basically does
screen recording. Today
<http://airmail.calendar/2019-09-10%2012:00:00%20MESZ> we use the
AVFoundation framework for all
compression and movie-file writing. We currently use the macOS VideoToolbox
and
H.265 and H.264 (on older hardware).

We have run across several shortcomings of AVFoundation and are
considering using ffmpeg in certain areas of our work. My initial
tests show that ffmpeg outperforms AVFoundation for our task (no
re-encoding, just reading and writing files) by 10x(!).

Those are the things that are top of my list

- replace file-writing with ffmpeg in our app.
- replace our own av-file concat (many small into one big) with a
ffmpeg based one.
- replace all our analysis/file read tools with ffmpeg based versions.


Having played with the ffmpg-binary on my system I have found the
following problems:

- ffmpeg does not support the "prof" sub type in the "colr" Atom (I
might be using the wrong terminology - sorry for that):

> ffmpeg -i 2019.09.05-17.05.53.2180-1680x1050/movie-small-250x156.mov
-c:v copy out.mov
....
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f8f9d801a00] unsupported
color_parameter_type prof
....

This means that the destination file will not carry the correct
icc-profile and will not playback showing correct colors.

- ffmpeg does not copy the timescale that we use in our files (we have
settled at 600) - I believe that I might just be missing some
parameter?

Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668),
yuv420p(tv, progressive), 250x156 [SAR 1:1 DAR 125:78], 456 kb/s, 60
fps, 60 tbr, 600 tbn, 600 tbc (default)
becomes:
Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668),
yuv420p(tv, progressive), 250x156 [SAR 1:1 DAR 125:78], q=2-31, 456
kb/s, 60 fps, 60 tbr, 19200 tbn, 600 tbc (default)


dumping the files and printing pkt.pts, pkt.dts, pkt.duration shows:

original:
n # pts dts dur
1 0 0 -10 10 [key]
2 0 20 0 10
3 0 10 10 10
4 0 40 20 10

after copy:
n # pts dts dur
1 0 0 -320 320 [key]
2 0 640 0 320
3 0 320 320 320
4 0 1280 640 320


- using concat on certain files I get interesting error messages that
I'd like to reconcile:

[mov @ 0x7f8fc7818c00] Non-monotonous DTS in output stream 0:0;
previous: 10851200, current: 10851200; changing to 10851201. This may
result in incorrect timestamps in the output file.

- after concat certain files have broken frames. Concatenating the
same files using my AVFoundation based tool does mot produce broken
frames.

So - Are you interested in working with us and what would be your
conditions?

Best regards from Hamburg/Germany

Thies
+49 160 8455642


More information about the ffmpeg-devel mailing list