-
Notifications
You must be signed in to change notification settings - Fork 50
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
cchampet
wants to merge
23
commits into
avTranscoder:master
from
cchampet:dev_refactore_media_properties_v2
Closed
Refactore media properties - v2 #130
cchampet
wants to merge
23
commits into
avTranscoder:master
from
cchampet:dev_refactore_media_properties_v2
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Rename printMediaProperty.hpp to print.hpp * Rename <type>StreamProperty.hpp to <type>Properties.hpp
* Add files <type>Properties (cpp)
* util contains enum EAnalyseLevel. * Use level of analyse when create VideoProperties while input file analysis.
* Rename eAnalyseLevelFast to eAnalyseLevelHeader * Rename eAnalyseLevelFast to eAnalyseLevelFirstGop
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().
* small case. * without point.
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.
* Camel case. * No spaces.
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.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.