The values used in Create Clip for a preset are ignored and not loaded into the Preset object.

I've not debugged it but for some reason when you recover the string of the serialized preset from the database, in the Preset::getAllPresets() [Preset.inc] method, it is truncated.

This is my preset serialized in the database:

<?php
a:38:{s:15:"video_extension";s:3:"flv";s:11:"video_codec";s:4:"h264";s:12:"video_preset";s:0:"";s:13:"video_quality";s:1:"3";s:11:"video_speed";s:4:"none";s:3:"wxh";s:7:"400x300";s:16:"video_aspectmode";s:8:"preserve";s:13:"video_upscale";i:0;s:11:"audio_codec";s:3:"aac";s:13:"audio_quality";s:1:"3";s:11:"deinterlace";s:6:"detect";s:14:"max_frame_rate";s:0:"";s:10:"frame_rate";s:0:"";s:17:"keyframe_interval";s:0:"";s:13:"video_bitrate";s:4:"1000";s:11:"bitrate_cap";s:0:"";s:11:"buffer_size";s:0:"";s:8:"one_pass";i:0;s:10:"skip_video";i:0;s:12:"pixel_format";s:0:"";s:12:"h264_profile";s:0:"";s:13:"audio_bitrate";s:0:"";s:14:"audio_channels";s:1:"2";s:17:"audio_sample_rate";s:0:"";s:10:"skip_audio";i:0;s:23:"video_watermark_enabled";i:0;s:19:"video_watermark_fid";i:0;s:17:"video_watermark_x";s:1:"5";s:17:"video_watermark_y";s:1:"5";s:21:"video_watermark_width";s:0:"";s:22:"video_watermark_height";s:0:"";s:22:"video_watermark_origin";s:7:"content";s:10:"autolevels";i:0;s:7:"deblock";i:0;s:7:"denoise";s:0:"";s:10:"clip_start";s:1:"1";s:11:"clip_length";s:2:"20";s:6:"revert";s:8:"Revertir";}
?>

And this is the value of $preset['settings'] returned by the instruction Preset::getAllPresets() [Preset.inc::line 92]

<?php
a:38:{s:15:"video_extension";s:3:"flv";s:11:"video_codec";s:4:"h264";s:12:"video_preset";s:0:"";s:13:"video_quality";s:1:"3";s:11:"video_speed";s:4:"none";s:3:"wxh";s:7:"400x300";s:16:"video_aspectmode";s:8:"preserve";s:13:"video_upscale";i:0;s:11:"audio_codec";s:3:"aac";s:13:"audio_quality";s:1:"3";s:11:"deinterlace";s:6:"detect";s:14:"max_frame_rate";s:0:"";s:10:"frame_rate";s:0:"";s:17:"keyframe_interval";s:0:"";s:13:"video_bitrate";s:4:"1000";s:11:"bitrate_cap";s:0:"";s:11:"buffer_size";s:0:"";s:8:"one_pass";i:0;s:10:"skip_video";i:0;s:12:"pixel_format";s:0:"";s:12:"h264_profile";s:0:"";s:13:"audio_bitrate";s:0:"";s:14:"audio_channels";s:1:"2";s:17:"audio_sample_rate";s:0:"";s:10:"skip_audio";i:0;s:23:"video_watermark_enabled";i:0;s:19:"video_watermark_fid";i:0;s:17:"video_watermark_x";s:1:"5";s:17:"video_watermark_y";s:1:"5";s:21:"video_watermark_width";s:0:"";s:22:"video_watermark_height";s:0:"";s:22:"video_watermark_origin";s:7:"content";s:10:"autolevels";i:0;s:7:"deblock";i:0;s:7:"denoise";s:0:"";s:10
?>

It is 1024 bytes long. Maybe it is a problem of the db_select method. Is it truncating the values?

Comments

Jorrit’s picture

Status: Active » Postponed (maintainer needs more info)

That is strange, I am not getting this behavior. Are you getting errors about unserialize() failing?

somms’s picture

Sorry for the delay.
No, there is no errors about unserialize(). It seems it just fails silently.
I will go in depth to check it.

somms’s picture

After doing a lot of tests I've realized that the problem is related with XDebug, that is truncating the values of long strings.
...no comments...
But the problem is still there. I am using ffmpeg as transcoder, and "Create Clip" values are ignored. Is this functionality implemented? I've search in all files for "clip" settings, and nothing reads their values.

Jorrit’s picture

Status: Postponed (maintainer needs more info) » Fixed

I have added the functionality to the FFmpeg / avconv transcoder. It was already working for Zencoder, because by default all parameters are sent to Zencoder (the default case in the switch statement). Could you download 7.x-2.x-dev when it is rebuilt in 12 hours and confirm if it works?

Status: Fixed » Closed (fixed)

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