[FFmpeg-devel] [GSoC] FFserver libmicrohttpd interface

Michael Niedermayer michael at niedermayer.cc
Tue Aug 14 20:02:03 EEST 2018


On Mon, Aug 13, 2018 at 11:44:07PM +0200, Stephan Holljes wrote:
> On Sat, Aug 11, 2018 at 3:58 AM, Michael Niedermayer
> <michael at niedermayer.cc> wrote:
> > On Thu, Aug 09, 2018 at 02:46:59PM +0200, Stephan Holljes wrote:
> >> On Thu, Aug 2, 2018 at 1:00 AM, Stephan Holljes
> >> <klaxa1337 at googlemail.com> wrote:
> >> > After fighting for a bit too long, I am finally submitting this patch series
> >> > that adds the more mature libmicrohttpd library. Client disconnect detection
> >> > is not really taken care of as of now, clients will be disconnected once
> >> > av_interleaved_write_frame() fails. This may be worth looking into more
> >> > closely, see below.
> >> >
> >> > Other fixes and improvements are also contained, the most important ones:
> >> >   - fix compilation (fileserver.c/.h's fileserver_schedule() was broken.
> >> >   - properly handle file requests if no fileserver is running (prevents crash)
> >> >
> >> > At the moment there is a memory-leak I can't seem to fix. It is the connection-
> >> > closure (**con_cls) in lmhttpd.c:answer_to_connection(). In the libmicrohttpd
> >> > examples a function to free it is passed to MHD_create_response_from_callback(),
> >> > however this leads to a heap-use-after-free bug. This happens when a client
> >> > disconnects prematurely.
> >> >
> >> > Another but I could not reliably reproduce is the skipping of segments from the
> >> > server side. It occurs very rarely and as I said I could not reproduce it yet.
> >> >
> >> > There may even be more bugs I am currently unaware of, these just took the
> >> > highest priority for fixing in my opinion.
> >> >
> >>
> >> Ping? Also I put everything up here for submission:
> >> https://github.com/klaxa/ffserver
> >>
> >> If you want me to submit something different, have suggestions for
> >> changes or something else, please comment.
> >
> > is there something like a selftest? even a very basic one ?
> > like make fate (but could be VERY much simpler, even a single simple test
> >
> > thanks
> >
> > [...]
> > --
> > Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> >
> > It is dangerous to be right in matters on which the established authorities
> > are wrong. -- Voltaire
> >
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel at ffmpeg.org
> > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> 
> I spent the last days working on a test and it passes when using mkv,
> however for HLS and DASH it does not work (with HLS it appears the
> timestamps are off and with DASH I have no idea so far what the issue
> is for now.) I will shortly send the patch to the ML.
> It is a simple bash script that generates a video with lavfi, and
> ffserver restreaming it with ffmpeg and curl as clients. The resulting
> videos (including the original generated one) are checked with
> framecrc against each other.
> 

> After looking at FFmpeg's Makefile I'm not sure how to incorporate the
> script into the Makefile so you can run `make test` or something
> similar. Also, maybe having bash (and curl) as dependencies is not
> desirable?

generally ffmpeg scripts (like configure) work with any posix compatibel shell.
So bash dependancies should be avoided if possible


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

Complexity theory is the science of finding the exact solution to an
approximation. Benchmarking OTOH is finding an approximation of the exact
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20180814/689c6d41/attachment.sig>


More information about the ffmpeg-devel mailing list