Skip to content

Refactore media properties - v2 #130

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

cchampet
Copy link
Member

Instead of making copies of all data, converting them our types (char* to string, etc...) and making our transformations (the 'sampleFormatLongName' for example), here we store pointers to FFmpeg objects (AVCodecContext, AVFormatContext, etc...) and have getters around these objects, which access and transform the data the way we want.

Note: some data are not perfectly handled by the FFmpeg library. We fix it by creating copies for them in the corresponding class.
Note bis: need to update pyTest in this PR.

Next step: store metadata in a schema like EBU-Core which can contains technical and editorial metadatas.

Clement Champetier added 9 commits November 12, 2014 17:17
* Rename printMediaProperty.hpp to print.hpp
* Rename <type>StreamProperty.hpp to <type>Properties.hpp
* util contains enum EAnalyseLevel.
* Use level of analyse when create VideoProperties while input file
analysis.
* Rename eAnalyseLevelFast to eAnalyseLevelHeader
* Rename eAnalyseLevelFast to eAnalyseLevelFirstGop
Clement Champetier added 14 commits November 17, 2014 14:19
Split properties nstantiation into 2 lines: better for debugging with
breakpoint and easier to read.
Need to add directives in SWIG interface to explicitly remove vector's
methods which need the default constructor.
This removes multi call to avcodec_find_decoder().
Clean preprocessor instructions.
This removes multi call to avcodec_find_decoder().
* If can't acces the data:
     * return an error (a particular string for example).
     * or throw a runtime exception if no way to return an error.
Avoid to call default constructor and set each attributes.
Fix FileProperties for binding: need to add 'avtranscoder' namespace
when return vector of properties (Video, Audio, ...). This enables SWIG
to understand that results of these functions are templates it has
already instanciated in the interface.
@cchampet cchampet deleted the dev_refactore_media_properties_v2 branch January 30, 2015 16:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants