Skip to content
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

Pause screen recording #205

Closed
phenri opened this issue Jul 20, 2014 · 36 comments
Closed

Pause screen recording #205

phenri opened this issue Jul 20, 2014 · 36 comments

Comments

@phenri
Copy link

phenri commented Jul 20, 2014

Hello,
Firstly, I would like to thank you for this fantastic software.
I discovered ShareX to record the screen, and I have a request:

  1. Would it be possible to have the feature of being able to pause the screen recording?
  2. And, if possible, allow a fused transition between breaks.
  3. Possibility to send it on YouTube.
  4. And possibly to send stream on any site that allow streaming (perhaps youtube?)

Cheers

@Jaex
Copy link
Member

Jaex commented Jul 20, 2014

ShareX using ffmpeg cli for recording and i wanted to add pause button but ffmpeg didn't have pause functionality for this. I don't think YouTube is suitable for frequent small video uploads for be able to share them with friends. Also youtube i think not instantly encode uploaded videos. Dropbox is far more suitable for such things. There is commands in ffmpeg to stream recording but when i tried, it was not successful and stream was keep dcing etc. So your best bet would be using proper streaming app.

@Jaex Jaex closed this as completed Jul 20, 2014
@phenri
Copy link
Author

phenri commented Jul 21, 2014

Hi Jaex, Thanks for the quick reply
I searched on google if ffmpeg had the feature and I found this: http://ffmpeg-users.933282.n4.nabble.com/possible-to-pause-encoding-tp935801p935804.html ([Pause] to pause and [Enter] to resume)

Cheers

@Jaex
Copy link
Member

Jaex commented Jul 21, 2014

I think they talking about linux related hotkeys but not sure.

@phenri
Copy link
Author

phenri commented Jul 21, 2014

@Jaex
Copy link
Member

Jaex commented Jul 21, 2014

I don't think suspending process is good idea.

@phenri
Copy link
Author

phenri commented Jul 21, 2014

Thank you,
you are right because I just tried two methods, the first with the "Test with CMD" button and the second using Process Explorer. And in both cases, even if the frames are not recorded, the video keeps its duration despite the requests of pause/resume process.
Regards

@Jaex
Copy link
Member

Jaex commented Jul 21, 2014

Yea i was wondering it too even process is suspended how time can work.

@phenri
Copy link
Author

phenri commented Jul 21, 2014

But perhaps you could add a button "Pause/resume" that will stop the ffmpeg process but not the ShareX layout. Never mind if it split the video into several parts, I will merge the different parts later. (perhaps ShareX can send to ffmpeg a command to merge different files when I click on the "Stop" button?)

Good night and good bye.

@phenri
Copy link
Author

phenri commented Jul 28, 2014

Hi,

would it be possible to capture the last area/region used for screen recording?

Cheers

@TheTechOddBug
Copy link

+1 for phenri suggestions on Jul 21, 2014. A pause/resume button where pause generate one file and resume start regording in a new one file and stop button concatenate (as ffmpeg is able to do) those different files (with same record settings) to generate one only record file would be great. In fact, with this feature, your software will be a great alternative to other ones widely used as, for example, CamStudio.

@Jaex
Copy link
Member

Jaex commented Jun 29, 2015

Starting new video file and merging them is very ugly workaround.

@TheTechOddBug
Copy link

Have you planned/found other way to do it? That "workaround" will be almost transparent for final user and it'll give your software an ability it hasn't got now and that's the reason i have to go back to CamStudio :(

Any way, this is your software and you decide what do you want to do with it :)

@TheTechOddBug
Copy link

Do you have any update on this kind of feature? Reviewing the idea of multiple files, it has the user other capability: if, for any reason, the video recording of one piece crash, if the previous pieces are stored in different files, they can be recover and merged and, in that case, not all work is lost :)

@Jaex
Copy link
Member

Jaex commented Oct 6, 2015

I told FFmpeg not supports pausing. And you have no idea about making it multiple part issues. Like while making another part it will stop recording some time and won't start instantly again. Also merging them will require time and alot of other issues. So I don't want to do that workaround.

@TheTechOddBug
Copy link

Ok Jaex. Thank you very much for read and answer my suggestions.

@ddavaham
Copy link

Is this a potential fix for this

https://stackoverflow.com/questions/45206312/how-to-pause-resume-ffmpeg-video-capture-in-windows-from-c-sharp-application

@Jaex
Copy link
Member

Jaex commented Jan 26, 2018

No freezing thread is not a solution. It can create tons of issues.

@micbay
Copy link

micbay commented Jun 14, 2018

First off, i don't mean to open any old issues nor am i asking for anything. I had remembered this thread and later found a screen recording software called Captura 7.0.1 that has a pause function and for as much as i can tell it uses ffmpeg libraries (if that's the right word to use) to make .mp4 files. I really don't know much about it, when i use it, i choose Video-FFMpeg and Mp4 (x264|ACC), and it has a hotkey pause feature and seems to play nice with everything. It might be totally different thing, but I thought it might be helpful to this conversation, the code for Captura is open source.

@megamorphg
Copy link

It sucks that we closed this completely... almost all major screen recorders have a pause function even teleconference tools. I'd be fine with a low performance or unstable button as ddavaham recommended above.

@talanc
Copy link

talanc commented Mar 13, 2019

I've had a look at the source for ShareX and Captura. While they both use ffmpeg in some way their methods of doing the screen recording is very different.

ShareX uses ffmpeg with a gdigrab input. So ffmpeg does the recording and the output file.

Meanwhile Captura captures the screen and streams that data to ffmpeg as a named pipe input. Because Captura controls the input stream, it can much easily pause and resume the recording. ffmpeg does the output file.

It's not as simple as changing ShareX input option to stream the images to ffmpeg. ShareX would now need to capture the screen and send that to ffmpeg at the required frame rate and all the complications that has (steady frame rate, skipped frames, etc).

You're asking a lot of @Jaex and I think if people want this then they should start a bounty and contribute to that to incentivise that it gets worked on.

@alexgman
Copy link

alexgman commented Oct 2, 2020

Any new info on pausing a recording?

@iboabap
Copy link

iboabap commented Oct 4, 2020

Any new info on pausing a recording?
we need it please. We can not work without Pause!!!!

@bitroniq
Copy link

Upvote this issue

@asraful
Copy link

asraful commented Dec 19, 2020

just testing these amazing tools for an hour, i was looking for this pause/resume ..and ended up here. its really required .

@BahgatMashaly
Copy link

Kindly add this important feature

@goyalyashpal
Copy link

goyalyashpal commented Feb 6, 2021

But perhaps you could add a button "Pause/resume" that will stop the ffmpeg process but not the ShareX layout
- #205 (comment)

would it be possible to capture the last area/region used for screen recording?

This is opened as a separate issue: #5334

@rajesh-smartwebtech
Copy link

Kindly add this important feature

@santos7117
Copy link

Amazing Application !!!
I really wish there was a pause option for screen recording

@dehghani-mehdi
Copy link

Why this important and useful feature request is closed?

@goyalyashpal
Copy link

i think spamming like comments wont help. @talanc input is conclusive, read here: #205 (comment)

the only thing that seems helpful, like said in that comment, is those who consider this important start the bounty program. let the money speak. and this will help jaex too.

@vertigo220
Copy link

Does ShareX have any control or ability as to where to put keyframes and/or chapter markers? For example, could it be set up so when paused, it creates a keyframe there (not really necessary except to get exact timing) as well as a bookmark, that way the user could at least open the file in MKVToolNix once done and split at chapter markers, then recombine the desired pieces? In fact, even that should be able to be automated.

At least, that's the concept, though there would likely have to be some modifications, e.g. since mp4 doesn't support chapters AFAIK, ShareX could just log the times, then feed those into MKVToolNix once done. That, at least, should be doable and fairly straightforward.

@SaadhJawwadh
Copy link

I think adding a merger tool might be really helpful even though we cannot add pause or resume feature.

@SnugglePilot
Copy link

Can someone link the bounty? I will gladly put money towards this.

@Jaex
Copy link
Member

Jaex commented Sep 3, 2022

Even I find merging video files to mimic pause feature is very ugly workaround and not up to my standards, still decided to add pause support like that now. But my implementation works little different than what's discussed here. It not keeps video file for each pause and instead only keeps maximum two video files (previous and current) and works like this:

  • If pause/stop button pressed and "filename-concat.mp4" file exists then concat it with "filename.mp4" file and remove "filename-concat.mp4" file
  • If resume button pressed then rename "filename.mp4" file to "filename-concat.mp4" and start recording as usual

Because concat happens after pause is pressed and not after press resume, the delay is not very noticeable to users.

But I really need people to help me test these stuffs because there is just so many combinations involving start/stop, pause/resume, abort, auto start timer and duration options (https://jaex.getsharex.com/2022/09/ShareX_dSQ607wWRr.png), hotkey and tray button usages etc. And there could be a lot of timing related issues that I'm unable to test properly.

If you want to help test the pause feature, you can use dev build.

Also changed visual look of the buttons.

@Jaex
Copy link
Member

Jaex commented Sep 4, 2022

mpc-hc64_zZbFNgjV77.mp4

@SaadhJawwadh
Copy link

SaadhJawwadh commented Sep 4, 2022

Great work team 🔥🔥 and I am using dev build the feature is working fine on my end.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests