Opened 11 years ago

Closed 11 years ago

#2624 closed enhancement (invalid)

Simplifying ffserver to make it more easy to maintain

Reported by: burek Owned by:
Priority: wish Component: ffserver
Version: unspecified Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

While working with the 2 of the most popular free audio broadcasting servers: shoutcast and icecast (open-source), I've noticed they are just broadcasting the feed they get from their remote sources, without doing any re-encoding, which simplifies their entire model. Things they mostly do is buffering and broadcasting, so I thought maybe there was a chance to do the same thing with ffserver to simplify it a bit and make it more easy to maintain.

Further more, it might be more straightforward to use it this way, since people would use the desired codecs to encode their streams on the source machine (running ffmpeg), rather than on the ffserver machine, thus it would make ffserver more feasible to run on web hosting servers, because of the lowered cpu usage.

If it would be more convenient, maybe a completely new tool could be created from scratch, which could be extended more easily than ffserver, considering the simpler model it has.

Change History (4)

comment:1 by Carl Eugen Hoyos, 11 years ago

Component: undeterminedFFserver

comment:2 by Elon Musk, 11 years ago

Isn't ffserver already capable of this?

comment:3 by burek, 11 years ago

It appears it is, but the documentation was not clear enough about how the whole thing actually works, so I was confused by <Stream> elements inside ffserver's config file, thinking it defines how ffserver will re-encode the feed stream, when in fact, streams are (apparently) being communicated through that ffm feed connection, so that ffserver can tell ffmpeg how to encode the streams and send it to ffserver. I guess this ticket can then be safely closed. Sorry about that.

comment:4 by Elon Musk, 11 years ago

Resolution: invalid
Status: newclosed
Note: See TracTickets for help on using tickets.