Skip to content

DBus API for the RecordPage.#399

Closed
obiwankennedy wants to merge 5 commits into
MaartenBaert:masterfrom
obiwankennedy:master
Closed

DBus API for the RecordPage.#399
obiwankennedy wants to merge 5 commits into
MaartenBaert:masterfrom
obiwankennedy:master

Conversation

@obiwankennedy

Copy link
Copy Markdown

Those commits add DBus support for PageRecord. It allow to start and pause the recording from another software. In my case, teamspeak will start the video recording thank of ssr.

I just need to be able to start the recording by command line. So, I just implemented the PageRecord. I hope it will be an example, and you will be able to do it with all your pages.

You can call all public slots from PageRecord (I changed the visibility of some slots).

So, you can call them like this:
I start ssr, click ok until I reach the RecordPage, then I can send those commands:

dbus-send --type=method_call --session --dest=be.maartenbaert.ssr / local.PageRecord.OnRecordStartPause

dbus-send --type=method_call --session --dest=be.maartenbaert.ssr / local.PageRecord.OnCancel
dbus-send --type=method_call --session --dest=be.maartenbaert.ssr / local.PageRecord.OnSave
dbus-send --type=method_call --session --dest=be.maartenbaert.ssr / local.PageRecord.OnUpdateHotkeyFields
dbus-send --type=method_call --session --dest=be.maartenbaert.ssr / local.PageRecord.OnUpdateHotkey
dbus-send --type=method_call --session --dest=be.maartenbaert.ssr / local.PageRecord.OnUpdateSoundNotifications

Hoping, this modification will be included in the next version. If you have any questions about my work. I strongly recommend to put my work in a new branch. Then you will be able to test it a bit.

Regards
Renaud G.

@MaartenBaert

Copy link
Copy Markdown
Owner

This sounds useful, but it does add a dependency on dbus, which may be problematic for some platforms. I'm not sure, I will have to check. In any case this should be an optional feature that can be disabled with configure flags.

There are also a number of problems regarding reentrancy of some slots, the system tray patch created similar problems that were tricky to find. I will need to take a look at that too once I have some time. I will definitely look into this, but I don't have much time now.

@test2a

test2a commented Jul 29, 2020

Copy link
Copy Markdown

hey. any updates on this front? its been 5 years

@obiwankennedy

Copy link
Copy Markdown
Author

I no longer use ssr to record my games, so, I won't make any change in those commit. It helped a lot, synchronizing sound and video but now I find a way to start both at the same time with proper quality.

@MaartenBaert

Copy link
Copy Markdown
Owner

I did not merge this because at the time, there were issues with how the dbus functions can be called at arbitrary points in time, which can screw up the internal state of SSR quite badly. I recently fixed this, but there's now a way to control SSR through stdin, which makes the dbus interface largely redundant:
#749 (comment)

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.

3 participants