Skip to content

Commit

Permalink
Introduce media file tab for controlling playback
Browse files Browse the repository at this point in the history
  • Loading branch information
bear101 committed Jul 4, 2024
1 parent 0d38020 commit 5f1b6f8
Show file tree
Hide file tree
Showing 7 changed files with 368 additions and 191 deletions.
5 changes: 3 additions & 2 deletions Client/qtTeamTalk/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,8 @@ if (Qt5_FOUND OR Qt6_FOUND)
serverlogeventsmodel.h textmessagecontainer.h
useraccountsmodel.h encryptionsetupdlg.h utiltt.h utilxml.h
utilos.h serverdlg.h moveusersdlg.h useraccountdlg.h soundeventsmodel.h
mytableview.h mytabwidget.h shortcutsmodel.h
mytableview.h mytabwidget.h shortcutsmodel.h utilmedia.h

main.cpp mainwindow.cpp preferencesdlg.cpp uservideowidget.cpp
channelstree.cpp channeldlg.cpp userinfodlg.cpp
bannedusersdlg.cpp useraccountsdlg.cpp videogridwidget.cpp
Expand All @@ -110,7 +111,7 @@ if (Qt5_FOUND OR Qt6_FOUND)
serverlogeventsmodel.cpp textmessagecontainer.cpp
useraccountsmodel.cpp encryptionsetupdlg.cpp utiltt.cpp utilxml.cpp
utilos.cpp serverdlg.cpp moveusersdlg.cpp useraccountdlg.cpp soundeventsmodel.cpp
mytableview.cpp mytabwidget.cpp shortcutsmodel.cpp
mytableview.cpp mytabwidget.cpp shortcutsmodel.cpp utilmedia.cpp
mainwindow.ui channel.ui preferences.ui
serverlist.ui userinfo.ui bannedusers.ui useraccounts.ui
serverproperties.ui uservideo.ui keycomp.ui textmessage.ui
Expand Down
28 changes: 28 additions & 0 deletions Client/qtTeamTalk/mainwindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
#include "utilvideo.h"
#include "utiltts.h"
#include "utilxml.h"
#include "utilmedia.h"
#include "moveusersdlg.h"
#include "useraccountdlg.h"

Expand Down Expand Up @@ -1448,6 +1449,9 @@ void MainWindow::clienteventStreamMediaFile(const MediaFileInfo& mediafileinfo)

//update if still talking
emit(updateMyself());

//update media tab
updateMediaFileProgress(mediafileinfo);
}

void MainWindow::clienteventUserVideoCapture(int source, int streamid)
Expand Down Expand Up @@ -5419,6 +5423,30 @@ void MainWindow::slotPauseResumeStream()
TT_DoChangeStatus(ttInst, m_statusmode, _W(statusmsg));
}

void MainWindow::updateMediaFileProgress(const MediaFileInfo& mfi)
{
switch (mfi.nStatus)
{
case MFS_CLOSED :
case MFS_ABORTED :
case MFS_ERROR :
case MFS_FINISHED :
ui.durationLabel->setText(durationToString(0));
ui.playbackTimeLabel->setText(durationToString(0));
ui.audioLabel->setText("");
ui.videoLabel->setText("");
break;
case MFS_PAUSED :
case MFS_STARTED :
case MFS_PLAYING :
ui.durationLabel->setText(durationToString(mfi.uDurationMSec));
ui.playbackTimeLabel->setText(durationToString(mfi.uElapsedMSec));
ui.audioLabel->setText(getMediaAudioDescription(mfi.audioFmt));
ui.videoLabel->setText(getMediaVideoDescription(mfi.videoFmt));
break;
}
}

void MainWindow::slotChannelsUploadFile(bool /*checked =false */)
{
int channelid = m_filesmodel->getChannelID();
Expand Down
4 changes: 3 additions & 1 deletion Client/qtTeamTalk/mainwindow.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,10 @@ enum TimerEvent
enum
{
TAB_CHAT,
TAB_FILES,
TAB_MEDIA,
TAB_VIDEO,
TAB_DESKTOP,
TAB_FILES,

TAB_COUNT
};
Expand Down Expand Up @@ -250,6 +251,7 @@ class MainWindow : public QMainWindow
void processDesktopInput(int userid, const DesktopInput& input);
void startStreamMediaFile();
void stopStreamMediaFile();
void updateMediaFileProgress(const MediaFileInfo& mfi);
void loadHotKeys();
void enableHotKey(HotKeyID id, const hotkey_t& hk);
void disableHotKey(HotKeyID id);
Expand Down
Loading

0 comments on commit 5f1b6f8

Please sign in to comment.