[soc] libavsequencer [PATCH] Provide registration of all mixers for the sequencer
-- Best regards, :-) Basty/CDGS (-:
On Sat, Jul 10, 2010 at 07:38:01PM +0200, Sebastian Vater wrote:
--
Best regards, :-) Basty/CDGS (-:
allmixers.c | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) 186ff20da896429b516bcdc699e201ca3a57c387 allmixers.c.patch diff --git a/libavsequencer/allmixers.c b/libavsequencer/allmixers.c new file mode 100644 index 0000000..a4040cd --- /dev/null +++ b/libavsequencer/allmixers.c @@ -0,0 +1,45 @@ +/* + * Provide registration of all mixers for the sequencer + * Copyright (c) 2010 Sebastian Vater <cdgs.basty@googlemail.com> + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/** + * @file + * Provide registration of all mixers for the sequencer. + */ + +#include "libavsequencer/avsequencer.h" + +#define REGISTER_MIXER(X,x) { \ + extern AVSequencerMixerContext x##_mixer; \ + if(CONFIG_##X##_MIXER) avseq_register(&x##_mixer); } + +void avseq_register_all(void) +{ + static int initialized; + + if (initialized) + return; + initialized = 1; + + /* Mixers */ + REGISTER_MIXER (NULL, null); + REGISTER_MIXER (LOW_QUALITY, lq); + REGISTER_MIXER (HIGH_QUALITY, hq);
if there is nothing but 2 mixers, a simple int mixer_quality in an appropriate struct would provide a much simpler interface [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB If you really think that XML is the answer, then you definitly missunderstood the question -- Attila Kinali
Michael Niedermayer a écrit :
On Sat, Jul 10, 2010 at 07:38:01PM +0200, Sebastian Vater wrote:
--
Best regards, :-) Basty/CDGS (-:
allmixers.c | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) 186ff20da896429b516bcdc699e201ca3a57c387 allmixers.c.patch diff --git a/libavsequencer/allmixers.c b/libavsequencer/allmixers.c new file mode 100644 index 0000000..a4040cd --- /dev/null +++ b/libavsequencer/allmixers.c @@ -0,0 +1,45 @@ +/* + * Provide registration of all mixers for the sequencer + * Copyright (c) 2010 Sebastian Vater <cdgs.basty@googlemail.com> + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/** + * @file + * Provide registration of all mixers for the sequencer. + */ + +#include "libavsequencer/avsequencer.h" + +#define REGISTER_MIXER(X,x) { \ + extern AVSequencerMixerContext x##_mixer; \ + if(CONFIG_##X##_MIXER) avseq_register(&x##_mixer); } + +void avseq_register_all(void) +{ + static int initialized; + + if (initialized) + return; + initialized = 1; + + /* Mixers */ + REGISTER_MIXER (NULL, null); + REGISTER_MIXER (LOW_QUALITY, lq); + REGISTER_MIXER (HIGH_QUALITY, hq);
if there is nothing but 2 mixers, a simple int mixer_quality in an appropriate struct would provide a much simpler interface
Hi I have excellent news! libavsequencer now flawlessly integrates into FFmpeg, just check out my latest git. Please do a git pull --rebase, Stefano had problems without using it. Here are the allmixers.c, configure, common.mak, cmdutils.c, Makefile and libavsequencer.v part of the BSS to review. This version compiles perfectly. -- Best regards, :-) Basty/CDGS (-:
participants (2)
-
Michael Niedermayer -
Sebastian Vater