Tag: ffmpeg

requirements.txt中的依赖关系未安装

我需要部署一个烧瓶应用程序到谷歌应用程序引擎。 我使用docker和线路在Dockerfile中: ADD requirements.txt /app/requirements.txt RUN pip install -r /app/requirements.txt 在requirements.txt文件中: Flask==0.12 gunicorn==19.6.0 boto==2.46.1 gcs-oauth2-boto-plugin==1.8 ffmpeg-normalize 它应该安装所有的依赖关系。 但不知何故“ffmpeg正常化”没有安装在谷歌应用程序引擎实例。 任何人都可以帮助我吗? 如果还有另一种更好的方式来安装软件包,我也会很乐意去做。 谢谢!!

docker上的ffmpegstream

我是新来的docker和ffmpeg。 我正在尝试使用“ jrottenberg / ffmpeg ”容器执行以下POC操作:将video从video摄像机传输到docker集装箱,然后从docker集装箱中取回。 首先,我检查了一下所有在当地的工作。 从摄像机stream(我不知道究竟是什么,所有这些参数,但我发现它的工作): ffmpeg -rtbufsize 1500M -re -f dshow -video_size 1280×720 -framerate 30 -r 30 -i video="Lenovo EasyCamera" -pix_fmt yuv420p -vcodec libx264 -vprofile baseline -an -strict experimental -f mpegts udp://localhost:1234 现在播放stream: ffplay.exe udp://localhost:1234 看video,一切都好。 现在我正在改变本地主机到docker机器ip udp://192.168.99.101:1234 运行docker集装箱,端口转发: docker run -p 1234:1234/udp -p 5555:5555/udp jrottenberg/ffmpeg -i udp://0.0.0.0:1234 -f mpegts udp://0.0.0.0:5555 这似乎工作。 […]

如何用libass / l-smash / x264 / fdk-aac静态编译Alpine中的ffmpeg

我正在试图build立一个具有依赖性的静态二进制文件。 它失败: 错误:没有使用pkg-configfindlibass 我以https://github.com/zimbatm/ffmpeg-static/blob/master/build.sh作为示例 这是docker工人 git clone –depth 1 https://github.com/l-smash/l-smash \ && git clone –depth 1 git://source.ffmpeg.org/ffmpeg \ && git clone –depth 1 git://github.com/mstorsjo/fdk-aac.git \ && git clone –depth 1 https://github.com/mulx/aacgain.git \ && git clone –depth 1 git://git.videolan.org/x264.git \ && hg clone https://bitbucket.org/multicoreware/x265 \ && git clone –depth 1 https://chromium.googlesource.com/webm/libvpx \ && git clone –depth […]

如何从DockerClient.waitContainerCmd()等待ResultCallback?

在我们的J2EE项目中,我们通过依靠docker -java调用java代码中的sjourdan / ffmpeg docker来进行一些video转换。 就目前来看,它看起来像这样(为了简洁,相当简化): CreateContainerCmd createCommand = dockerClient.createContainerCmd("sjourdan/ffmpeg") .withVolumes(aVolume) .withBinds(aBind) .withCmd("a lot of options about the conversion itself, codec, ratio, …"); CreateContainerResponse container = createCommand.exec(); dockerClient.startContainerCmd(container.getId()).exec(); // vanilla implementation of ResultCallback MyResultCallback callback = new MyResultCallback(); dockerClient.waitContainerCmd(container.getId()).exec(callback); 事实上,这个线程一直在等待callback被callback。 我们应该如何强制线程等待直到callback被调用,通知我们docker命令已经完全结束了? 在另一个说明中,如果有人知道如何使用–rm -java将–rm参数添加到正在docker run的–rm docker run命令中,我很感兴趣。

在Docker容器中创build一个千斤顶客户端

我使用插孔在我的电脑中的多个声卡之间路由audio。 要loggingaudio,我使用了一个非常方便的FFmpeg命令,它创build了一个可写的插孔客户端: ffmpeg -f jack -i <client_name> -strict -2 -y <output_file_name> 。 到目前为止这工作得很好。 问题从这里开始: 我也有一个nginx docker,它logging我的数据,并使其可用于stream式传输。 当试图在泊坞窗内使用相同的命令时,我得到以下错误: "Unable to register as a JACK client" 。 我开始查看FFmpeg代码 ,发现FFmpeg命令从jack API调用jack_client_open命令,失败。 好像从docker内部的FFmpeg请求到在主机上运行的jackd服务器之间的连接存在某种问题。 是否有一个简单的方法来创build两个[暴露端口]之间的连接? (我看到了一些像netjack2这样的解决scheme,但是在创build更复杂的服务器 – 客户端体系结构之前,我想找一个更优雅的解决scheme)。 谢谢您的帮助!

当在.net-core中执行docker化的新进程时,在linux上没有指定输出文件的Ffmpeg错误

一段时间以来,我创build了一个完整的.net框架的小程序,可以翻录MP3,然后添加元信息和缩略图。 为了创新,我开始将应用程序移植到.net内核。 之后,我认为这将是在Linux上的Docker中运行这个很酷。 这花了一些时间,但我得到了它的工作。 现在我遇到了这个问题,我可以从video文件撕裂MP3,但是当我尝试结合元信息,缩略图和MP3 ffmpeg告诉我“至less有一个输出文件必须指定” 我添加了一些检查,以便程序可以在Linux和Windows上运行(切换path等) 我试过了: 在Windows上运行相同的参数结构(作品) 手动启动在Linux上的编码(工程) 简化命令中使用的名称,path和标题 replace额外的空格和特殊字符,只允许“ – ”和单个空格 下面我有一个命令的例子,当我手动执行它的时候工作,但是当我的程序执行的时候产生了前面提到的错误。 另外请记住,从video中翻录mp3会导致所需的输出文件。 ffmpeg -i "temp/vid-id.mp3" -i "temp/vid-id.jpg" -map 0:0 -map 1:0 -c copy -y -id3v2_version 3 -metadata title="title" -metadata artist="artist" -metadata album="album" "completed/file – name.mp3" 从.net-core上下文开始,我使用下面的代码片段: using (var ffmpegProcess = new Process()) { ffmpegProcess.EnableRaisingEvents = false; ffmpegProcess.StartInfo.CreateNoWindow = true; ffmpegProcess.StartInfo.UseShellExecute = […]

安装运行为docker容器的nod​​eJS应用程序的graphicsmagik和ffmpeg

我在我的Ubuntu 16.04服务器上部署了一个nodeJS应用程序(这是基于meteorJS和meteor build ) meteor build一个docker集装箱。 我的应用程序需要graphicsmagick和ffmpeg 。 据我所知, ffmpeg应该在libav-tools包中。 我的问题是如何获得这两个需要的软件包到我的应用程序作为docker集装箱运行? 我认为在服务器上通过apt-get graphicsmagick来安装它们是错误的,对吗? 对于这个nodeJS应用程序,我使用这个Dockerfile来创build一个docker镜像: FROM node:4.8-slim # Copy the application files COPY . / # Set required environment variables ENV NODE_ENV production ENV MONGO_URL mongodb://mongo:27017/ ENV ROOT_URL http://localhost ENV PORT 80 EXPOSE 80 # Download the required packages for production RUN (cd programs/server && npm […]

tf.contrib.signal.stft返回一个空matrix

这是我运行的代码片段: import tensorflow as tf sess = tf.InteractiveSession() filename = 'song.mp3' # 30 second mp3 file SAMPLES_PER_SEC = 44100 audio_binary = tf.read_file(filename) pcm = tf.contrib.ffmpeg.decode_audio(audio_binary, file_format='mp3', samples_per_second=SAMPLES_PER_SEC, channel_count = 1) stft = tf.contrib.signal.stft(pcm, frame_length=1024, frame_step=512, fft_length=1024) sess.close() 由于print(pcm.eval().shape)返回,所以mp3文件被正确解码: (1323119, 1) 当我使用print(pcm.eval()[1000:1010])时,甚至有一些实际的非零值: [[ 0.18793298] [ 0.16214484] [ 0.16022217] [ 0.15918455] [ 0.16428113] [ 0.19858395] [ 0.22861415] […]

OCI运行时执行失败:执行失败:(…)可执行文件未在$ PATH中find“:未知

我已经通过libav-tools docker化了一个安装了ffmpeg的应用程序。 该应用程序启动没有问题,但是当stream利ffmpeg NPM模块试图执行ffmpeg命令,这是没有find问题发生。 当我想检查在映像中设置的ffmpeg和linux发行版的版本时,我使用sudo docker exec -it c44f29d30753 "lsb_release -a"命令,但它给出了以下错误: OCI runtime exec failed: exec failed: container_linux.go:296: starting container process caused "exec: \"lsb_release -a\": executable file not found in $PATH": unknown 然后我意识到,它给了我所有的命令,我试图在图像或容器内运行相同的错误。 OCI runtime exec failed: exec failed: container_linux.go:296: starting container process caused "exec: \"ffmpeg -a\": executable file not found in $PATH": unknown 这是我的Dockerfile: […]

NodeJS / Dokku / Docker:ffmpeg用代码127退出

我试图通过Dokku在Docker容器中运行ffmpeg。 我已经大量修改了Dokku插件来完成这个,因为我需要h264的支持。 我目前从fluent-ffmpeg中得到一个错误 错误:ffmpeg用代码127退出 我试图查找什么错误代码127,但没有发现太多。 有些人似乎认为这是findffmpeg的一些问题。 不过,在这个过程中,我确实有一个ffmpeg的libx264错误,所以我很确定ffmpeg二进制文件正在被find。 不幸的是,stream畅的不会将用于ffmpeg的命令行发送到错误事件,所以我不确定执行的确切命令是什么。