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
Comment #1
kevin.dutra commentedAttaching proposed patch.
Comment #2
kevin.dutra commentedComment #3
Jorrit commentedI have fixed this in 6.x-5.x. I forgot to set the git attribution.