ffmpeg-vod-transcoder
ffmpeg-vod-transcoder copied to clipboard
Permission denied
Hello! I try to execute
docker run --rm=true --volume=${HOME}/tmp/streamkit:/tmp/streamkit \
ddragosd/ffmpeg-vod-transcoder:latest --configJson={\"source\":\"http://s3.footagesearch.com/demos/naturefootage/Q4/OF-04-Fish-Demo-Q4.mp4\"}
And has error: /tmp/streamkit/OF-04-Fish-Demo-Q4_-2_720_2200_kbps.mp4: Permission denied
Full log:
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.2.1.RELEASE)
2016-12-23 09:23:51.404 INFO 1 --- [ main] o.s.t.VodTranscodingApplication : Starting VodTranscodingApplication v0.0.7-SNAPSHOT on 3131d52baa87 with PID 1 (/usr/local/vod-transcoder/vod-transcoder.jar started by root in /)
2016-12-23 09:23:51.689 INFO 1 --- [ main] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@7592dc03: startup date [Fri Dec 23 09:23:51 GMT 2016]; root of context hierarchy
2016-12-23 09:23:54.222 INFO 1 --- [ main] o.s.b.f.config.PropertiesFactoryBean : Loading properties file from URL [jar:file:/usr/local/vod-transcoder/vod-transcoder.jar!/lib/spring-integration-core-4.1.1.RELEASE.jar!/META-INF/spring.integration.default.properties]
2016-12-23 09:23:54.304 INFO 1 --- [ main] o.s.i.config.IntegrationRegistrar : No bean named 'integrationHeaderChannelRegistry' has been explicitly defined. Therefore, a default DefaultHeaderChannelRegistry will be created.
2016-12-23 09:23:55.119 WARN 1 --- [ main] o.s.c.a.ConfigurationClassEnhancer : @Bean method ScopeConfiguration.stepScope is non-static and returns an object assignable to Spring's BeanFactoryPostProcessor interface. This will result in a failure to process annotations such as @Autowired, @Resource and @PostConstruct within the method's declaring @Configuration class. Add the 'static' modifier to this method to avoid these container lifecycle issues; see @Bean javadoc for complete details
2016-12-23 09:23:55.144 WARN 1 --- [ main] o.s.c.a.ConfigurationClassEnhancer : @Bean method ScopeConfiguration.jobScope is non-static and returns an object assignable to Spring's BeanFactoryPostProcessor interface. This will result in a failure to process annotations such as @Autowired, @Resource and @PostConstruct within the method's declaring @Configuration class. Add the 'static' modifier to this method to avoid these container lifecycle issues; see @Bean javadoc for complete details
2016-12-23 09:23:55.234 INFO 1 --- [ main] faultConfiguringBeanFactoryPostProcessor : No bean named 'errorChannel' has been explicitly defined. Therefore, a default PublishSubscribeChannel will be created.
2016-12-23 09:23:55.242 INFO 1 --- [ main] faultConfiguringBeanFactoryPostProcessor : No bean named 'taskScheduler' has been explicitly defined. Therefore, a default ThreadPoolTaskScheduler will be created.
2016-12-23 09:23:55.728 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [class org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$441e9599] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:55.766 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'transactionAttributeSource' of type [class org.springframework.transaction.annotation.AnnotationTransactionAttributeSource] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:55.859 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'transactionInterceptor' of type [class org.springframework.transaction.interceptor.TransactionInterceptor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:55.941 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.config.internalTransactionAdvisor' of type [class org.springframework.transaction.interceptor.BeanFactoryTransactionAttributeSourceAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:56.077 INFO 1 --- [ main] o.s.b.f.config.PropertiesFactoryBean : Loading properties file from URL [jar:file:/usr/local/vod-transcoder/vod-transcoder.jar!/lib/spring-integration-core-4.1.1.RELEASE.jar!/META-INF/spring.integration.default.properties]
2016-12-23 09:23:56.078 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'integrationGlobalProperties' of type [class org.springframework.beans.factory.config.PropertiesFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:56.091 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'integrationGlobalProperties' of type [class java.util.Properties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:56.160 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'messageBuilderFactory' of type [class org.springframework.integration.support.DefaultMessageBuilderFactory] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:56.596 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean '(inner bean)#1eb6228b' of type [class org.springframework.integration.channel.MessagePublishingErrorHandler] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:56.601 INFO 1 --- [ main] o.s.s.c.ThreadPoolTaskScheduler : Initializing ExecutorService 'taskScheduler'
2016-12-23 09:23:56.603 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'taskScheduler' of type [class org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:56.605 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'integrationHeaderChannelRegistry' of type [class org.springframework.integration.channel.DefaultHeaderChannelRegistry] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-12-23 09:23:57.024 INFO 1 --- [ main] o.s.j.d.e.EmbeddedDatabaseFactory : Creating embedded database 'testdb'
2016-12-23 09:24:00.013 INFO 1 --- [ main] o.s.jdbc.datasource.init.ScriptUtils : Executing SQL script from class path resource [org/springframework/batch/core/schema-hsqldb.sql]
2016-12-23 09:24:00.041 INFO 1 --- [ main] o.s.jdbc.datasource.init.ScriptUtils : Executed SQL script from class path resource [org/springframework/batch/core/schema-hsqldb.sql] in 26 ms.
2016-12-23 09:24:01.573 INFO 1 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2016-12-23 09:24:01.583 INFO 1 --- [ main] o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase -2147483648
2016-12-23 09:24:01.585 INFO 1 --- [ main] o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase 0
2016-12-23 09:24:01.585 INFO 1 --- [ main] o.s.i.endpoint.EventDrivenConsumer : Adding {logging-channel-adapter:_org.springframework.integration.errorLogger} as a subscriber to the 'errorChannel' channel
2016-12-23 09:24:01.586 INFO 1 --- [ main] o.s.i.channel.PublishSubscribeChannel : Channel 'application.errorChannel' has 1 subscriber(s).
2016-12-23 09:24:01.586 INFO 1 --- [ main] o.s.i.endpoint.EventDrivenConsumer : started _org.springframework.integration.errorLogger
2016-12-23 09:24:01.586 INFO 1 --- [ main] o.s.i.endpoint.EventDrivenConsumer : Adding {message-handler} as a subscriber to the 'toFtpChannel' channel
2016-12-23 09:24:01.586 INFO 1 --- [ main] o.s.integration.channel.DirectChannel : Channel 'application.toFtpChannel' has 1 subscriber(s).
2016-12-23 09:24:01.586 INFO 1 --- [ main] o.s.i.endpoint.EventDrivenConsumer : started org.springframework.integration.config.ConsumerEndpointFactoryBean#0
2016-12-23 09:24:01.589 INFO 1 --- [ main] o.s.b.a.b.JobLauncherCommandLineRunner : Running default command line with: [--configJson={"source":"http://s3.footagesearch.com/demos/naturefootage/Q4/OF-04-Fish-Demo-Q4.mp4"}]
2016-12-23 09:24:01.705 INFO 1 --- [ main] o.s.b.c.r.s.JobRepositoryFactoryBean : No database type set, using meta data indicating: HSQL
2016-12-23 09:24:02.405 INFO 1 --- [ main] o.s.b.c.l.support.SimpleJobLauncher : No TaskExecutor has been set, defaulting to synchronous executor.
2016-12-23 09:24:02.534 INFO 1 --- [ main] o.s.b.c.l.support.SimpleJobLauncher : Job: [SimpleJob: [name=transcoding-job]] launched with the following parameters: [{-configJson={"source":"http://s3.footagesearch.com/demos/naturefootage/Q4/OF-04-Fish-Demo-Q4.mp4"}}]
2016-12-23 09:24:02.704 INFO 1 --- [ main] o.s.transcoding.job.TranscodingListener : beforeJob()
2016-12-23 09:24:02.729 INFO 1 --- [ main] o.s.batch.core.job.SimpleStepHandler : Executing step: [read-config-json]
2016-12-23 09:24:02.737 INFO 1 --- [ main] o.s.transcoding.job.ReadConfigJson : Extracting Configuration
2016-12-23 09:24:03.548 INFO 1 --- [ main] o.s.batch.core.job.SimpleStepHandler : Executing step: [transcode-video]
2016-12-23 09:24:03.548 INFO 1 --- [ main] o.s.transcoding.job.ReadConfigJson : Transcoding video file
2016-12-23 09:24:06.243 INFO 1 --- [ main] o.s.transcoding.job.ReadConfigJson : Video Info:
ffmpeg version 2.4.3 Copyright (c) 2000-2014 the FFmpeg developers
built on Nov 13 2014 01:14:29 with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-11)
configuration: --prefix=/usr/local --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib --bindir=/usr/local/bin --extra-libs=-ldl --enable-version3 --enable-libfaac --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-gpl --enable-postproc --enable-nonfree --enable-avresample --enable-libfdk_aac --disable-debug --enable-small
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.101 / 56. 4.101
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.100 / 5. 1.100
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'http://s3.footagesearch.com/demos/naturefootage/Q4/OF-04-Fish-Demo-Q4.mp4':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: mp42mp41
creation_time : 2014-12-04 01:53:08
Duration: 00:01:40.70, start: 0.000000, bitrate: 2671 kb/s
Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720, 2605 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 60k tbc (default)
Metadata:
creation_time : 2014-12-04 01:53:08
handler_name : Apple Video Media Handler
Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 62 kb/s (default)
Metadata:
creation_time : 2014-12-04 01:53:08
handler_name : Apple Sound Media Handler
At least one output file must be specified
2016-12-23 09:24:06.255 INFO 1 --- [ main] o.s.transcoding.job.ReadConfigJson : Height=720.00, Bitrate=2605.00
2016-12-23 09:24:06.584 INFO 1 --- [ main] o.s.transcoding.job.ReadConfigJson : Using final configuration:
{
"source" : "http://s3.footagesearch.com/demos/naturefootage/Q4/OF-04-Fish-Demo-Q4.mp4",
"trim" : {
"start" : 0,
"end" : 0
},
"outputs" : [ {
"height" : 720,
"video_bitrate" : 2200,
"video_codec" : "libx264",
"audio_bitrate" : 62,
"audio_codec" : "libfdk_aac"
}, {
"height" : 144,
"video_bitrate" : 10,
"video_codec" : "libx264",
"audio_bitrate" : 48,
"audio_codec" : "libfdk_aac"
} ],
"snapshot_at" : "00:00:00",
"callback_url" : "http://user:[email protected]/jobs/123",
"destination" : {
"type" : "aws-s3",
"url" : "http://user:[email protected]/bucket/path/to/encoded-folder/",
"file_name_template" : "$originalFileName_$width_$height_$bitrate_kbps"
}
}
2016-12-23 09:24:06.593 INFO 1 --- [ main] o.s.transcoding.job.ReadConfigJson : Running FFMPEG command:
ffmpeg -i http://s3.footagesearch.com/demos/naturefootage/Q4/OF-04-Fish-Demo-Q4.mp4 -c:a libfdk_aac -b:a 62k -c:v libx264 -vf scale=-2:720 -x264opts bitrate=2200 /tmp/streamkit/OF-04-Fish-Demo-Q4_-2_720_2200_kbps.mp4 -c:a libfdk_aac -b:a 48k -c:v libx264 -vf scale=-2:144 -x264opts bitrate=10 /tmp/streamkit/OF-04-Fish-Demo-Q4_-2_144_10_kbps.mp4
ffmpeg version 2.4.3 Copyright (c) 2000-2014 the FFmpeg developers
built on Nov 13 2014 01:14:29 with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-11)
configuration: --prefix=/usr/local --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib --bindir=/usr/local/bin --extra-libs=-ldl --enable-version3 --enable-libfaac --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-gpl --enable-postproc --enable-nonfree --enable-avresample --enable-libfdk_aac --disable-debug --enable-small
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.101 / 56. 4.101
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.100 / 5. 1.100
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'http://s3.footagesearch.com/demos/naturefootage/Q4/OF-04-Fish-Demo-Q4.mp4':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: mp42mp41
creation_time : 2014-12-04 01:53:08
Duration: 00:01:40.70, start: 0.000000, bitrate: 2671 kb/s
Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720, 2605 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 60k tbc (default)
Metadata:
creation_time : 2014-12-04 01:53:08
handler_name : Apple Video Media Handler
Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 62 kb/s (default)
Metadata:
creation_time : 2014-12-04 01:53:08
handler_name : Apple Sound Media Handler
/tmp/streamkit/OF-04-Fish-Demo-Q4_-2_720_2200_kbps.mp4: Permission denied
2016-12-23 09:24:08.665 INFO 1 --- [ main] o.s.transcoding.job.ReadConfigJson : FFMmpeg finished with exitValue=1
2016-12-23 09:24:08.696 INFO 1 --- [ main] o.s.batch.core.job.SimpleStepHandler : Executing step: [take-video-snapshot]
2016-12-23 09:24:08.696 INFO 1 --- [ main] o.s.transcoding.job.SnapshotVideo : Taking snapshot
2016-12-23 09:24:08.779 INFO 1 --- [ main] o.s.batch.core.job.SimpleStepHandler : Executing step: [persist-video-s3]
2016-12-23 09:24:08.779 INFO 1 --- [ main] o.s.transcoding.job.ReadConfigJson : Persisting video to S3
2016-12-23 09:24:08.787 INFO 1 --- [ main] o.s.transcoding.job.TranscodingListener : afterJob(): TODO: MAKE THE HTTP CALLBACK
2016-12-23 09:24:08.790 INFO 1 --- [ main] o.s.b.c.l.support.SimpleJobLauncher : Job: [SimpleJob: [name=transcoding-job]] completed with the following parameters: [{-configJson={"source":"http://s3.footagesearch.com/demos/naturefootage/Q4/OF-04-Fish-Demo-Q4.mp4"}}] and the following status: [STARTED]
2016-12-23 09:24:08.792 INFO 1 --- [ main] o.s.t.VodTranscodingApplication : Started VodTranscodingApplication in 18.664 seconds (JVM running for 20.949)
2016-12-23 09:24:08.793 INFO 1 --- [ Thread-2] s.c.a.AnnotationConfigApplicationContext : Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@7592dc03: startup date [Fri Dec 23 09:23:51 GMT 2016]; root of context hierarchy
2016-12-23 09:24:08.794 INFO 1 --- [ Thread-2] o.s.c.support.DefaultLifecycleProcessor : Stopping beans in phase 0
2016-12-23 09:24:08.799 INFO 1 --- [ Thread-2] o.s.i.endpoint.EventDrivenConsumer : Removing {logging-channel-adapter:_org.springframework.integration.errorLogger} as a subscriber to the 'errorChannel' channel
2016-12-23 09:24:08.800 INFO 1 --- [ Thread-2] o.s.i.channel.PublishSubscribeChannel : Channel 'application.errorChannel' has 0 subscriber(s).
2016-12-23 09:24:08.800 INFO 1 --- [ Thread-2] o.s.i.endpoint.EventDrivenConsumer : stopped _org.springframework.integration.errorLogger
2016-12-23 09:24:08.800 INFO 1 --- [ Thread-2] o.s.i.endpoint.EventDrivenConsumer : Removing {message-handler} as a subscriber to the 'toFtpChannel' channel
2016-12-23 09:24:08.800 INFO 1 --- [ Thread-2] o.s.integration.channel.DirectChannel : Channel 'application.toFtpChannel' has 0 subscriber(s).
2016-12-23 09:24:08.801 INFO 1 --- [ Thread-2] o.s.i.endpoint.EventDrivenConsumer : stopped org.springframework.integration.config.ConsumerEndpointFactoryBean#0
2016-12-23 09:24:08.801 INFO 1 --- [ Thread-2] o.s.c.support.DefaultLifecycleProcessor : Stopping beans in phase -2147483648
2016-12-23 09:24:08.802 INFO 1 --- [ Thread-2] o.s.j.e.a.AnnotationMBeanExporter : Unregistering JMX-exposed beans on shutdown
2016-12-23 09:24:09.086 INFO 1 --- [ Thread-2] o.s.s.c.ThreadPoolTaskScheduler : Shutting down ExecutorService 'taskScheduler'