[FFmpeg-devel] [PATCH] doc/examples/muxing: make compatible with C++
anshul
anshul.ffmpeg at gmail.com
Tue Mar 18 13:34:07 CET 2014
On 03/18/2014 04:57 PM, Clément Bœsch wrote:
> 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...
Working on integration with our build system.
I would maintain them but review would be an extra burden added.
so till we don't have space issue I think its better to give the example
in most possible language.
Thanks
Anshul
More information about the ffmpeg-devel
mailing list