
Recherche avancée
Médias (91)
-
Chuck D with Fine Arts Militia - No Meaning No
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Paul Westerberg - Looking Up in Heaven
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Le Tigre - Fake French
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Thievery Corporation - DC 3000
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Dan the Automator - Relaxation Spa Treatment
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Gilberto Gil - Oslodum
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (71)
-
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
Use, discuss, criticize
13 avril 2011, parTalk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
A discussion list is available for all exchanges between users. -
Contribute to a better visual interface
13 avril 2011MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.
Sur d’autres sites (6889)
-
AWS lambda mp4 thumbnail generator using ffmpeg - incorrect format generated
10 avril 2021, par sam bhanduI am trying to create a thumbnail generator for every mp4 file uploaded to the s3 bucket. I have been following this post published by AWS. The code works fine for the transcoding video file. I changed the code to generate a thumbnail. The code does generate a file but it is an invalid image type.


import json
import os
import subprocess
import shlex
import boto3
import uuid

S3_DESTINATION_BUCKET = "example-bucket"
SIGNED_URL_TIMEOUT = 60

def lambda_handler(event, context):

 # s3_source_bucket = event['Records'][0]['s3']['bucket']['name']
 # s3_source_key = event['Records'][0]['s3']['object']['key']
 # s3_source_basename = os.path.splitext(os.path.basename(s3_source_key))[0]
 # s3_destination_filename = s3_source_basename + "_cfr.ts"
 
 hex_c = uuid.uuid4()
 s3_destination_filename = '/{}/{}.{}'.format('tmp',hex_c, 'jpg')
 s3_client = boto3.client('s3')
 s3_media_url = 'https://s3-us-west-2.amazonaws.com/example-bucket/videos/presentations/testing.mp4'
 ffmpeg_cmd = "/opt/bin/ffmpeg -i \"" + s3_media_url + "\" -ss 00:00:02 -vframes 1 \"" + s3_destination_filename + "\""
 # ffmpeg_cmd = "/opt/bin/ffmpeg -i \"" + s3_source_signed_url + "\" -f mpegts -c:v copy -af aresample=async=1:first_pts=0 -"
 
 command1 = shlex.split(ffmpeg_cmd)
 p1 = subprocess.run(command1, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
 resp = s3_client.put_object(Body=s3_destination_filename, Bucket=S3_DESTINATION_BUCKET, Key='{}{}'.format(hex_c, '.jpg'))
 return {
 'statusCode': 200,
 'body': json.dumps('Processing complete successfully')
 }



Output is as :


{
 "statusCode": 200,
 "body": "\"Processing complete successfully\""
}

Function Logs
START RequestId: b73aaacc-5da5-417a-9f98-5def438dee96 Version: $LATEST
ffmpeg version 4.1.3-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2019 the FFmpeg developers
 built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
 configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc-6 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzvbi --enable-libzimg
 libavutil 56. 22.100 / 56. 22.100
 libavcodec 58. 35.100 / 58. 35.100
 libavformat 58. 20.100 / 58. 20.100
 libavdevice 58. 5.100 / 58. 5.100
 libavfilter 7. 40.101 / 7. 40.101
 libswscale 5. 3.100 / 5. 3.100
 libswresample 3. 3.100 / 3. 3.100
 libpostproc 55. 3.100 / 55. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://s3-us-west-2.amazonaws.com/example-bucket/videos/presentations/testing.mp4':
 Metadata:
 major_brand : isom
 minor_version : 1
 compatible_brands: isomavc1mp42
 creation_time : 2020-04-17T18:31:33.000000Z
 Duration: 00:00:33.07, start: 0.000000, bitrate: 90 kb/s
 Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 854x480 [SAR 1:1 DAR 427:240], 23 kb/s, 30 fps, 30 tbr, 30 tbn, 60 tbc (default)
 Metadata:
 creation_time : 2020-04-17T18:31:29.000000Z
 Stream #0:1(eng): Audio: aac (HE-AAC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 64 kb/s (default)
 Metadata:
 creation_time : 2020-04-17T18:31:29.000000Z
Stream mapping:
 Stream #0:0 -> #0:0 (h264 (native) -> mjpeg (native))
Press [q] to stop, [?] for help
[swscaler @ 0x67ddc40] deprecated pixel format used, make sure you did set range correctly
Output #0, image2, to '/tmp/4633bb13-4a15-49b7-a445-d910bebaddf6.jpg':
 Metadata:
 major_brand : isom
 minor_version : 1
 compatible_brands: isomavc1mp42
 encoder : Lavf58.20.100
 Stream #0:0(und): Video: mjpeg, yuvj420p(pc), 854x480 [SAR 1:1 DAR 427:240], q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default)
 Metadata:
 creation_time : 2020-04-17T18:31:29.000000Z
 encoder : Lavc58.35.100 mjpeg
 Side data:
 cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
frame= 0 fps=0.0 q=0.0 size=N/A time=00:00:00.00 bitrate=N/A speed= 0x 
frame= 0 fps=0.0 q=0.0 size=N/A time=00:00:00.00 bitrate=N/A speed= 0x 
frame= 0 fps=0.0 q=0.0 size=N/A time=00:00:00.00 bitrate=N/A speed= 0x 
frame= 1 fps=0.4 q=6.3 Lsize=N/A time=00:00:00.03 bitrate=N/A speed=0.0149x 
video:14kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
END RequestId: b73aaacc-5da5-417a-9f98-5def438dee96
REPORT RequestId: b73aaacc-5da5-417a-9f98-5def438dee96 Duration: 6349.25 ms Billed Duration: 6350 ms Memory Size: 155 MB Max Memory Used: 123 MB Init Duration: 368.12 ms

Request ID
b73aaacc-5da5-417a-9f98-5def438dee96



An image file is uploaded to the S3 folder, but when I try to open it flags an invalid file format. The file size is only 40.0 Bytes.
S3 bucket image folder
invalid file format


-
AWS Lambda : ffmpeg thumbnails Generator : empty JPG
3 septembre 2020, par MagikeyWhen a video is uploaded on S3 i want to store a JPG screenshot.



On a lambda function with amazon AWS, i do :



...

 let tmpFile = createWriteStream(`/tmp/screenshot.jpg`)

 var ffmpeg = spawn(ffmpegPath, [
 "-ss","00:00:05",
 "-i", target,
 "-vf", "thumbnail,scale=200:200", 
 "-qscale:v" ,"2",
 "-frames:v", "1",
 "-f", "image2",
 "-c:v", "mjpeg",
 "pipe:1"
 ]);

 ffmpeg.stdout.pipe(tmpFile).on("error", err => {
 console.log("Error A: ",err);
 });

 ffmpeg.on('error', err => {
 console.log("Error B", err)
 reject()
 })

 ffmpeg.on('close', code => {
 tmpFile.end();
 console.log('Log A', ffmpeg);

 child_process.exec("echo `ls -l -R /tmp`",
 (error, stdout, stderr) => {
 console.log(stdout)
 });

 resolve()
 })
...




But the result is an empty JPG file in S3.



Logs shows no errors, my "target" is OK, stdout ls show me the empty JPG file.



I have try a lot of things, like use other version of ffmpeg but same.



There is the "console.log('Log A', ffmpeg)" :



ChildProcess {
 _events: [Object: null prototype] { error: [Function], close: [Function] },
 _eventsCount: 2,
 _maxListeners: undefined,
 _closesNeeded: 3,
 _closesGot: 3,
 connected: false,
 signalCode: 'SIGSEGV',
 exitCode: null,
 killed: false,
 spawnfile: '/opt/nodejs/ffmpeg',
 _handle: null,
 spawnargs: [
 '/opt/nodejs/ffmpeg',
 '-ss',
 '00:00:05',
 '-i',
 'https://xxxxxxxxx',
 '-vf',
 'thumbnail,scale=200:200',
 '-qscale:v',
 '2',
 '-frames:v',
 '1',
 '-f',
 'image2',
 '-v',
 '16',
 '-c:v',
 'mjpeg',
 'pipe:1'
 ],
 pid: 24,
 stdin: Socket {
 connecting: false,
 _hadError: false,
 _parent: null,
 _host: null,
 _readableState: ReadableState {
 objectMode: false,
 highWaterMark: 16384,
 buffer: BufferList { head: null, tail: null, length: 0 },
 length: 0,
 pipes: null,
 pipesCount: 0,
 flowing: null,
 ended: false,
 endEmitted: false,
 reading: false,
 sync: true,
 needReadable: false,
 emittedReadable: false,
 readableListening: false,
 resumeScheduled: false,
 paused: true,
 emitClose: false,
 autoDestroy: false,
 destroyed: true,
 defaultEncoding: 'utf8',
 awaitDrain: 0,
 readingMore: false,
 decoder: null,
 encoding: null
 },
 readable: false,
 _events: [Object: null prototype] { end: [Function: onReadableStreamEnd] },
 _eventsCount: 1,
 _maxListeners: undefined,
 _writableState: WritableState {
 objectMode: false,
 highWaterMark: 16384,
 finalCalled: false,
 needDrain: false,
 ending: false,
 ended: false,
 finished: false,
 destroyed: true,
 decodeStrings: false,
 defaultEncoding: 'utf8',
 length: 0,
 writing: false,
 corked: 0,
 sync: true,
 bufferProcessing: false,
 onwrite: [Function: bound onwrite],
 writecb: null,
 writelen: 0,
 bufferedRequest: null,
 lastBufferedRequest: null,
 pendingcb: 0,
 prefinished: false,
 errorEmitted: false,
 emitClose: false,
 autoDestroy: false,
 bufferedRequestCount: 0,
 corkedRequestsFree: [Object]
 },
 writable: false,
 allowHalfOpen: false,
 _sockname: null,
 _pendingData: null,
 _pendingEncoding: '',
 server: null,
 _server: null,
 [Symbol(asyncId)]: 5,
 [Symbol(kHandle)]: null,
 [Symbol(lastWriteQueueSize)]: 0,
 [Symbol(timeout)]: null,
 [Symbol(kBuffer)]: null,
 [Symbol(kBufferCb)]: null,
 [Symbol(kBufferGen)]: null,
 [Symbol(kBytesRead)]: 0,
 [Symbol(kBytesWritten)]: 0
 },
 stdout: Socket {
 connecting: false,
 _hadError: false,
 _parent: null,
 _host: null,
 _readableState: ReadableState {
 objectMode: false,
 highWaterMark: 16384,
 buffer: BufferList { head: null, tail: null, length: 0 },
 length: 0,
 pipes: null,
 pipesCount: 0,
 flowing: false,
 ended: true,
 endEmitted: true,
 reading: false,
 sync: false,
 needReadable: false,
 emittedReadable: false,
 readableListening: false,
 resumeScheduled: false,
 paused: false,
 emitClose: false,
 autoDestroy: false,
 destroyed: true,
 defaultEncoding: 'utf8',
 awaitDrain: 0,
 readingMore: false,
 decoder: null,
 encoding: null
 },
 readable: false,
 _events: [Object: null prototype] {
 end: [Function: onReadableStreamEnd],
 close: [Function]
 },
 _eventsCount: 2,
 _maxListeners: undefined,
 _writableState: WritableState {
 objectMode: false,
 highWaterMark: 16384,
 finalCalled: false,
 needDrain: false,
 ending: false,
 ended: false,
 finished: false,
 destroyed: true,
 decodeStrings: false,
 defaultEncoding: 'utf8',
 length: 0,
 writing: false,
 corked: 0,
 sync: true,
 bufferProcessing: false,
 onwrite: [Function: bound onwrite],
 writecb: null,
 writelen: 0,
 bufferedRequest: null,
 lastBufferedRequest: null,
 pendingcb: 0,
 prefinished: false,
 errorEmitted: false,
 emitClose: false,
 autoDestroy: false,
 bufferedRequestCount: 0,
 corkedRequestsFree: [Object]
 },
 writable: false,
 allowHalfOpen: false,
 _sockname: null,
 _pendingData: null,
 _pendingEncoding: '',
 server: null,
 _server: null,
 write: [Function: writeAfterFIN],
 [Symbol(asyncId)]: 6,
 [Symbol(kHandle)]: null,
 [Symbol(lastWriteQueueSize)]: 0,
 [Symbol(timeout)]: null,
 [Symbol(kBuffer)]: null,
 [Symbol(kBufferCb)]: null,
 [Symbol(kBufferGen)]: null,
 [Symbol(kBytesRead)]: 0,
 [Symbol(kBytesWritten)]: 0
 },
 stderr: Socket {
 connecting: false,
 _hadError: false,
 _parent: null,
 _host: null,
 _readableState: ReadableState {
 objectMode: false,
 highWaterMark: 16384,
 buffer: BufferList { head: null, tail: null, length: 0 },
 length: 0,
 pipes: null,
 pipesCount: 0,
 flowing: null,
 ended: true,
 endEmitted: true,
 reading: false,
 sync: false,
 needReadable: false,
 emittedReadable: false,
 readableListening: false,
 resumeScheduled: false,
 paused: true,
 emitClose: false,
 autoDestroy: false,
 destroyed: true,
 defaultEncoding: 'utf8',
 awaitDrain: 0,
 readingMore: false,
 decoder: null,
 encoding: null
 },
 readable: false,
 _events: [Object: null prototype] {
 end: [Function: onReadableStreamEnd],
 close: [Function]
 },
 _eventsCount: 2,
 _maxListeners: undefined,
 _writableState: WritableState {
 objectMode: false,
 highWaterMark: 16384,
 finalCalled: false,
 needDrain: false,
 ending: false,
 ended: false,
 finished: false,
 destroyed: true,
 decodeStrings: false,
 defaultEncoding: 'utf8',
 length: 0,
 writing: false,
 corked: 0,
 sync: true,
 bufferProcessing: false,
 onwrite: [Function: bound onwrite],
 writecb: null,
 writelen: 0,
 bufferedRequest: null,
 lastBufferedRequest: null,
 pendingcb: 0,
 prefinished: false,
 errorEmitted: false,
 emitClose: false,
 autoDestroy: false,
 bufferedRequestCount: 0,
 corkedRequestsFree: [Object]
 },
 writable: false,
 allowHalfOpen: false,
 _sockname: null,
 _pendingData: null,
 _pendingEncoding: '',
 server: null,
 _server: null,
 write: [Function: writeAfterFIN],
 [Symbol(asyncId)]: 7,
 [Symbol(kHandle)]: null,
 [Symbol(lastWriteQueueSize)]: 0,
 [Symbol(timeout)]: null,
 [Symbol(kBuffer)]: null,
 [Symbol(kBufferCb)]: null,
 [Symbol(kBufferGen)]: null,
 [Symbol(kBytesRead)]: 0,
 [Symbol(kBytesWritten)]: 0
 },
 stdio: [
 Socket {
 connecting: false,
 _hadError: false,
 _parent: null,
 _host: null,
 _readableState: [ReadableState],
 readable: false,
 _events: [Object: null prototype],
 _eventsCount: 1,
 _maxListeners: undefined,
 _writableState: [WritableState],
 writable: false,
 allowHalfOpen: false,
 _sockname: null,
 _pendingData: null,
 _pendingEncoding: '',
 server: null,
 _server: null,
 [Symbol(asyncId)]: 5,
 [Symbol(kHandle)]: null,
 [Symbol(lastWriteQueueSize)]: 0,
 [Symbol(timeout)]: null,
 [Symbol(kBuffer)]: null,
 [Symbol(kBufferCb)]: null,
 [Symbol(kBufferGen)]: null,
 [Symbol(kBytesRead)]: 0,
 [Symbol(kBytesWritten)]: 0
 },
 Socket {
 connecting: false,
 _hadError: false,
 _parent: null,
 _host: null,
 _readableState: [ReadableState],
 readable: false,
 _events: [Object: null prototype],
 _eventsCount: 2,
 _maxListeners: undefined,
 _writableState: [WritableState],
 writable: false,
 allowHalfOpen: false,
 _sockname: null,
 _pendingData: null,
 _pendingEncoding: '',
 server: null,
 _server: null,
 write: [Function: writeAfterFIN],
 [Symbol(asyncId)]: 6,
 [Symbol(kHandle)]: null,
 [Symbol(lastWriteQueueSize)]: 0,
 [Symbol(timeout)]: null,
 [Symbol(kBuffer)]: null,
 [Symbol(kBufferCb)]: null,
 [Symbol(kBufferGen)]: null,
 [Symbol(kBytesRead)]: 0,
 [Symbol(kBytesWritten)]: 0
 },
 Socket {
 connecting: false,
 _hadError: false,
 _parent: null,
 _host: null,
 _readableState: [ReadableState],
 readable: false,
 _events: [Object: null prototype],
 _eventsCount: 2,
 _maxListeners: undefined,
 _writableState: [WritableState],
 writable: false,
 allowHalfOpen: false,
 _sockname: null,
 _pendingData: null,
 _pendingEncoding: '',
 server: null,
 _server: null,
 write: [Function: writeAfterFIN],
 [Symbol(asyncId)]: 7,
 [Symbol(kHandle)]: null,
 [Symbol(lastWriteQueueSize)]: 0,
 [Symbol(timeout)]: null,
 [Symbol(kBuffer)]: null,
 [Symbol(kBufferCb)]: null,
 [Symbol(kBufferGen)]: null,
 [Symbol(kBytesRead)]: 0,
 [Symbol(kBytesWritten)]: 0
 }
 ]
} ```



-
avcodec_find_decoder for FFMpeg 2.1 is not working with Android
18 mars 2014, par Fabien HenonI ported FFMpeg 2.1 to Android with NDK and I wrote a JNI function to initialize a video.
Here is the code of this C function :
JNIEXPORT int JNICALL Java_com_media_ffmpeg_FFMpeg_naInit(JNIEnv *pEnv, jobject pObj, jstring pfilename) {
gVideoFileName = (char *) (*pEnv)->GetStringUTFChars(pEnv, pfilename, NULL);
__android_log_print(ANDROID_LOG_INFO, TAG, "Init %s\n", gVideoFileName);
avcodec_register_all();
__android_log_print(ANDROID_LOG_INFO, TAG, "avcodec_register_all\n");
av_register_all();
__android_log_print(ANDROID_LOG_INFO, TAG, "av_register_all\n");
VideoState *vs;
__android_log_print(ANDROID_LOG_INFO, TAG, "VideoState var\n");
vs = malloc(sizeof (VideoState));
memset(vs, 0, sizeof(VideoState));
__android_log_print(ANDROID_LOG_INFO, TAG, "malloc\n");
gvs = vs;
__android_log_print(ANDROID_LOG_INFO, TAG, "VideoState\n");
//open the video file
avformat_open_input(&vs->pFormatCtx, gVideoFileName, NULL, NULL);
__android_log_print(ANDROID_LOG_INFO, TAG, "open_input\n");
//retrieve stream info
avformat_find_stream_info(vs->pFormatCtx, NULL);
__android_log_print(ANDROID_LOG_INFO, TAG, "find_stream_info\n");
//find the video stream
AVCodecContext *pcodecctx;
//find the first video stream
vs->videoStreamIdx = -1;
__android_log_print(ANDROID_LOG_INFO, TAG, "before loop\n");
AVCodec *pcodec;
vs->videoStreamIdx = av_find_best_stream(vs->pFormatCtx, AVMEDIA_TYPE_VIDEO, -1, -1, &pcodec, 0);
__android_log_print(ANDROID_LOG_INFO, TAG, "after loop. %d\n", vs->videoStreamIdx);
//get the decoder from the video stream
pcodecctx = vs->pFormatCtx->streams[vs->videoStreamIdx]->codec;
__android_log_print(ANDROID_LOG_INFO, TAG, "stream selected %d, %d\n", pcodecctx != NULL ? 1 : 0, pcodecctx->codec_id);
pcodec = avcodec_find_decoder(pcodecctx->codec_id);
__android_log_print(ANDROID_LOG_INFO, TAG, "find_decoder\n");
//open the codec
avcodec_open2(pcodecctx, pcodec, NULL);
__android_log_print(ANDROID_LOG_INFO, TAG, "open2\n");
return 0;
}When I execute this function from my Java code the log
find_decoder
(after the call to the functionavcodec_find_decoder
) is never displayed.Everything is correct : pointers have correct values and
pcodecctx->codec_id
has a value equal to 28.
But whenavcodec_find_decoder
there is nothing more, like a crash and I have no more log.Did I do something wrong when using and initializing FFMpeg ?
PS : before that instead of a call to
malloc
, thenmemset
I had a call toav_mallocz
but I also had a crash at this point, and replacing this call bymalloc
andmemset
fixed the crash.EDIT
I built
FFMpeg
using this script :#!/bin/bash
NDK=/Users/me/android-ndk
SYSROOT=$NDK/platforms/android-8/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86_64
function build_one
{
./configure \
--prefix=$PREFIX \
--disable-shared \
--enable-static \
--disable-doc \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-avdevice \
--disable-doc \
--disable-symver \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--target-os=linux \
--arch=arm \
--enable-cross-compile \
--sysroot=$SYSROOT \
--extra-cflags="-Os -fpic $ADDI_CFLAGS" \
--extra-ldflags="$ADDI_LDFLAGS" \
$ADDITIONAL_CONFIGURE_FLAG
make clean
make
make install
}
CPU=arm
PREFIX=$(pwd)/android/$CPU
ADDI_CFLAGS="-marm"
build_oneEDIT 2
Here is the output for the configuration of the build of the library
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1
install prefix /Users/fabienhenon/android-ndk/sources/ffmpeg/android/arm
source path .
C compiler /Users/fabienhenon/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-gcc
C library bionic
host C compiler gcc
host C library
ARCH arm (armv5te)
big-endian no
runtime cpu detection yes
ARMv5TE enabled yes
ARMv6 enabled yes
ARMv6T2 enabled yes
VFP enabled yes
NEON enabled yes
THUMB enabled no
debug symbols yes
strip symbols yes
optimize for size no
optimizations yes
static yes
shared no
postprocessing support no
new filter support yes
network support yes
threading support pthreads
safe bitstream reader yes
SDL support no
opencl enabled no
libzvbi enabled no
texi2html enabled no
perl enabled yes
pod2man enabled yes
makeinfo enabled yes
External libraries:
zlib
Enabled decoders:
aac bmp iac
aac_latm bmv_audio idcin
aasc bmv_video idf
ac3 brender_pix iff_byterun1
adpcm_4xm c93 iff_ilbm
adpcm_adx cavs imc
adpcm_afc cdgraphics indeo2
adpcm_ct cdxl indeo3
adpcm_dtk cinepak indeo4
adpcm_ea cljr indeo5
adpcm_ea_maxis_xa cllc interplay_dpcm
adpcm_ea_r1 comfortnoise interplay_video
adpcm_ea_r2 cook jacosub
adpcm_ea_r3 cpia jpeg2000
adpcm_ea_xas cscd jpegls
adpcm_g722 cyuv jv
adpcm_g726 dca kgv1
adpcm_g726le dfa kmvc
adpcm_ima_amv dirac lagarith
adpcm_ima_apc dnxhd loco
adpcm_ima_dk3 dpx mace3
adpcm_ima_dk4 dsicinaudio mace6
adpcm_ima_ea_eacs dsicinvideo mdec
adpcm_ima_ea_sead dvbsub metasound
adpcm_ima_iss dvdsub microdvd
adpcm_ima_oki dvvideo mimic
adpcm_ima_qt dxa mjpeg
adpcm_ima_rad dxtory mjpegb
adpcm_ima_smjpeg eac3 mlp
adpcm_ima_wav eacmv mmvideo
adpcm_ima_ws eamad motionpixels
adpcm_ms eatgq movtext
adpcm_sbpro_2 eatgv mp1
adpcm_sbpro_3 eatqi mp1float
adpcm_sbpro_4 eightbps mp2
adpcm_swf eightsvx_exp mp2float
adpcm_thp eightsvx_fib mp3
adpcm_xa escape124 mp3adu
adpcm_yamaha escape130 mp3adufloat
aic evrc mp3float
alac exr mp3on4
als ffv1 mp3on4float
amrnb ffvhuff mpc7
amrwb ffwavesynth mpc8
amv flac mpeg1video
anm flashsv mpeg2video
ansi flashsv2 mpeg4
ape flic mpegvideo
ass flv mpl2
asv1 fourxm msa1
asv2 fraps msmpeg4v1
atrac1 frwu msmpeg4v2
atrac3 g2m msmpeg4v3
aura g723_1 msrle
aura2 g729 mss1
avrn gif mss2
avrp gsm msvideo1
avs gsm_ms mszh
avui h261 mts2
ayuv h263 mvc1
bethsoftvid h263i mvc2
bfi h263p mxpeg
bink h264 nellymoser
binkaudio_dct hevc nuv
binkaudio_rdft hnm4_video paf_audio
bintext huffyuv paf_video
pam realtext v308
pbm rl2 v408
pcm_alaw roq v410
pcm_bluray roq_dpcm vb
pcm_dvd rpza vble
pcm_f32be rv10 vc1
pcm_f32le rv20 vc1image
pcm_f64be rv30 vcr1
pcm_f64le rv40 vima
pcm_lxf s302m vmdaudio
pcm_mulaw sami vmdvideo
pcm_s16be sanm vmnc
pcm_s16be_planar sgi vorbis
pcm_s16le sgirle vp3
pcm_s16le_planar shorten vp5
pcm_s24be sipr vp6
pcm_s24daud smackaud vp6a
pcm_s24le smacker vp6f
pcm_s24le_planar smc vp8
pcm_s32be smvjpeg vp9
pcm_s32le snow vplayer
pcm_s32le_planar sol_dpcm vqa
pcm_s8 sonic wavpack
pcm_s8_planar sp5x webp
pcm_u16be srt webvtt
pcm_u16le ssa wmalossless
pcm_u24be subrip wmapro
pcm_u24le subviewer wmav1
pcm_u32be subviewer1 wmav2
pcm_u32le sunrast wmavoice
pcm_u8 svq1 wmv1
pcm_zork svq3 wmv2
pcx tak wmv3
pgm targa wmv3image
pgmyuv targa_y216 wnv1
pgssub text ws_snd1
pictor theora xan_dpcm
pjs thp xan_wc3
png tiertexseqvideo xan_wc4
ppm tiff xbin
prores tmv xbm
prores_lgpl truehd xface
ptx truemotion1 xl
qcelp truemotion2 xsub
qdm2 truespeech xwd
qdraw tscc y41p
qpeg tscc2 yop
qtrle tta yuv4
r10k twinvq zero12v
r210 txd zerocodec
ra_144 ulti zlib
ra_288 utvideo zmbv
ralf v210
rawvideo v210x
Enabled encoders:
a64multi ljpeg prores
a64multi5 mjpeg prores_aw
aac movtext prores_ks
ac3 mp2 qtrle
ac3_fixed mp2fixed r10k
adpcm_adx mpeg1video r210
adpcm_g722 mpeg2video ra_144
adpcm_g726 mpeg4 rawvideo
adpcm_ima_qt msmpeg4v2 roq
adpcm_ima_wav msmpeg4v3 roq_dpcm
adpcm_ms msvideo1 rv10
adpcm_swf nellymoser rv20
adpcm_yamaha pam s302m
alac pbm sgi
amv pcm_alaw snow
ass pcm_f32be sonic
asv1 pcm_f32le sonic_ls
asv2 pcm_f64be srt
avrp pcm_f64le ssa
avui pcm_mulaw subrip
ayuv pcm_s16be sunrast
bmp pcm_s16be_planar svq1
cljr pcm_s16le targa
comfortnoise pcm_s16le_planar tiff
dca pcm_s24be tta
dnxhd pcm_s24daud utvideo
dpx pcm_s24le v210
dvbsub pcm_s24le_planar v308
dvdsub pcm_s32be v408
dvvideo pcm_s32le v410
eac3 pcm_s32le_planar vorbis
ffv1 pcm_s8 wavpack
ffvhuff pcm_s8_planar wmav1
flac pcm_u16be wmav2
flashsv pcm_u16le wmv1
flashsv2 pcm_u24be wmv2
flv pcm_u24le xbm
g723_1 pcm_u32be xface
gif pcm_u32le xsub
h261 pcm_u8 xwd
h263 pcx y41p
h263p pgm yuv4
huffyuv pgmyuv zlib
jpeg2000 png zmbv
jpegls ppm
Enabled hwaccels:
Enabled parsers:
aac dvd_nav mpegvideo
aac_latm dvdsub png
ac3 flac pnm
adx gsm rv30
bmp h261 rv40
cavsvideo h263 tak
cook h264 vc1
dca hevc vorbis
dirac mjpeg vp3
dnxhd mlp vp8
dpx mpeg4video vp9
dvbsub mpegaudio
Enabled demuxers:
aac hevc pcm_s32le
ac3 hls pcm_s8
act hnm pcm_u16be
adf ico pcm_u16le
adp idcin pcm_u24be
adx idf pcm_u24le
aea iff pcm_u32be
afc ilbc pcm_u32le
aiff image2 pcm_u8
amr image2pipe pjs
anm ingenient pmp
apc ipmovie pva
ape ircam pvf
aqtitle iss qcp
asf iv8 r3d
ass ivf rawvideo
ast jacosub realtext
au jv redspark
avi latm rl2
avr lmlm4 rm
avs loas roq
bethsoftvid lvf rpl
bfi lxf rsd
bink m4v rso
bintext matroska rtp
bit mgsts rtsp
bmv microdvd sami
boa mjpeg sap
brstm mlp sbg
c93 mm sdp
caf mmf segafilm
cavsvideo mov shorten
cdg mp3 siff
cdxl mpc smacker
concat mpc8 smjpeg
data mpegps smush
daud mpegts sol
dfa mpegtsraw sox
dirac mpegvideo spdif
dnxhd mpl2 srt
dsicin mpsub str
dts msnwc_tcp subviewer
dtshd mtv subviewer1
dv mv swf
dxa mvi tak
ea mxf tedcaptions
ea_cdata mxg thp
eac3 nc tiertexseq
epaf nistsphere tmv
ffm nsv truehd
ffmetadata nut tta
filmstrip nuv tty
flac ogg txd
flic oma vc1
flv paf vc1t
fourxm pcm_alaw vivo
frm pcm_f32be vmd
g722 pcm_f32le vobsub
g723_1 pcm_f64be voc
g729 pcm_f64le vplayer
gif pcm_mulaw vqf
gsm pcm_s16be w64
gxf pcm_s16le wav
h261 pcm_s24be wc3
h263 pcm_s24le webvtt
h264 pcm_s32be wsaud
wsvqa xa xwma
wtv xbin yop
wv xmv yuv4mpegpipe
Enabled muxers:
a64 image2pipe pcm_s24be
ac3 ipod pcm_s24le
adts ircam pcm_s32be
adx ismv pcm_s32le
aiff ivf pcm_s8
amr jacosub pcm_u16be
asf latm pcm_u16le
asf_stream m4v pcm_u24be
ass matroska pcm_u24le
ast matroska_audio pcm_u32be
au md5 pcm_u32le
avi microdvd pcm_u8
avm2 mjpeg psp
bit mkvtimestamp_v2 rawvideo
caf mlp rm
cavsvideo mmf roq
crc mov rso
data mp2 rtp
daud mp3 rtsp
dirac mp4 sap
dnxhd mpeg1system segment
dts mpeg1vcd smjpeg
dv mpeg1video smoothstreaming
eac3 mpeg2dvd sox
f4v mpeg2svcd spdif
ffm mpeg2video speex
ffmetadata mpeg2vob srt
filmstrip mpegts stream_segment
flac mpjpeg swf
flv mxf tee
framecrc mxf_d10 tg2
framemd5 null tgp
g722 nut truehd
g723_1 ogg vc1
gif oma vc1t
gxf opus voc
h261 pcm_alaw w64
h263 pcm_f32be wav
h264 pcm_f32le webm
hds pcm_f64be webvtt
hls pcm_f64le wtv
ico pcm_mulaw wv
ilbc pcm_s16be yuv4mpegpipe
image2 pcm_s16le
Enabled protocols:
cache hls rtmpt
concat http rtp
crypto httpproxy srtp
data md5 tcp
ffrtmphttp mmsh udp
file mmst unix
ftp pipe
gopher rtmp
Enabled filters:
aconvert colorchannelmixer null
adelay compand nullsink
aecho concat nullsrc
aeval copy overlay
aevalsrc crop pad
afade curves pan
aformat dctdnoiz perms
ainterleave decimate pixdesctest
allpass deshake psnr
alphaextract drawbox removelogo
alphamerge drawgrid replaygain
amerge earwax rgbtestsrc
amix edgedetect rotate
amovie elbg scale
anull equalizer select
anullsink extractplanes sendcmd
anullsrc fade separatefields
apad field setdar
aperms fieldmatch setfield
aphaser fieldorder setpts
aresample format setsar
aselect fps settb
asendcmd framestep showinfo
asetnsamples gradfun showspectrum
asetpts haldclut showwaves
asetrate haldclutsrc silencedetect
asettb hflip sine
ashowinfo highpass smptebars
asplit histogram smptehdbars
astats hue split
astreamsync idet swapuv
atempo il telecine
atrim interleave testsrc
avectorscope join thumbnail
bandpass life tile
bandreject lowpass transpose
bass lut treble
bbox lut3d trim
biquad lutrgb unsharp
blackdetect lutyuv vflip
blend mandelbrot vignette
cellauto mergeplanes volume
channelmap movie volumedetect
channelsplit negate w3fdif
color noformat
colorbalance noise
Enabled bsfs:
aac_adtstoasc imx_dump_header mp3_header_decompress
chomp mjpeg2jpeg noise
dump_extradata mjpega_dump_header remove_extradata
h264_mp4toannexb mov2textsub text2movsub
Enabled indevs:
dv1394 lavfi
fbdev v4l2
Enabled outdevs:
fbdev v4l2
License: LGPL version 2.1 or later