Re: Hot keys to log timestamp parts of video
Steve Lhomme <[email protected]>
| Newsgroups | gmane.comp.video.videolan.vlc.devel |
|---|---|
| Message-ID | <[email protected]> |
On 2022-03-08 21:12, John Hammer wrote: > > It ends up doing > > emit positionUpdated( f_pos, i_time, i_length / CLOCK_FREQ ); > > Thank you Steve for pointing this out. Looking at the function that > emits this I found the following line that returns the current time > position. > > **var_GetInteger(p_input , "time");** // This line retrieves the time at > current position in microseconds > > I called this in the **MainInterface::keyPressEvent(...)** callback to > retrieve the current time which works !!! > > Now I want to log this to a file at the same location as the current > playing file. How to retrieve the file path and file name of the current > playing file? When a new file/stream is loaded there's a ItemChanged emited with an input_item_t. With that item you can get plenty of information like calling input_item_GetNowPlayingFb(). > Thanks, > John > > > > On Tue, Mar 8, 2022 at 2:13 PM Steve Lhomme <[email protected] > <mailto:[email protected]>> wrote: > > On 2022-03-07 21:19, John Hammer wrote: > > > You mean visually? > > > > Yes. Basically while watching the video pressing the key manually > should > > log timestamps to a file. There will be 2 keys one for start > timestamp > > and one for end timestamp. The goal is to log the timestamps of > > interesting parts of the video for external processing. > > > > > There are time events reported by the core that you can hook > into to > > know where you are. > > > > I could modify the Qt GUI module and could listen to the key > presses. > > The following is the patch that works. Where is the time event hook? > > Does this mean I have to store the keypress event for later > processing > > in the time hook event? > > In libvlc there are 2 events: libvlc_MediaPlayerPositionChanged and > libvlc_MediaPlayerTimeChanged. But if you use VLC directly it's not > much > use. They correspond to INPUT_EVENT_POSITION in Qt (on 3.0). > > It ends up doing > emit positionUpdated( f_pos, i_time, i_length / CLOCK_FREQ ); > > > > > diff --git a/modules/gui/qt/main_interface.cpp > > b/modules/gui/qt/main_interface.cpp > > index a57506533d..cd1ebad916 100644 > > --- a/modules/gui/qt/main_interface.cpp > > +++ b/modules/gui/qt/main_interface.cpp > > @@ -28,7 +28,7 @@ > > #endif > > > > #include "qt.hpp" > > - > > +#include <QDebug> > > #include "main_interface.hpp" > > #include "input_manager.hpp" // Creation > > #include "actions_manager.hpp" // killInstance > > @@ -72,6 +72,7 @@ > > > > #include <QTimer> > > > > + > > #include <vlc_actions.h> /* Wheel event */ > > #include <vlc_vout_display.h> /* vout_thread_t > and VOUT_ > > events */ > > > > @@ -1612,6 +1613,17 @@ void > > MainInterface::dragLeaveEvent(QDragLeaveEvent *event) > > > ************************************************************************/ > > void MainInterface::keyPressEvent( QKeyEvent *e ) > > { > > + switch (e->key()) { > > + case Qt::Key_End: > > + case Qt::Key_1: > > + qDebug()<<e<<" start timestamp \n"; > > + break; > > + case Qt::Key_PageDown: > > + case Qt::Key_2: > > + qDebug()<<e<<" end timestamp \n"; > > + break; > > + } > > + > > handleKeyPress( e ); > > > > Thanks, > > John > > > > On Mon, Mar 7, 2022 at 2:02 PM Steve Lhomme <[email protected] > <mailto:[email protected]> > > <mailto:[email protected] <mailto:[email protected]>>> wrote: > > > > > > > > On 2022-03-05 19:01, John Hammer wrote: > > > Hi, > > > I want to retrieve the start and end timestamp of parts of > > the video > > > for post-processing with an external program. Since Lua > extension > > does > > > > You mean visually ? There are time events reported by the > core that you > > can hook into to know where you are. > > > > > not support keybindings, I have decided to modify the > source code. I > > > could compile the 3.x branch and debug the qt module > interface. > > It looks > > > like this in the keypress event callbacks of this module > is where > > the > > > code to log the timestamps should go. > > > > > > Am I on the right track on implementing this feature > or is > > there > > > any other way? > > > > > > I also would like to color the areas on the time > slider where > > the > > > start and end timestamps occurred. I have no idea how to > achieve > > this. > > > Any suggestions on which module to be changed to achieve this? > > > > If you want to change the UI you have to modify the Qt gui > module/ > > > > > -- > > > Thanks, > > > John > > > > > > _______________________________________________ > > > vlc-devel mailing list > > > To unsubscribe or modify your subscription options: > > > https://mailman.videolan.org/listinfo/vlc-devel > <https://mailman.videolan.org/listinfo/vlc-devel> > > <https://mailman.videolan.org/listinfo/vlc-devel > <https://mailman.videolan.org/listinfo/vlc-devel>> > > _______________________________________________ > > vlc-devel mailing list > > To unsubscribe or modify your subscription options: > > https://mailman.videolan.org/listinfo/vlc-devel > <https://mailman.videolan.org/listinfo/vlc-devel> > > <https://mailman.videolan.org/listinfo/vlc-devel > <https://mailman.videolan.org/listinfo/vlc-devel>> > > > > > > > > -- > > Regards > > > > _______________________________________________ > > vlc-devel mailing list > > To unsubscribe or modify your subscription options: > > https://mailman.videolan.org/listinfo/vlc-devel > <https://mailman.videolan.org/listinfo/vlc-devel> > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > https://mailman.videolan.org/listinfo/vlc-devel > <https://mailman.videolan.org/listinfo/vlc-devel> > > > > -- > Regards > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > https://mailman.videolan.org/listinfo/vlc-devel _______________________________________________ vlc-devel mailing list To unsubscribe or modify your subscription options: https://mailman.videolan.org/listinfo/vlc-devel