Skip to content

Add feature: set frame #124

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
wants to merge 41 commits into from
Closed

Conversation

cchampet
Copy link
Member

  • Also available for bindings.
  • Clean.

Clement Champetier added 30 commits October 31, 2014 18:40
* Do not duplicate getters with AudioFrameDesc (getSampleRate,
getChannels...).
* Keep symmetry with VideoCodec (rename getFrameDesc to
getAudioFrameDesc).
Add OptionArray and OptionMap.
* Easier to manipulate complexe data (in AvTranscoder and in other
libraries...).
* Remove forward declaration of 'Option': need to include 'Context' to
get 'OptionArray' typedef.
* Test NULL pointer to avoid possible crash.
* Do not skip format name with no video track possible.
Remove assert which are already tested before calling init (private)
function.
We delete all the 'StreamTranscoder' in destructor of 'Transcoder':
can't add a reference to a stream from outside like this.
…Index

Symmetry with other processTranscode method.
* An external library could need to update a specific stream during
process.
* Also add a getter to the current Essence in StreamTranscoder, for the
same reason above.
* 2 tests in the python file:
     * Generate a video stream, and set its frame during process.
     * Generate a audio stream, and set its frame during process.
* Swig: add template to have access to DataBuffer methods in bindings.
* IInputEssence: add virtual method setFrame. Reasons:
     * avoid cast when setFrame.
     * can access this feature whithout issue in bindings.
     * it could be a case to set some frames of a stream which is from
an input file (still not implemented).
* The functions returns duration of last packet added.
* Not what we expected, and not used.
* The method setOutputFps does not do what the user expected: the fps of
Transcoder is only used for progress bar (no consequencies in transcode
process !).
* This kind of method must be implemented in the outputStream on which
we want to update the fps.
This private function decodes the next frame (call
avcodec_decode_audio4).
* Return false as status of decoding if size of frame is 0.
Symmetry with AvInputAudio: add private function decodeNextFrame.
Get Video / Audio FrameDesc from a frameDesc instead of a link to a
codec.
Skip the first one which was an undefined codec in the enum list.
Clement Champetier added 9 commits November 3, 2014 13:47
* Manage memory of StreamTranscoder by spliting streams into 2 vectors.
* Add pyTest "testTranscoderAdd" to test if we correctly manage memory.
Get only one instruction "new".
* To manage cases with generators: a user can overload his Generator and
create a StreamTranscoder.
* Update testSetFrame.py
@cchampet
Copy link
Member Author

cchampet commented Nov 5, 2014

PyTests which use GeneratorAudio failed after the last commit. I don't no why...
@MarcAntoine-Arnaud have you got an idea ?

@MarcAntoine-Arnaud
Copy link
Member

On mac it will be correct.
Locally what's append ? With which version of FFMpeg ?
Maybe try to upgrade the FFMpeg version ?

@cchampet
Copy link
Member Author

cchampet commented Nov 6, 2014

The Travis MAC OS jobs work because they do not launch pyTest.
These tests crashed:

  • testSetFrame.py: testSetAudioFrame
  • testTranscoderDummy.py: testTranscodeDummyAudio
    Seg fault when ffmpeg called avcodec_encode_audio2. I'm using ffmpeg-2.2.2 and Travis uses ffmpeg-2.2.9

Clement Champetier added 2 commits November 6, 2014 10:42
…into dev_setFrame

Conflicts:
	src/AvTranscoder/transcoder/StreamTranscoder.hpp
	src/AvTranscoder/transcoder/Transcoder.cpp
	src/AvTranscoder/transcoder/Transcoder.hpp
…into dev_setFrame

Conflicts:
	src/AvTranscoder/transcoder/Transcoder.cpp
	src/AvTranscoder/transcoder/Transcoder.hpp
@cchampet cchampet closed this Nov 20, 2014
@cchampet cchampet deleted the dev_setFrame branch January 30, 2015 16:35
cchampet pushed a commit to cchampet/avTranscoder that referenced this pull request Mar 13, 2015
* Can install doc by using: 'make install doc'.
* Note: the doc is not generate by the default target ('all').
* Fix avTranscoder#124
cchampet pushed a commit to cchampet/avTranscoder that referenced this pull request Mar 17, 2015
* Can install doc by using: 'make install doc'.
* Note: the doc is not generate by the default target ('all').
* Fix avTranscoder#124
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