[FFmpeg-devel] [PATCH] doc/examples/muxing: make compatible with C++

Clément Bœsch u at pkh.me
Tue Mar 18 12:27:25 CET 2014


On Tue, Mar 18, 2014 at 04:12:49PM +0530, anshul wrote:
> On 03/18/2014 12:28 AM, Stefano Sabatini wrote:
> >On date Friday 2014-03-14 17:15:23 +0100, Michael Niedermayer encoded:
> >>On Fri, Mar 14, 2014 at 10:17:16AM +0100, Stefano Sabatini wrote:
> >>>On date Thursday 2014-03-13 23:10:40 +0100, Clément Bœsch encoded:
> >>>>On Thu, Mar 13, 2014 at 06:03:49PM +0100, Michael Niedermayer wrote:
> >>>[...]
> >>>>I don't think supporting examples compilation with g++ is worth the
> >>>>effort. Actually, I believe it's harmful because people doing C will start
> >>>>copying naive/broken/c++ patterns (are you going to cast malloc() return
> >>>>values too?).
> >>>+1, we decided FFmpeg was C and we shouldn't try to make half-baked
> >>>attempts at pretending it is C++ or the next looks-almost-like-c
> >>>thing.
> >>this patch doesnt change ffmpeg, it changes the examples.
> >>
> >>People who want to use ffmpeg from C++ need examples which work in
> >>C++.
> >>ive written that patch in response to a question of how to do what
> >>muxing.c does from C++ as it didnt build even with extern C and the
> >>error messages truly where not helpfull in figuring out what was
> >>the cause.
> >We have this page:
> >http://trac.ffmpeg.org/wiki/Including%20FFmpeg%20headers%20in%20a%20C%2B%2B%20application
> >
> >We could extend the page, probably rename it, add more comments about
> >using FFmpeg from C++ and link it from the README (which we should
> >rename DONTREADME so people would actually read it).
> >
> >As it is the patch is half baked, because:
> >
> >1. it is not written anywhere that examples can be directly converted
> >to C++ code
> >2. the preprocessor hack is only adopted in muxing.c, ignoring all the
> >other C examples.
> Hi
> 
> Here is patch attached for cpp examples files.
> 
> Please report if they fail to compile or do there intended job.
> 
> 
> Thanks
> Anshul

> From 6adc8aaf4da5bb829505f398c0c7d2be8e22081d Mon Sep 17 00:00:00 2001
> From: Anshul Maheshwari <er.anshul.maheshwari at gmail.com>
> Date: Tue, 18 Mar 2014 16:07:20 +0530
> Subject: [PATCH] added examples in cpp
> 
> ---
>  doc/examples_cpp/Makefile              |  44 ++
>  doc/examples_cpp/avcodec.cpp           | 659 ++++++++++++++++++++++++++++
>  doc/examples_cpp/avio_reading.cpp      | 134 ++++++
>  doc/examples_cpp/demuxing_decoding.cpp | 387 +++++++++++++++++
>  doc/examples_cpp/filter_audio.cpp      | 364 ++++++++++++++++
>  doc/examples_cpp/filtering_audio.cpp   | 283 +++++++++++++
>  doc/examples_cpp/filtering_video.cpp   | 263 ++++++++++++
>  doc/examples_cpp/metadata.cpp          |  58 +++
>  doc/examples_cpp/muxing.cpp            | 614 +++++++++++++++++++++++++++
>  doc/examples_cpp/remuxing.cpp          | 173 ++++++++
>  doc/examples_cpp/resampling_audio.cpp  | 218 ++++++++++
>  doc/examples_cpp/scaling_video.cpp     | 143 +++++++
>  doc/examples_cpp/transcode_aac.cpp     | 754 +++++++++++++++++++++++++++++++++
>  doc/examples_cpp/transcoding.cpp       | 602 ++++++++++++++++++++++++++
>  14 files changed, 4696 insertions(+)
>  create mode 100644 doc/examples_cpp/Makefile
>  create mode 100644 doc/examples_cpp/avcodec.cpp
>  create mode 100644 doc/examples_cpp/avio_reading.cpp
>  create mode 100644 doc/examples_cpp/demuxing_decoding.cpp
>  create mode 100644 doc/examples_cpp/filter_audio.cpp
>  create mode 100644 doc/examples_cpp/filtering_audio.cpp
>  create mode 100644 doc/examples_cpp/filtering_video.cpp
>  create mode 100644 doc/examples_cpp/metadata.cpp
>  create mode 100644 doc/examples_cpp/muxing.cpp
>  create mode 100644 doc/examples_cpp/remuxing.cpp
>  create mode 100644 doc/examples_cpp/resampling_audio.cpp
>  create mode 100644 doc/examples_cpp/scaling_video.cpp
>  create mode 100644 doc/examples_cpp/transcode_aac.cpp
>  create mode 100644 doc/examples_cpp/transcoding.cpp
> 

This lacks the integration with our build system. It sounds like this is
going to be a hell to maintain...

[...]

-- 
Clément B.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20140318/9c0182c5/attachment.asc>


More information about the ffmpeg-devel mailing list