[Fixed] VBoxManage modifyvm --recording ... : Crash, Documentation wrong (#18494)

Discussions related to using VirtualBox on Linux hosts.
Post Reply
m23Hauke
Posts: 1
Joined: 28. Mar 2019, 20:37

[Fixed] VBoxManage modifyvm --recording ... : Crash, Documentation wrong (#18494)

Post by m23Hauke »


ModEdit; related ticket: #18494: VBoxManage modifyvm --recording ... : Crash, Documentation wrong
Hi,

I'm running VBox 6.0.4 on Ubuntu 18.04 amd64.

Recording video by using VBoxManage doesn't work for several reasons:
  1. The options shown in the help screen (VBoxManage --help) don't exist and aren't accepted by VBoxManage (eg. "--recording filename").
  2. By playing with spelling variants of the options I figured out, that eg. "--recordingfile" is accepted by VBoxManage.
  3. In my tests I used the options like in the following example:
    VBoxManage modifyvm "myVM" --recording on --recordingfile="/tmp/test.webm" --recordingvideores="1024x756" --recordingvideorate=1024 --recordingvideofps=25
After modifying a (turned off) VM with these options the following happens:
  1. The VM will crash on next start attempt. This can only be fixed by turning off recording (VBoxManage modifyvm "myVM" --recording off).
  2. The CPU will jump to 100% for a few seconds.
  3. All VMs aren't available via the VBox GUI. Something like "No information available" is shown where the VM settings are shown usually.
  4. There is no log created. The VM and the VirtualBox GUI are freezing when trying to start the VM. To get the GUI back to work the process "VirtualBoxVM" has to be killed by hand.
Maybe there are combinations of options that enable recording, but I couldn't find any.

Thank you for your previous work on VirtualBox :-)

Hauke
Last edited by socratis on 16. Apr 2019, 23:49, edited 2 times in total.
Reason: Marked as [Fixed].
socratis
Site Moderator
Posts: 27329
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: VBoxManage modifyvm --recording ... : Crash, Documentation wrong (#18494)

Post by socratis »

Here are the options regarding recording control from the command line, i.e. "VBoxManage modifyvm", when the VM isn't running:
modifyvm <uuid|vmname>
         [--recording on|off]
         [--recording screens all|<screen ID> [<screen ID> ...]]
         [--recording filename <filename>]
         [--recording videores <width> <height>]
         [--recording videorate <rate>]
         [--recording videofps <fps>]
         [--recording maxtime <s>]
         [--recording maxfilesize <MB>]
         [--recording opts <key=value> [,<key=value> ...]]
and something similar for the "VBoxManage controlvm", when the VM is running.

Looking at the source code however, in VBoxManageModifyVM.cpp r76678, it seems that you are absolutely, 100% right. The correct options should be:
{ "--recording",                MODIFYVM_RECORDING,                 RTGETOPT_REQ_BOOL_ONOFF },
{ "--recordingscreens",         MODIFYVM_RECORDING_SCREENS,         RTGETOPT_REQ_STRING },
{ "--recordingfile",            MODIFYVM_RECORDING_FILENAME,        RTGETOPT_REQ_STRING },
{ "--recordingmaxtime",         MODIFYVM_RECORDING_MAXTIME,         RTGETOPT_REQ_INT32  },
{ "--recordingmaxsize",         MODIFYVM_RECORDING_MAXSIZE,         RTGETOPT_REQ_INT32  },
{ "--recordingopts",            MODIFYVM_RECORDING_OPTIONS,         RTGETOPT_REQ_STRING },
{ "--recordingoptions",         MODIFYVM_RECORDING_OPTIONS,         RTGETOPT_REQ_STRING },
{ "--recordingvideores",        MODIFYVM_RECORDING_VIDEO_RES,       RTGETOPT_REQ_STRING },
{ "--recordingvideoresolution", MODIFYVM_RECORDING_VIDEO_RES,       RTGETOPT_REQ_STRING },
{ "--recordingvideorate",       MODIFYVM_RECORDING_VIDEO_RATE,      RTGETOPT_REQ_UINT32 },
{ "--recordingvideofps",        MODIFYVM_RECORDING_VIDEO_FPS,       RTGETOPT_REQ_UINT32 },
Somebody forgot to either update the corresponding VBoxManageHelp.cpp r77887, or it was never right to begin with.

But here comes the kicker... the options listed in the help, *are* the correct ones if you use "VBoxManage controlvm" (VBoxManageControlVM.cpp r76553)!!! :shock:

Somebody needs to get to that ASAP...
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
socratis
Site Moderator
Posts: 27329
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: [Fixed] VBoxManage modifyvm --recording ... : Crash, Documentation wrong (#18494)

Post by socratis »

Fixed with 6.0.6, marked as such.
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
Post Reply