GitHub user sreid8 opened a pull request:

    https://github.com/apache/guacamole-server/pull/159

    GUACAMOLE-465: beginning to support new codecs and containers

    This patch adds a dependency to "libavformat", the ffmpeg library that 
handles writing video and audio streams properly into video/audio containers. 
The patch makes NO changes to the way that guacenc functions from the user 
perspective. 
    
    This change is required to eventually support more codecs and containers. 
Previously, guacenc wrote encoded video frames directly into an output file. 
This works perfectly file for mpeg4 in an m4v container, but will not work for 
most other combinations (like h.264 in mp4, for example). However, this patch 
does not add any support for any new codecs or containers. After this patch, 
guacenc will still _only_ support mpeg4 in m4v. 
    
    This is patch 1 of 3 that will be provided for GUACAMOLE-465. The code for 
the other patches is written already on a branch that I've been maintaining, 
but in the interest in getting the functionality merged, I'm breaking it into 
multiple patches to make it easier to review.
    **The current plans for the next patches are as follows:**
    - Patch 2 will add the ability for the user to decide to specify input and 
output files rather that using the current batch interface, but will still 
provide the batch interface.
    - Patch 3 will add h.264, VP8, and h.265 codecs in addition to the already 
existing mpeg4 and will also add mp4 and webm container support in addition to 
the already existing m4v support.
    
    I welcome any suggestions for changes for this to be merged and will answer 
any questions about decisions I made while writing the patch.  This _will_ 
require changes to the Guacamole Manual, but I didn't see those documents in 
the repo, so I haven't modified them myself. If those documents are open and 
accept pull requests, I will gladly update them myself as part of this patch.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/sreid8/guacamole-server guacenc_libavformat

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/guacamole-server/pull/159.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #159
    
----
commit 35531c1e3d9bb8da15745834411292f0e2e3bf39
Author: Sean Reid <sean.reid8@...>
Date:   2018-03-10T15:57:32Z

    GUACAMOLE-465: added dependency to libavformat as first step to supporting 
other types of codecs and containers in guacenc. migrated existing 
functionality to use the libavformat library for writing the files. there is 
not differnce to the user with this patch, but it provides a good base to 
finish this new feature from later

----


---

Reply via email to