findDataboxById((int) $sbas_id); $config = $this->getConfiguration(); $subviews_mapping = $this->getSubviewsMapping(); return $this->render('admin/subdefs.html.twig', [ 'databox' => $databox, 'subdefs' => $databox->get_subdef_structure(), 'config' => $config, 'subviews_mapping' => $subviews_mapping ]); } /** * @param Request $request * @param int $sbas_id * @return Response * @throws Exception */ function changeSubdefsAction(Request $request, $sbas_id) { $delete_subdef = $request->request->get('delete_subdef'); $toadd_subdef = $request->request->get('add_subdef'); $Paramsubdefs = $request->request->get('subdefs', []); $ParamDocumentMeta = $request->request->get('document_meta', []); $databox = $this->findDataboxById((int) $sbas_id); $subdefs = $databox->get_subdef_structure(); foreach (array_keys($this->getSubviewsMapping()) as $groupeName) { $atributeValue = 'false'; if (isset($ParamDocumentMeta[$groupeName])) { $atributeValue = $ParamDocumentMeta[$groupeName] ? 'true' : 'false' ; } $subdefs->setGroupAttribute($groupeName, 'writemetaoriginaldocument', $atributeValue); } $add_subdef = ['class' => null, 'name' => null, 'group' => null, 'mediaType' => null, 'presets' => null, 'path' => null]; foreach ($add_subdef as $k => $v) { if (!isset($toadd_subdef[$k]) || trim($toadd_subdef[$k]) === '') { unset($add_subdef[$k]); } else { $add_subdef[$k] = $toadd_subdef[$k]; } } if ($delete_subdef) { $delete_subef = explode('_', $delete_subdef, 2); $group = $delete_subef[0]; $name = $delete_subef[1]; $subdefs = $databox->get_subdef_structure(); $subdefs->delete_subdef($group, $name); } elseif (count($add_subdef) === 6) { $subdefs = $databox->get_subdef_structure(); $group = $add_subdef['group']; /** @var unicode $unicode */ $unicode = $this->app['unicode']; $name = $unicode->remove_nonazAZ09($add_subdef['name'], false); $class = $add_subdef['class']; $preset = $add_subdef['presets']; $mediatype = $add_subdef['mediaType']; $path = $add_subdef['path']; $subdefs->add_subdef($group, $name, $class, $mediatype, $preset, $path); if ($preset !== "Choose") { $options = []; $config = $this->getConfiguration(); //On applique directement les valeurs du preset à la sous def switch ($mediatype) { case Subdef::TYPE_IMAGE : $options["path"] = $path; $options["meta"] = true; $options["mediatype"] = $mediatype; $options[Image::OPTION_SIZE] = $config["image"]["definitions"][$preset][Image::OPTION_SIZE]; $options["dpi"] = $config["image"]["definitions"][$preset][Image::OPTION_RESOLUTION]; $options[Image::OPTION_STRIP] = $config["image"]["definitions"][$preset][Image::OPTION_STRIP]; $options[Image::OPTION_FLATTEN] = $config["image"]["definitions"][$preset][Image::OPTION_FLATTEN]; $options[Image::OPTION_QUALITY] = $config["image"]["definitions"][$preset][Image::OPTION_QUALITY]; $options[Image::OPTION_ICODEC] = $config["image"]["definitions"][$preset][Image::OPTION_ICODEC]; $options[Image::OPTION_BACKGROUNDCOLOR] = $config["image"]["definitions"][$preset][Image::OPTION_BACKGROUNDCOLOR]; foreach ($config["image"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) { $options[Subdef::OPTION_DEVICE][] = $devices; } break; case Subdef::TYPE_VIDEO : $options["path"] = $path; $options["meta"] = true; $options["mediatype"] = $mediatype; $options[Video::OPTION_AUDIOBITRATE] = $config["video"]["definitions"][$preset][Video::OPTION_AUDIOBITRATE]; $options[Video::OPTION_AUDIOSAMPLERATE] = $config["video"]["definitions"][$preset][Video::OPTION_AUDIOSAMPLERATE]; $options[Video::OPTION_BITRATE] = $config["video"]["definitions"][$preset][Video::OPTION_BITRATE]; $options[Video::OPTION_GOPSIZE] = $config["video"]["definitions"][$preset][Video::OPTION_GOPSIZE]; $options[Video::OPTION_SIZE] = $config["video"]["definitions"][$preset][Video::OPTION_SIZE]; $options[Video::OPTION_FRAMERATE] = $config["video"]["definitions"][$preset][Video::OPTION_FRAMERATE]; $options[Video::OPTION_VCODEC] = $config["video"]["definitions"][$preset][Video::OPTION_VCODEC]; $options[Video::OPTION_ACODEC] = $config["video"]["definitions"][$preset][Video::OPTION_ACODEC]; foreach ($config["video"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) { $options[Subdef::OPTION_DEVICE][] = $devices; } break; case Subdef::TYPE_FLEXPAPER : $options["path"] = $path; $options["meta"] = true; $options["mediatype"] = $mediatype; foreach ($config["document"]["definitions"][$preset]["devices"] as $devices) { $options["devices"][] = $devices; } break; case Subdef::TYPE_ANIMATION : $options["path"] = $path; $options["meta"] = true; $options["mediatype"] = $mediatype; $options[Gif::OPTION_SIZE] = $config["gif"]["definitions"][$preset][Gif::OPTION_SIZE]; $options[Gif::OPTION_DELAY] = $config["gif"]["definitions"][$preset][Gif::OPTION_DELAY]; foreach ($config["gif"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) { $options[Subdef::OPTION_DEVICE][] = $devices; } break; case Subdef::TYPE_AUDIO : $options["path"] = $path; $options["meta"] = true; $options["mediatype"] = $mediatype; $options[Audio::OPTION_AUDIOBITRATE] = $config["audio"]["definitions"][$preset][Audio::OPTION_AUDIOBITRATE]; $options[Audio::OPTION_AUDIOSAMPLERATE] = $config["audio"]["definitions"][$preset][Audio::OPTION_AUDIOSAMPLERATE]; $options[Audio::OPTION_ACODEC] = $config["audio"]["definitions"][$preset][Audio::OPTION_ACODEC]; $options[Audio::OPTION_AUDIOCHANNEL] = $config["audio"]["definitions"][$preset][Audio::OPTION_AUDIOCHANNEL]; foreach ($config["audio"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) { $options[Subdef::OPTION_DEVICE][] = $devices; } break; } $subdefs->set_subdef($group, $name, $class, false, $options, [], true, $preset); } } else { $subdefs = $databox->get_subdef_structure(); foreach ($Paramsubdefs as $post_sub) { $options = []; $post_sub_ex = explode('_', $post_sub, 2); $group = $post_sub_ex[0]; $name = $post_sub_ex[1]; $preset = $request->request->get($post_sub . '_presets'); $class = $request->request->get($post_sub . '_class'); $downloadable = $request->request->get($post_sub . '_downloadable'); $orderable = $request->request->get($post_sub . '_orderable'); $substituable = $request->request->get($post_sub . '_substituable'); $toBuild = $request->request->get($post_sub . '_tobuild'); $defaults = ['path', 'meta', 'mediatype']; foreach ($defaults as $def) { $parm_loc = $request->request->get($post_sub . '_' . $def); if ($def == 'meta' && !$parm_loc) { $parm_loc = "no"; } $options[$def] = $parm_loc; } $mediatype = $request->request->get($post_sub . '_mediatype'); $media = $request->request->get($post_sub . '_' . $mediatype, []); foreach ($media as $option => $value) { if ($option == 'resolution' && $mediatype == 'image') { $option = 'dpi'; } $options[$option] = $value; } $labels = $request->request->get($post_sub . '_label', []); $subdefs->set_subdef($group, $name, $class, $downloadable, $options, $labels, $orderable, $preset, $toBuild, $substituable); } } return $this->app->redirectPath('admin_subdefs_subdef', [ 'sbas_id' => $databox->get_sbas_id(), ]); } /** * @return array */ protected function getSubviewsMapping() { $mapping = [ Type::TYPE_IMAGE => [Subdef::TYPE_IMAGE, Subdef::TYPE_PDF], Type::TYPE_VIDEO => [Subdef::TYPE_IMAGE, Subdef::TYPE_VIDEO, Subdef::TYPE_ANIMATION, Subdef::TYPE_AUDIO], Type::TYPE_AUDIO => [Subdef::TYPE_IMAGE, Subdef::TYPE_AUDIO], Type::TYPE_DOCUMENT => [Subdef::TYPE_IMAGE, Subdef::TYPE_FLEXPAPER, Subdef::TYPE_PDF], Type::TYPE_FLASH => [Subdef::TYPE_IMAGE] ]; return $mapping; } /** * @return array */ protected function getConfiguration() { $config = [ Subdef::TYPE_IMAGE => [ "definitions" => [ "JPG" => null, "160px JPG" => [ Image::OPTION_SIZE => "160", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "jpeg", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "320 px JPG (thumbnail Phraseanet)" => [ Image::OPTION_SIZE => "320", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "jpeg", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "640px JPG" => [ Image::OPTION_SIZE => "640", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "jpeg", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "1280px JPG (preview Phraseanet)" => [ Image::OPTION_SIZE => "1280", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "jpeg", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "2560px JPG" => [ Image::OPTION_SIZE => "2560", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "jpeg", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "PNG" => null, "160px PNG 8 bits" => [ Image::OPTION_SIZE => "160", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "png", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "320px PNG 8 bits" => [ Image::OPTION_SIZE => "320", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "png", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "640px PNG 8 bits" => [ Image::OPTION_SIZE => "640", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "png", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "1280px PNG 8 bits" => [ Image::OPTION_SIZE => "1280", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "png", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "2560px PNG 8 bits" => [ Image::OPTION_SIZE => "2560", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "png", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "TIFF" => null, "1280 TIFF" => [ Image::OPTION_SIZE => "1280", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "tiff", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], "2560px TIFF" => [ Image::OPTION_SIZE => "2560", Image::OPTION_RESOLUTION => "72", Image::OPTION_STRIP => "yes", Image::OPTION_FLATTEN => "yes", Image::OPTION_QUALITY => "75", Image::OPTION_ICODEC => "tiff", Image::OPTION_BACKGROUNDCOLOR => "", Subdef::OPTION_DEVICE => ["all"] ], ], "form" => [ Image::OPTION_SIZE => "slide", Image::OPTION_RESOLUTION => "slide", Image::OPTION_STRIP => "radio", Image::OPTION_FLATTEN => "radio", Image::OPTION_QUALITY => "slide", Image::OPTION_ICODEC => "select", Subdef::OPTION_DEVICE => "checkbox", ], ], Subdef::TYPE_VIDEO => [ "definitions" => [ "video codec H264" => null, "144P H264 128 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "128", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "256", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "240P H264 256 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "256", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "426", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "360P H264 576 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "576", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "480", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "480P H264 750 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "750", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "854", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "720P H264 1492 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "1492", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "1280", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "1080P H264 2420 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "2420", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "1920", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "144P H264 128 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "128", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "256", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "240P H264 256 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "256", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "426", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "360P H264 576 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "576", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "480", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "480P H264 750 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "750", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "854", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "720P H264 1492 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "1492", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "1280", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "1080P H264 2420 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "2420", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "1920", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libx264", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "video codec libvpx" => null, "144P webm 128 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "128", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "256", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "240P webm 256 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "256", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "426", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "360P webm 576 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "576", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "480", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "480P webm 750 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "750", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "854", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "720P webm 1492 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "1492", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "1280", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "1080P webm 2420 kbps MP3 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "2420", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "1920", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "144P webm 128 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "128", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "256", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "240P webm 256 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "256", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "426", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "360P webm 576 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "576", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "480", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "480P webm 750 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "750", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "854", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "720P webm 1492 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "1492", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "1280", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], "1080P webm 2420 kbps AAC 128kbps" => [ Video::OPTION_AUDIOBITRATE => "128", Video::OPTION_AUDIOSAMPLERATE => "44100", Video::OPTION_BITRATE => "2420", Video::OPTION_GOPSIZE => "25", Video::OPTION_SIZE => "1920", Video::OPTION_FRAMERATE => "25", Video::OPTION_VCODEC => "libvpx", Video::OPTION_ACODEC => "libfdk_aac", Subdef::OPTION_DEVICE => ["all"] ], ], "form" => [ Video::OPTION_AUDIOBITRATE => "slide", Video::OPTION_AUDIOSAMPLERATE => "select", Video::OPTION_BITRATE => "slide", Video::OPTION_GOPSIZE => "slide", Video::OPTION_SIZE => "slide", Video::OPTION_FRAMERATE => "slide", Video::OPTION_VCODEC => "select", Video::OPTION_ACODEC => "select", Subdef::OPTION_DEVICE => "checkbox", ], ], Subdef::TYPE_ANIMATION => [ "definitions" => [ "256 px fast 200 ms" => [ Gif::OPTION_SIZE => "256", Gif::OPTION_DELAY => "200", Subdef::OPTION_DEVICE => ["all"] ], "256 px very fast 120 ms" => [ Gif::OPTION_SIZE => "256", Gif::OPTION_DELAY => "120", Subdef::OPTION_DEVICE => ["all"] ], "320 px fast 200 ms" => [ Gif::OPTION_SIZE => "320", Gif::OPTION_DELAY => "200", Subdef::OPTION_DEVICE => ["all"] ], ], "form" => [ Gif::OPTION_SIZE => "slide", Gif::OPTION_DELAY => "slide", Subdef::OPTION_DEVICE => "checkbox", ], ], Subdef::TYPE_AUDIO => [ "definitions" => [ "Low MP3 96 kbit/s" => [ Audio::OPTION_AUDIOBITRATE => "100", Audio::OPTION_AUDIOSAMPLERATE => "8000", Audio::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "Normal MP3 128 kbit/s" => [ Audio::OPTION_AUDIOBITRATE => "180", Audio::OPTION_AUDIOSAMPLERATE => "44100", Audio::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "High MP3 320 kbit/s" => [ Audio::OPTION_AUDIOBITRATE => "230", Audio::OPTION_AUDIOSAMPLERATE => "50000", Audio::OPTION_ACODEC => "libmp3lame", Subdef::OPTION_DEVICE => ["all"] ], "Wave Mono 16 kHz" => [ Audio::OPTION_AUDIOBITRATE => "256", Audio::OPTION_AUDIOSAMPLERATE => "16000", Audio::OPTION_ACODEC => "pcm_s16le", Audio::OPTION_AUDIOCHANNEL => "mono", Subdef::OPTION_DEVICE => ["all"] ], "Wave Mono 8 kHz" => [ Audio::OPTION_AUDIOBITRATE => "128", Audio::OPTION_AUDIOSAMPLERATE => "8000", Audio::OPTION_ACODEC => "pcm_s16le", Audio::OPTION_AUDIOCHANNEL => "mono", Subdef::OPTION_DEVICE => ["all"] ], ], "form" => [ Audio::OPTION_AUDIOBITRATE => "slide", Audio::OPTION_AUDIOSAMPLERATE => "select", Audio::OPTION_ACODEC => "select", Audio::OPTION_AUDIOCHANNEL => "select", Subdef::OPTION_DEVICE => "checkbox", ], ], Subdef::TYPE_FLEXPAPER => [ "definitions" => [ ], "form" => [], ], Subdef::TYPE_PDF => array( "definitions" => array( ), "form" => array(), ), ]; return $config; } }