Although the description for the Drupal file system path says that the path has to be relative for public, it does not require that the path be absolute for private. For anyone using a relative path for the private file system, videos can't be encoded because they don't get the path to the Drupal install added to the beginning.

// Check if $converteddir is an absolute path, we need this later
$converteddirabsolute = FALSE;
if ($converteddir[0] == '/') {
  $converteddirabsolute = TRUE;
}
elseif (substr($converteddir, 1, 2) == ':\\') {
  $converteddirabsolute = TRUE;
}
else {
  $converteddirabsolute = variable_get('file_downloads', FILE_DOWNLOADS_PUBLIC) == FILE_DOWNLOADS_PRIVATE;
}
...
$outputfilefull = $converteddirabsolute ? $outputfile : $drupaldir .'/'. $outputfile;

Assuming you did have an absolute path for the private file system, it should already have been taken care of by one of the first two parts of that if, so the else statement is doing more harm than good.

Comments

kevin.dutra’s picture

Attaching proposed patch.

kevin.dutra’s picture

Status: Active » Needs review
Jorrit’s picture

Status: Needs review » Fixed

I have fixed this in 6.x-5.x. I forgot to set the git attribution.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.