- in QqWidget::QqWidget, connected the texto's textChanged
signal to the modTextLayer slot.
-in QqWidget::modTextLayer, added a call to resseZoom
function so that the text is displayed correctly.
- in theorautils, still work needs to be done for the skeleton
- In QqWidget::changeFps, sets fps to origin fps when slider back to the
middle.
- In FPS class, added a coefficient (_ratio) to control the drift
by adjusting the time (_period) to wait for.
- Created a QqComboRes class.
- In Layer class, added the types VIDEOLAYER and V4L2LAYER.
- In v4l2_layer.h and .cpp, created a Res class containing the
available resolutions.
- In QqWidget conctructor, determines if the layer is a v4l2 layer,
added a combobox with the different resolutions if it is.
- In a Qfreej menu, added the full screen function.
- in FPS::calc, rate renamed _period and now in the class declaration.
commented out the stats stuff ... does not seem to be used.
In FPS::delay, added an other nanosleep function for the last 100 us
+ a viariable for fine tuning. Seems to work not to bad on my machine,
but needs to be tested on others.
- In VideoLayer, deleted some printed information.
- In QqWidget::QqWidget, modified the FPS to be changed in percentage.
changed actualFps and normalFps to be taken as a float.
- In FPS:: , modified to use float instead of int.
- In oggmux_add_audio, limit the ratio to +- 10% resampling, which
is a lot ..... just in case of big drift.
- In TextLayer destructor, commented out close() method that was generated
a SEGFAULT.
- In QqWidget destructor now stop and delete the layer attached.
Text Layer can be closed and text disappears.
- In VideoLayer::open, try to first use the r_frame_rate instead of the
time_base to calculate the frame rate. Frame rate was wrong (x10) on some
mp4 files (empirical).
- In QqWidget, no more need to test if fps is wrong .... I hope :)
In destructor, commented out ctx->rem_layer(qLayer); to avoid SEGFAULT
on close.
- In QqFilterParam constructor setted WA_QuitOnClose to false
so that the filter window closes if the main window closes.
- Same for QqWidget
- Same for QEncoder
Erased some wrong delete :)
- in QqWidget, initialyse *m_qGeneLayer to NULL. Deleted some lines
commented out code.
Added a QLogger class for the future logs ... I hope
- in Qfreej, now connects Exit from the menu to the close() method
inherited by QWidget. Commented out setAttribute(Qt::WA_DeleteOnClose);
to avoid SEGFAULT.
- in QqWidget now creates as many Jack Output ports as there is in
the VideoLayer when QJackClient is launched and none already exists.
- QEncoder no longer herits from OggTheoraEncoder. It can move
in the future. Now deletes on close. Better communication with
QJackClient.
- in QJackClient, now can add Jack Outputs. Now creates the
AudioCollector needed for encoding. Better communication with
QEncoder.
- in JackClient::Process, controls if an encoder running before
filling the encoders ring buffers.
- in JSyncThread::_run, commented out me->_running = true, because
this variable can be accessed from the outside of the thread and
cause problems if stopping a JSyncThread just after created it.
Caused qfreej to hang up when opening creating QEncoder.
- in oggmux_close added some verifications on close to avoid SEGFAULT
- in VideoEncoder destructor, also added verifications.
In the new AudioCollector constructor, now passes the JackClient in
parameter to be stored.
In JackClient::Process now test if an encoder is connected
before filling the encoder ring buffer.
In OggTheoraEncoder::init now tels Jack there is an encoder.*
Now dumps, but with a big delay between audio and video.
Added an AudioCollector constructor that only creates buffers.
Added a filedump_close() method in VideoEncoder class.
In Qfreej setted m_QJack as private.
The results doesn't dump yet ;)
In QqWidget, creates the Jack audio output ports if jack is
connected.
In JackClient::, added a variable to know if there is need to put
audio in the encoder ring buffer.
In ViewPort::add_audio, now returns true if succeeded.
commented out the Sound call.
Created the qJackClient class, only creates an jack input
port for the moment.
Added a Jack Connect menu
In AudioCollector constuctor, avoided AudioCallback creation
and SetInputBuf.
in qfreej : adding automatic call to ::openSoundDevice() when opening a
video.
Layer replaced by VideoLayer.
Added streaming config in ::Sound()
Changed from 10 to 1ms.
TODO file created (instead of the comments in the main)
in freej :
JackClient::Process() -> now writing jack outputs in a ring buffer.
commented out the RunCallback call.
OggTheoraEncoder:: -> a 30 sec recording to a file
from the JackClient ring buffer in wav PCM format added.
In theorautils.cpp -> work in progress :)