2015-02-05 5 views
0

Я пытаюсь использовать ElasticTranscoderPHP создать новый пресет с PHP, но я получаю ошибку «начало списка найденных где не ожидается»Упругие Транскодер ошибка «Начало списка найденных где не ожидается»

https://github.com/LPology/ElasticTranscoderPHP

В чем причина этой ошибки?

$photo_info = getimagesize($_FILES["photo-file"]['tmp_name']); 
$photo_width = $photo_info[0]; 
$photo_height = $photo_info[1]; 

    $options = array(
    "Name" => $vivaloo_id, 
    "Description" => "testing 123", 
    "Container" => "mp4", 
    "Audio" => array(
     "Codec" => "AAC", 
     "CodecOptions" => array(
     "Profile" => "AAC-LC" 
    ), 
    "SampleRate" => "44100", 
    "BitRate" => "128", 
    "Channels" => "2", 
    ), 
    "Video" => array(
     "Codec" => "H.264", 
     "CodecOptions" => array(
     "Profile" => "baseline", 
     "Level" => "3", 
     "MaxReferenceFrames" => "3" 
    ), 
     "KeyframesMaxDist" => "90", 
     "FixedGOP" => "false", 
     "BitRate" => "600", 
     "FrameRate" => "29.97", 
     "MaxWidth" => $photo_width, 
     "MaxHeight" => $photo_height, 
     "SizingPolicy" => "Fill", 
     "PaddingPolicy" => "NoPad", 
     "DisplayAspectRatio" => "auto" 
    ), 
    "Thumbnails" => array(
     "Format" => "jpg", 
     "Interval" => "9999", 
     "MaxWidth" => "480", 
     "MaxHeight" => "480", 
     "SizingPolicy" => "Fit", 
     "PaddingPolicy" => "NoPad" 
    ) 
); 

    $presetResult = AWS_ET::createPreset(array($options)); 
    if (!$presetResult) { 
     echo AWS_ET::getErrorMsg(); 
    }else{ 
     echo 'New preset ID: '; 
    } 
+0

когда-нибудь разрешаете это? просто столкнулся с той же проблемой сам. – bkopp

+0

@bkopp Я решил это. Я просто добавил ответ, и я надеюсь, что это поможет вам! – livinzlife

ответ

1

Отвечая на мой собственный вопрос - надеюсь, что это помогает другим ...

я в конечном счете решить эту проблему путем разделения аудио, видео и настройки Thumbs в свои отдельные массивы. Вот пример:

//create a preset 
    $presetAudio = array( 
    "Codec" => "AAC", 
    "CodecOptions" => array("Profile" => "AAC-LC"), 
    "SampleRate" => "32000", 
    "BitRate" => "64", 
    "Channels" => "2" 
); 
    $presetVideo = array(
    "Codec" => "H.264", 
    "CodecOptions" => array("Profile" => "baseline","Level" => "3","MaxReferenceFrames" => "3","BufferSize" => null, "MaxBitRate" => null), 
    "KeyframesMaxDist" => "90", 
    "FixedGOP" => "false", 
    "BitRate" => "500", 
    "FrameRate" => "29.97", 
    "MaxFrameRate" => null, 
    "MaxWidth" => "500", //note: MUST BE AN EVEN NUMBER 
    "MaxHeight" => "500", //note: MUST BE AN EVEN NUMBER 
    "SizingPolicy" => "Fill", 
    "PaddingPolicy" => "NoPad", 
    "DisplayAspectRatio" => "auto" 
); 
    $presetThumbs = array( 
    "Format" => "jpg", 
    "Interval" => "9999", 
    "MaxWidth" => "100", //note: MUST BE AN EVEN NUMBER 
    "MaxHeight" => "100", //note: MUST BE AN EVEN NUMBER 
    "SizingPolicy" => "Fit", 
    "PaddingPolicy" => "NoPad" 
); 

    $presetResult = AWS_ET::createPreset("name of preset", "description of preset", "mp4", $presetAudio, $presetVideo, $presetThumbs); 

    if (!$presetResult) { 
    echo AWS_ET::getErrorMsg(); 
    } else { 
    $preset_id = $presetResult['Preset']['Id']; 
    echo $preset_id; 
    }