From d17d8ef3e9adf37718669534e7a2a60be2af4840 Mon Sep 17 00:00:00 2001 From: Clement Champetier Date: Mon, 27 Oct 2014 11:47:49 +0100 Subject: [PATCH 1/2] Swig: add file to generate documentation * Use swig feature to generate python auto-documentation. * Still no way to generate javadoc from C++ documentation. --- src/AvTranscoder/avTranscoder.i | 1 + src/AvTranscoder/swig/avDocumentation.i | 2 ++ 2 files changed, 3 insertions(+) create mode 100644 src/AvTranscoder/swig/avDocumentation.i diff --git a/src/AvTranscoder/avTranscoder.i b/src/AvTranscoder/avTranscoder.i index de4b1abd..3530f48b 100644 --- a/src/AvTranscoder/avTranscoder.i +++ b/src/AvTranscoder/avTranscoder.i @@ -9,6 +9,7 @@ %include "AvTranscoder/swig/avException.i" %include "AvTranscoder/swig/avExport.i" +%include "AvTranscoder/swig/avDocumentation.i" %{ #include diff --git a/src/AvTranscoder/swig/avDocumentation.i b/src/AvTranscoder/swig/avDocumentation.i new file mode 100644 index 00000000..b652231c --- /dev/null +++ b/src/AvTranscoder/swig/avDocumentation.i @@ -0,0 +1,2 @@ +/* Python-specific documentation. */ +%feature("autodoc", "3"); From 4f58d4514ff32ef7ca308a20c739381ddca3455a Mon Sep 17 00:00:00 2001 From: Clement Champetier Date: Mon, 27 Oct 2014 11:50:12 +0100 Subject: [PATCH 2/2] Swig: fix binding Rational issue * Add avRational.i, which declares AVRational struct to swig. * Update pyTest which use Rational. --- src/AvTranscoder/avTranscoder.i | 1 + src/AvTranscoder/common.hpp | 1 + src/AvTranscoder/mediaProperty/mediaProperty.hpp | 4 ---- src/AvTranscoder/swig/avRational.i | 7 +++++++ test/pyTest/testTranscoderRewrap.py | 12 ++++++------ 5 files changed, 15 insertions(+), 10 deletions(-) create mode 100644 src/AvTranscoder/swig/avRational.i diff --git a/src/AvTranscoder/avTranscoder.i b/src/AvTranscoder/avTranscoder.i index 3530f48b..2fcd38db 100644 --- a/src/AvTranscoder/avTranscoder.i +++ b/src/AvTranscoder/avTranscoder.i @@ -10,6 +10,7 @@ %include "AvTranscoder/swig/avException.i" %include "AvTranscoder/swig/avExport.i" %include "AvTranscoder/swig/avDocumentation.i" +%include "AvTranscoder/swig/avRational.i" %{ #include diff --git a/src/AvTranscoder/common.hpp b/src/AvTranscoder/common.hpp index 7c3c1c52..31baf4ef 100644 --- a/src/AvTranscoder/common.hpp +++ b/src/AvTranscoder/common.hpp @@ -12,6 +12,7 @@ extern "C" { #include #include #include +#include } #include diff --git a/src/AvTranscoder/mediaProperty/mediaProperty.hpp b/src/AvTranscoder/mediaProperty/mediaProperty.hpp index 19163a67..68a3c038 100644 --- a/src/AvTranscoder/mediaProperty/mediaProperty.hpp +++ b/src/AvTranscoder/mediaProperty/mediaProperty.hpp @@ -3,10 +3,6 @@ #include -extern "C" { -#include -} - #include #include #include diff --git a/src/AvTranscoder/swig/avRational.i b/src/AvTranscoder/swig/avRational.i new file mode 100644 index 00000000..d2947351 --- /dev/null +++ b/src/AvTranscoder/swig/avRational.i @@ -0,0 +1,7 @@ +/** + * Rational number numerator/denominator. + */ +typedef struct AVRational{ + int num; ///< numerator + int den; ///< denominator +} AVRational; diff --git a/test/pyTest/testTranscoderRewrap.py b/test/pyTest/testTranscoderRewrap.py index 638a61f4..e48bcfe7 100644 --- a/test/pyTest/testTranscoderRewrap.py +++ b/test/pyTest/testTranscoderRewrap.py @@ -110,12 +110,12 @@ def testRewrapVideoStream(): assert_equals( src_videoStream.endianess, dst_videoStream.endianess ) assert_equals( src_videoStream.startTimecode, dst_videoStream.startTimecode ) - #assert_equals( src_videoStream.timeBase.num, dst_videoStream.timeBase.num ) - #assert_equals( src_videoStream.timeBase.den, dst_videoStream.timeBase.den ) - #assert_equals( src_videoStream.sar.num, dst_videoStream.sar.num ) - #assert_equals( src_videoStream.sar.den, dst_videoStream.sar.den ) - #assert_equals( src_videoStream.dar.num, dst_videoStream.dar.num ) - #assert_equals( src_videoStream.dar.den, dst_videoStream.dar.den ) + assert_equals( src_videoStream.timeBase.num, dst_videoStream.timeBase.num ) + assert_equals( src_videoStream.timeBase.den, dst_videoStream.timeBase.den ) + assert_equals( src_videoStream.sar.num, dst_videoStream.sar.num ) + assert_equals( src_videoStream.sar.den, dst_videoStream.sar.den ) + assert_equals( src_videoStream.dar.num, dst_videoStream.dar.num ) + assert_equals( src_videoStream.dar.den, dst_videoStream.dar.den ) assert_equals( src_videoStream.streamId, dst_videoStream.streamId ) assert_equals( src_videoStream.codecId, dst_videoStream.codecId )