
Recherche avancée
Médias (5)
-
ED-ME-5 1-DVD
11 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Audio
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
-
Valkaama DVD Cover Outside
4 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Image
-
Valkaama DVD Label
4 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Image
-
Valkaama DVD Cover Inside
4 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Image
Autres articles (107)
-
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
Submit bugs and patches
13 avril 2011Unfortunately a software is never perfect.
If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
You may also (...) -
Personnaliser les catégories
21 juin 2013, parFormulaire de création d’une catégorie
Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
On peut modifier ce formulaire dans la partie :
Administration > Configuration des masques de formulaire.
Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)
Sur d’autres sites (11713)
-
Decoding a h.264 stream with MediaCodec, dequeueOutputBuffer always return -1
20 septembre 2016, par bitto bittaI am trying to use the MediaCodec API for decoding live-stream screen capture from PC by ffmpeg.
For Sender (PC ffmpeg)
i use this command
ffmpeg -re -f gdigrab -s 1920x1080 -threads 4 -i desktop -vcodec libx264 -pix_fmt yuv420p -tune zerolatency -profile:v baseline -flags global_header -s 1280x720 -an -f rtp rtp://192.168.1.6:1234
and output looks like this
Output #0, rtp, to 'rtp://192.168.1.6:1234':
Metadata:
encoder : Lavf56.15.104
Stream #0:0: Video: h264 (libx264), yuv420p, 1280x720, q=-1--1, 29.97 fps, 90k tbn, 29.97 tbc
Metadata:
encoder : Lavc56.14.100 libx264
Stream mapping:
Stream #0:0 -> #0:0 (bmp (native) -> h264 (libx264))
SDP:
v=0
o=- 0 0 IN IP4 127.0.0.1
s=No Name
c=IN IP4 192.168.1.6
t=0 0
a=tool:libavformat 56.15.104
m=video 1234 RTP/AVP 96
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1; sprop-parameter-sets=Z0LAH9kAUAW6EAAAPpAADqYI8YMkgA==,aMuDyyA=; profile-level-id=42C01F
Press [q] to stop, [?] for help
frame= 19 fps=0.0 q=17.0 size= 141kB time=00:00:00.63 bitrate=1826.0kbits/
frame= 34 fps= 32 q=17.0 size= 164kB time=00:00:01.13 bitrate=1181.5kbits/
frame= 50 fps= 32 q=18.0 size= 173kB time=00:00:01.66 bitrate= 850.9kbits/For Receiver (Android MediaCodec)
I created activity with surface and implements SurfaceHolder.Callback
In surfaceChanged
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
Log.i("sss", "surfaceChanged");
if( playerThread == null ) {
playerThread = new PlayerThread(holder.getSurface());
playerThread.start();
}
}For PlayerThread
class PlayerThread extends Thread {
MediaCodec decoder;
Surface surface;
public PlayerThread(Surface surface) {
this.surface = surface;
}
@Override
public void run() {
running = true;
try {
MediaFormat format = MediaFormat.createVideoFormat("video/avc", 1280, 720);
byte[] header = new byte[] {0,0,0,1};
byte[] sps = Base64.decode("Z0LAH9kAUAW6EAAAPpAADqYI8YMkgA==", Base64.DEFAULT);
byte[] pps = Base64.decode("aMuDyyA=", Base64.DEFAULT);
byte[] header_sps = new byte[sps.length + header.length];
System.arraycopy(header,0,header_sps,0,header.length);
System.arraycopy(sps,0,header_sps,header.length, sps.length);
byte[] header_pps = new byte[pps.length + header.length];
System.arraycopy(header,0, header_pps, 0, header.length);
System.arraycopy(pps, 0, header_pps, header.length, pps.length);
format.setByteBuffer("csd-0", ByteBuffer.wrap(header_sps));
format.setByteBuffer("csd-1", ByteBuffer.wrap(header_pps));
format.setInteger(MediaFormat.KEY_MAX_INPUT_SIZE, 1280 * 720);
// format.setInteger("durationUs", 63446722);
// format.setByteBuffer("csd-2", ByteBuffer.wrap((hexStringToByteArray("42C01E"))));
// format.setInteger(MediaFormat.KEY_COLOR_FORMAT ,MediaCodecInfo.CodecCapabilities.COLOR_FormatYUV420Planar);
Log.i("sss", "Format = " + format);
try {
decoder = MediaCodec.createDecoderByType("video/avc");
decoder.configure(format, surface, null, 0);
decoder.start();
} catch (IOException ioEx) {
ioEx.printStackTrace();
}
DatagramSocket socket = new DatagramSocket(1234);
byte[] bytes = new byte[4096];
DatagramPacket packet = new DatagramPacket(bytes, bytes.length);
byte[] data;
ByteBuffer[] inputBuffers;
ByteBuffer[] outputBuffers;
ByteBuffer inputBuffer;
ByteBuffer outputBuffer;
MediaCodec.BufferInfo bufferInfo;
bufferInfo = new MediaCodec.BufferInfo();
int inputBufferIndex;
int outputBufferIndex;
byte[] outData;
inputBuffers = decoder.getInputBuffers();
outputBuffers = decoder.getOutputBuffers();
int minusCount = 0;
byte[] prevData = new byte[65535];
List playLoads = new ArrayList<>();
int playloadSize = 0;
while (true) {
try {
socket.receive(packet);
data = new byte[packet.getLength()];
System.arraycopy(packet.getData(), packet.getOffset(), data, 0, packet.getLength());
inputBufferIndex = decoder.dequeueInputBuffer(-1);
Log.i("sss", "inputBufferIndex = " + inputBufferIndex);
if (inputBufferIndex >= 0)
{
inputBuffer = inputBuffers[inputBufferIndex];
inputBuffer.clear();
inputBuffer.put(data);
decoder.queueInputBuffer(inputBufferIndex, 0, data.length, 0, 0);
// decoder.flush();
}
outputBufferIndex = decoder.dequeueOutputBuffer(bufferInfo, 10000);
Log.i("sss", "outputBufferIndex = " + outputBufferIndex);
while (outputBufferIndex >= 0)
{
outputBuffer = outputBuffers[outputBufferIndex];
outputBuffer.position(bufferInfo.offset);
outputBuffer.limit(bufferInfo.offset + bufferInfo.size);
outData = new byte[bufferInfo.size];
outputBuffer.get(outData);
decoder.releaseOutputBuffer(outputBufferIndex, false);
outputBufferIndex = decoder.dequeueOutputBuffer(bufferInfo, 0);
}
} catch (SocketTimeoutException e) {
Log.d("thread", "timeout");
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}I think stream from ffmpeg is not a problem because i can open it from mxPlayer via sdp file.
And if I pass this stream to local RTSP server (by VLC) then I use MediaPlayer to get RTSP stream, it works but quite slow.After I looked into the packet I realize that
- first four bytes is header and sequence number
- next four bytes is TimeStamp
- next four bytes is source identifier
So, I cut first 12 bytes out and combine packets with same TimeStamp. Then put it in buffer like this
In while(true) after received packet
Log.i("sss", "Received = " + data.length + " bytes");
Log.i("sss","prev " + prevData.length + " bytes = " + getBytesStr(prevData));
Log.i("sss","data " + data.length + " bytes = " + getBytesStr(data));
if(data[4] == prevData[4] && data[5] == prevData[5] && data[6] == prevData[6] && data[7] == prevData[7]){
byte[] playload = new byte[prevData.length -12];
System.arraycopy(prevData,12,playload, 0, prevData.length-12);
playLoads.add(playload);
playloadSize += playload.length;
Log.i("sss", "Same timeStamp playload " + playload.length + " bytes = " + getBytesStr(playload));
} else {
if(playLoads.size() > 0){
byte[] playload = new byte[prevData.length -12];
System.arraycopy(prevData,12,playload, 0, prevData.length-12);
playLoads.add(playload);
playloadSize += playload.length;
Log.i("sss", "last playload " + playload.length + " bytes = " + getBytesStr(playload));
inputBufferIndex = decoder.dequeueInputBuffer(-1);
if (inputBufferIndex >= 0){
inputBuffer = inputBuffers[inputBufferIndex];
inputBuffer.clear();
byte[] allPlayload = new byte[playloadSize];
int curLength = 0;
for(byte[] playLoad:playLoads){
System.arraycopy(playLoad,0,allPlayload, curLength, playLoad.length);
curLength += playLoad.length;
}
Log.i("sss", "diff timeStamp AlllayLoad " + allPlayload.length + "bytes = " + getBytesStr(allPlayload));
inputBuffer.put(allPlayload);
decoder.queueInputBuffer(inputBufferIndex, 0, data.length, 0, 0);
decoder.flush();
}
bufferInfo = new MediaCodec.BufferInfo();
outputBufferIndex = decoder.dequeueOutputBuffer(bufferInfo, 10000);
if(outputBufferIndex!= -1)
Log.i("sss", "outputBufferIndex = " + outputBufferIndex);
playLoads = new ArrayList<>();
prevData = new byte[65535];
playloadSize = 0;
}
}
prevData = data.clone();The outputBufferIndex still return -1
If I change timeoutUS from 10000 to -1, it never go to next line
I’ve searched for a week but still no luck T_T
Why dequeueOutputBuffer always return -1 ?
What is the problem of my code ?
Could you properly optimize my code to work correctly ?
Thanks for your help.
Edit#1
Thanks @mstorsjo guide me to Packetization and i found useful infomation
Then i edited my code below
if((data[12] & 0x1f) == 28){
if((data[13] & 0x80) == 0x80){ //found start bit
inputBufferIndex = decoder.dequeueInputBuffer(-1);
if (inputBufferIndex >= 0){
inputBuffer = inputBuffers[inputBufferIndex];
inputBuffer.clear();
byte result = (byte)((bytes[12] & 0xe0) + (bytes[13] & 0x1f));
inputBuffer.put(new byte[] {0,0,1});
inputBuffer.put(result);
inputBuffer.put(data,14, data.length-14);
}
} else if((data[13] &0x40) == 0x40){ //found stop bit
inputBuffer.put(data, 14, data.length -14);
decoder.queueInputBuffer(inputBufferIndex, 0, data.length, 0, 0);
bufferInfo = new MediaCodec.BufferInfo();
outputBufferIndex = decoder.dequeueOutputBuffer(bufferInfo, 10000);
switch(outputBufferIndex)
{
case MediaCodec.INFO_OUTPUT_BUFFERS_CHANGED:
outputBuffers = decoder.getOutputBuffers();
Log.w("sss", "Output Buffers Changed");
break;
case MediaCodec.INFO_OUTPUT_FORMAT_CHANGED:
Log.w("sss", "Output Format Changed");
MediaFormat newFormat = decoder.getOutputFormat();
Log.i("sss","New format : " + newFormat);
break;
case MediaCodec.INFO_TRY_AGAIN_LATER:
Log.w("sss", "Try Again Later");
break;
default:
outputBuffer = outputBuffers[outputBufferIndex];
outputBuffer.position(bufferInfo.offset);
outputBuffer.limit(bufferInfo.offset + bufferInfo.size);
decoder.releaseOutputBuffer(outputBufferIndex, true);
}
} else {
inputBuffer.put(data, 14, data.length -14);
}
}Now i can see some picture but most of screen is gray
What should i do next ??
Thank you.
-
FFMPEG output (Images > Video) is unplayable
23 décembre 2014, par jgadsI’m using FFMPEG to make a video slideshow from a group of images on Android. The process completes successfully and the output file is the correct/expected size (or the same as what is reported in FFMPEG’s ’progress’), but the video does not play on any Android video player (MXplayer, VLC, stock). The video players show a perpetual loading circle and never actually launch. MXplayer can see the file and generate a thumbnail but not actually play it. Here is the command :
ffmpeg -f image2 -re -r 1 -i
/storage/emulated/0/Pictures/phototest/%d.jpg -vcodec libx264 -f mp4
-r 24 -preset : ultrafast -an -threads 4 -b 4000k -mbd rd -flags +mv4+aic -trellis 2 -cmp 2 -subcmp 2 -g 300 -y -pix_fmt yuv420p /storage/emulated/0/Pictures/phototest/result1.mp4Here’s the output via Android Logcat :
12-23 12:59:49.890 12665-12665/com.company.example I/FFmpeg﹕ Loading FFmpeg for armv7-neon CPU
12-23 12:59:50.210 12665-12665/com.company.example E/FFMPEG﹕ Success loading ffmpeg
12-23 12:59:54.420 12665-12665/com.company.example E/FFMPEG﹕ Started.
12-23 12:59:54.445 12665-12799/com.company.example D/FFmpeg﹕ Running publishing updates method
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: ffmpeg version n2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: built on Oct 7 2014 15:08:46 with gcc 4.8 (GCC)
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: configuration: --target-os=linux --cross-prefix=/home/sb/Source-Code/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/sb/Source-Code/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/sb/Source-Code/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/sb/Source-Code/ffmpeg-android/build/armeabi-v7a-neon --extra-cflags='-I/home/sb/Source-Code/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all -mfpu=neon' --extra-ldflags='-L/home/sb/Source-Code/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavutil 54. 7.100 / 54. 7.100
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavcodec 56. 1.100 / 56. 1.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavformat 56. 4.101 / 56. 4.101
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavdevice 56. 0.100 / 56. 0.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavfilter 5. 1.100 / 5. 1.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libswscale 3. 0.100 / 3. 0.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libswresample 1. 1.100 / 1. 1.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libpostproc 53. 0.100 / 53. 0.100
12-23 12:59:54.655 12665-12665/com.company.example E/FFMPEG﹕ Progress: Input #0, image2, from '/storage/emulated/0/Pictures/phototest/%d.jpg':
12-23 12:59:54.655 12665-12665/com.company.example E/FFMPEG﹕ Progress: Duration: 00:00:28.00, start: 0.000000, bitrate: N/A
12-23 12:59:54.655 12665-12665/com.company.example E/FFMPEG﹕ Progress: Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg), 2528x1856 [SAR 1:1 DAR 79:58], 1 fps, 1 tbr, 1 tbn, 1 tbc
12-23 12:59:54.655 12665-12665/com.company.example E/FFMPEG﹕ Progress: Please use -b:a or -b:v, -b is ambiguous
12-23 12:59:54.665 12665-12665/com.company.example E/FFMPEG﹕ Progress: [swscaler @ 0x2b3f7990] deprecated pixel format used, make sure you did set range correctly
12-23 12:59:54.670 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] using SAR=1/1
12-23 12:59:54.685 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] using cpu capabilities: none!
12-23 12:59:54.755 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] profile Constrained Baseline, level 5.0
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=0 trellis=2 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=4 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=300 keyint_min=24 scenecut=0 intra_refresh=0 rc=abr mbtree=0 bitrate=4000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Output #0, mp4, to '/storage/emulated/0/Pictures/phototest/result1.mp4':
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Metadata:
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: encoder : Lavf56.4.101
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 2528x1856 [SAR 1:1 DAR 79:58], q=-1--1, 4000 kb/s, 24 fps, 12288 tbn, 24 tbc
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Metadata:
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: encoder : Lavc56.1.100 libx264
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Stream mapping:
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Press [q] to stop, [?] for help
12-23 13:00:03.905 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 49 fps= 11 q=17.0 size= 840kB time=00:00:01.83 bitrate=3752.6kbits/s dup=46 drop=0
12-23 13:00:11.185 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 73 fps=8.0 q=17.0 size= 1397kB time=00:00:02.83 bitrate=4039.0kbits/s dup=69 drop=0
12-23 13:00:17.615 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 97 fps=5.9 q=17.0 size= 1931kB time=00:00:03.83 bitrate=4126.8kbits/s dup=92 drop=0
12-23 13:00:22.545 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 121 fps=5.3 q=17.0 size= 2496kB time=00:00:04.83 bitrate=4229.6kbits/s dup=115 drop=0
12-23 13:00:27.630 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 145 fps=5.2 q=17.0 size= 3089kB time=00:00:05.83 bitrate=4338.5kbits/s dup=138 drop=0
12-23 13:00:33.005 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 169 fps=5.1 q=17.0 size= 3702kB time=00:00:06.83 bitrate=4437.9kbits/s dup=161 drop=0
12-23 13:00:37.840 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 193 fps=5.0 q=18.0 size= 4316kB time=00:00:07.83 bitrate=4514.1kbits/s dup=184 drop=0
12-23 13:00:43.345 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 217 fps=5.0 q=18.0 size= 4848kB time=00:00:08.83 bitrate=4495.6kbits/s dup=207 drop=0
12-23 13:00:48.155 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 241 fps=5.0 q=18.0 size= 5304kB time=00:00:09.83 bitrate=4418.5kbits/s dup=230 drop=0
12-23 13:00:52.930 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 265 fps=5.0 q=19.0 size= 5874kB time=00:00:10.83 bitrate=4441.8kbits/s dup=253 drop=0
12-23 13:00:57.210 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 289 fps=5.0 q=18.0 size= 6205kB time=00:00:11.83 bitrate=4295.9kbits/s dup=276 drop=0
12-23 13:01:01.415 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 313 fps=5.0 q=18.0 size= 6747kB time=00:00:12.83 bitrate=4307.0kbits/s dup=299 drop=0
12-23 13:01:05.315 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 337 fps=5.1 q=18.0 size= 7126kB time=00:00:13.83 bitrate=4220.0kbits/s dup=322 drop=0
12-23 13:01:09.935 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 361 fps=5.1 q=17.0 size= 7522kB time=00:00:14.83 bitrate=4153.9kbits/s dup=345 drop=0
12-23 13:01:14.755 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 385 fps=5.1 q=18.0 size= 8072kB time=00:00:15.83 bitrate=4176.2kbits/s dup=368 drop=0
12-23 13:01:19.505 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 409 fps=5.1 q=18.0 size= 8618kB time=00:00:16.83 bitrate=4193.9kbits/s dup=391 drop=0
12-23 13:01:23.630 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 433 fps=5.1 q=17.0 size= 9074kB time=00:00:17.83 bitrate=4168.4kbits/s dup=414 drop=0
12-23 13:01:27.580 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 457 fps=5.1 q=17.0 size= 9423kB time=00:00:18.83 bitrate=4098.7kbits/s dup=437 drop=0
12-23 13:01:32.210 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 481 fps=5.2 q=17.0 size= 9908kB time=00:00:19.83 bitrate=4092.4kbits/s dup=460 drop=0
12-23 13:01:36.140 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 505 fps=5.2 q=16.0 size= 10238kB time=00:00:20.83 bitrate=4025.6kbits/s dup=483 drop=0
12-23 13:01:41.165 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 529 fps=5.2 q=16.0 size= 10758kB time=00:00:21.83 bitrate=4036.4kbits/s dup=506 drop=0
12-23 13:01:46.065 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 553 fps=5.2 q=16.0 size= 11214kB time=00:00:22.83 bitrate=4023.2kbits/s dup=529 drop=0
12-23 13:01:51.290 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 577 fps=5.2 q=16.0 size= 11836kB time=00:00:23.83 bitrate=4068.4kbits/s dup=552 drop=0
12-23 13:01:57.560 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 601 fps=5.2 q=17.0 size= 12537kB time=00:00:24.83 bitrate=4135.6kbits/s dup=575 drop=0
12-23 13:02:02.735 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 625 fps=5.1 q=18.0 size= 13864kB time=00:00:25.83 bitrate=4396.6kbits/s dup=598 drop=0
12-23 13:02:06.810 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 649 fps=5.1 q=18.0 size= 14322kB time=00:00:26.83 bitrate=4372.3kbits/s dup=621 drop=0
12-23 13:02:06.815 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 649 fps=4.9 q=18.0 size= 14322kB time=00:00:26.83 bitrate=4372.3kbits/s dup=621 drop=0
12-23 13:02:07.355 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 649 fps=4.9 q=-1.0 Lsize= 14349kB time=00:00:27.04 bitrate=4346.9kbits/s dup=621 drop=0
12-23 13:02:07.355 12665-12665/com.company.example E/FFMPEG﹕ Progress: video:14345kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.024813%
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] frame I:3 Avg QP:21.67 size:383361
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] frame P:646 Avg QP:18.87 size: 20958
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] mb I I16..4: 100.0% 0.0% 0.0%
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] mb P I16..4: 4.4% 0.0% 0.0% P16..4: 19.5% 0.0% 0.0% 0.0% 0.0% skip:76.0%
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] final ratefactor: 26.82
12-23 13:02:07.370 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] coded y,uvDC,uvAC intra: 42.8% 45.6% 9.2% inter: 3.4% 16.7% 0.1%
12-23 13:02:07.370 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] i16 v,h,dc,p: 36% 24% 22% 19%
12-23 13:02:07.370 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] i8c dc,h,v,p: 51% 22% 19% 7%
12-23 13:02:07.370 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] kb/s:4345.62
12-23 13:02:07.400 12665-12665/com.company.example E/FFMPEG﹕ Success: ffmpeg version n2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
built on Oct 7 2014 15:08:46 with gcc 4.8 (GCC)
configuration: --target-os=linux --cross-prefix=/home/sb/Source-Code/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/sb/Source-Code/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/sb/Source-Code/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/sb/Source-Code/ffmpeg-android/build/armeabi-v7a-neon --extra-cflags='-I/home/sb/Source-Code/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all -mfpu=neon' --extra-ldflags='-L/home/sb/Source-Code/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
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
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Input #0, image2, from '/storage/emulated/0/Pictures/phototest/%d.jpg':
Duration: 00:00:28.00, start: 0.000000, bitrate: N/A
Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg), 2528x1856 [SAR 1:1 DAR 79:58], 1 fps, 1 tbr, 1 tbn, 1 tbc
Please use -b:a or -b:v, -b is ambiguous
[swscaler @ 0x2b3f7990] deprecated pixel format used, make sure you did set range correctly
[libx264 @ 0x2b4012e0] using SAR=1/1
[libx264 @ 0x2b4012e0] using cpu capabilities: none!
[libx264 @ 0x2b4012e0] profile Constrained Baseline, level 5.0
[libx264 @ 0x2b4012e0] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=0 trellis=2 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=4 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=300 keyint_min=24 scenecut=0 intra_refresh=0 rc=abr mbtree=0 bitrate=4000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
Output #0, mp4, to '/storage/emulated/0/Pictures/phototest/result1.mp4':
Metadata:
encoder : Lavf56.4.101
Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 2528x1856 [SAR 1:1 DAR 79:58], q=-1--1, 4000 kb/s, 24 fps, 12288 tbn, 24 tbc
Metadata:
encoder : Lavc56.1.100 libx264
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
Press [q] to stop, [?] for help
frame= 49 fps= 11 q=17.0 size= 840kB time=00:00:01.83 bitrate=3752.6kbits/s dup=46 drop=0
frame= 73 fps=8.0 q=17.0 size= 1397kB time=00:00:02.83 bitrate=4039.0kbits/s dup=69 drop=0
frame= 97 fps=5.9 q=17.0 size= 1931kB time=00:00:03.83 bitrate=4126.8kbits/s dup=92 drop=0
frame= 121 fps=5.3 q=17.0 size= 2496kB time=00:00:04.83 bitrate=4229.6kbits/s dup=115 drop=0
frame= 145 fps=5.2 q=17.0 size= 3089kB time=00:00:05.83 bitrate=4338.5kbits/s dup=138 drop=0
frame= 169 fps=5.1 q=17.0 size= 3702kB time=00:00:06.83 bitrate=4437.9kbits/s dup=161 drop=0
frame= 193 fps=5.0 q=18.0 size= 4316kB time=00:00:07.83 bitrate=4514.1kbits/s dup=184 drop=0
frame= 217 fps=5.0 q=18.0 size= 4848kB time=00:00:08.83 bitrate=4495.6kbits/s dup=207 drop=0
frame= 241 fps=5.0 q=18.0 size= 5304kB time=00:00:09.83 bitrate=4418.5kbits/s dup=230 drop=0
frame= 265 fps=5.0 q=19.0 size= 5874kB time=00:00:10.83 bitrate=4441.8kbits/s dup=253 drop=0
frame= 28
12-23 13:02:07.430 12665-12665/com.company.example E/FFMPEG﹕ Finished.EDIT : Note that although it appears to run ffmpeg twice here, the output file is the correct size which seems to mean that the file isn’t getting overwritten with a corrupt version, so we can probably just assume there’s a bug with Logcat (right ?)
EDIT 2 : Trying the same command on the PC works flawlessly. Playing back this video works fine on Android.
-
Evolution #3358 (Nouveau) : Création d’un pipeline "modifier_session"
3 décembre 2014, par Peet duL’idée serait de pourvoir ajouter des variables de sessions sans avoir a passer par les squelettes
Exemple :function monprefix_modifier_session($flux) {
$flux .= session_set('mapassion', 'éléphants');
return $flux;
}