Exemplo n.º 1
0
function update_originals_meta($album, $asset, $qtinfo_filepath)
{
    $qtinfo_assoc = metadata2assoc_array($qtinfo_filepath);
    //dig media name according to qtinfo filename
    $qtinfofile = basename($qtinfo_filepath);
    list($quality, $type, $qtinfo) = explode("_", $qtinfofile);
    // first part is high/low
    $media = 'original_' . $type;
    $media_meta = ezmam_media_metadata_get($album, $asset, $media);
    $media_meta['duration'] = $qtinfo_assoc['duration'];
    $media_meta['height'] = $qtinfo_assoc['height'];
    $media_meta['width'] = $qtinfo_assoc['width'];
    if (isset($qtinfo_assoc['videoCodec'])) {
        $media_meta['videocodec'] = $qtinfo_assoc['videoCodec'];
    }
    if (isset($qtinfo_assoc['audioCodec'])) {
        $media_meta['audiocodec'] = $qtinfo_assoc['audioCodec'];
    }
    //update  originals meta
    print "update media metadata {$album} {$asset} {$media}\n";
    ezmam_media_metadata_set($album, $asset, $media, $media_meta);
}
Exemplo n.º 2
0
/**
 *
 * @param string $album_name
 * @param string $asset_name
 * @param string $media_name
 * @param assoc_array $metadata
 * @param path $media_file_path
 * @param bool $copy=false wheter
 * @return false|error_string
 * @desc creates an asset container in the given album
 */
function ezmam_media_new($album_name, $asset_name, $media_name, $metadata, $media_file_path, $copy = false)
{
    $repository_path = ezmam_repository_path();
    if ($repository_path === false) {
        return false;
    }
    //create directory
    $media_path = $repository_path . "/" . $album_name . "/" . $asset_name . "/" . $media_name;
    if (!ezmam_album_exists($album_name)) {
        ezmam_last_error('ezmam_media_new album non existant');
        return false;
    }
    if (!ezmam_asset_exists($album_name, $asset_name)) {
        ezmam_last_error('ezmam_media_new album non existant');
        return false;
    }
    if (ezmam_media_exists($album_name, $asset_name, $media_name)) {
        ezmam_last_error('ezmam_media_new media already exists');
        return false;
    }
    $res = mkdir($media_path);
    if (!$res) {
        ezmam_last_error('could not create $media_path');
        return false;
    }
    //create the metadata
    $res = ezmam_media_metadata_set($album_name, $asset_name, $media_name, $metadata);
    if (!$res) {
        ezmam_last_error("ezmam_media_new() error writing metadata for {$album_name}/{$asset_name}/{$media_name}");
        return false;
    }
    $filename = basename($media_file_path);
    if ($copy) {
        if (is_dir($media_file_path)) {
            //media can be a directory (e.g in case of a chapter list+images)
            $lines = exec("cp -r {$media_file_path} {$media_path}/{$filename}", $output, $return_code);
            if ($return_code) {
                ezmam_last_error("ezmam_media_new() error {$return_code} copying media directory {$media_file_path} for {$album_name}/{$asset_name}/{$media_name}");
                return false;
            } else {
                $res = true;
            }
            //returncode==0 so recursive copy went well
        } else {
            $res = copy($media_file_path, $media_path . "/" . $filename);
            if (!$res) {
                ezmam_last_error("ezmam_media_new() error copying media file/dir {$media_file_path} for {$album_name}/{$asset_name}/{$media_name}");
                return false;
            }
        }
    } else {
        $res = rename($media_file_path, $media_path . "/" . $filename);
        if (!$res) {
            ezmam_last_error("ezmam_media_new() error moving media file {$media_file_path} for {$album_name}/{$asset_name}/{$media_name}");
            return false;
        }
    }
    //endif $copy
    // Logging
    log_append('media_new', 'Media: ' . $media_name . ', Asset: ' . $asset_name . ', Album: ' . $album_name . ', File_path: ' . $media_file_path);
    return $res;
}