Cannot run video on Android devices after converting it with ffmpeg

-4

0

I am converting video with ffmpeg, but after conversion it does not run on android devices it shows cannot play this video the code for conversion i am using is:

exec('D:\wamp\bin\ffmpeg.exe -y -i D:/wamp/www/upload_google_drive/output.flv -c:v libx264 -crf 19 -preset slow -c:a aac -strict experimental -b:a 192k -ac 2 D:/wamp/www/upload_google_drive/w3.mp4 2>&1',$output);

Output:

Array ( [0] => ffmpeg version N-77137-gff6dd58 Copyright (c) 2000-2015 the FFmpeg developers [1] => built with gcc 5.2.0 (GCC) [2] => configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib [3] => libavutil 55. 10.100 / 55. 10.100 [4] => libavcodec 57. 17.100 / 57. 17.100 [5] => libavformat 57. 19.100 / 57. 19.100 [6] => libavdevice 57. 0.100 / 57. 0.100 [7] => libavfilter 6. 20.100 / 6. 20.100 [8] => libswscale 4. 0.100 / 4. 0.100 [9] => libswresample 2. 0.101 / 2. 0.101 [10] => libpostproc 54. 0.100 / 54. 0.100 [11] => Input #0, flv, from 'D:/wamp/www/upload_google_drive/output.flv': [12] => Metadata: [13] => major_brand : mp42 [14] => minor_version : 1 [15] => compatible_brands: mp42avc1 [16] => encoder : Lavf57.19.100 [17] => Duration: 00:01:00.14, start: 0.000000, bitrate: 307 kb/s [18] => Stream #0:0: Video: flv1, yuv420p, 480x320, 200 kb/s, 24 fps, 24 tbr, 1k tbn, 1k tbc [19] => Stream #0:1: Audio: aac (LC), 44100 Hz, mono, fltp, 62 kb/s [20] => [libx264 @ 0000000001c31860] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 [21] => [libx264 @ 0000000001c31860] profile Constrained Baseline, level 3.0 [22] => [libx264 @ 0000000001c31860] 264 - core 148 r2638 7599210 - H.264/MPEG-4 AVC codec - Copyleft 2003-2015 - http://www.videolan.org/x264.html - options: cabac=0 ref=5 deblock=1:0:0 analyse=0x1:0x111 me=umh subme=8 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=24 scenecut=40 intra_refresh=0 rc_lookahead=50 rc=crf mbtree=1 crf=19.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00 [23] => Output #0, mp4, to 'D:/wamp/www/upload_google_drive/w5.mp4': [24] => Metadata: [25] => major_brand : mp42 [26] => minor_version : 1 [27] => compatible_brands: mp42avc1 [28] => encoder : Lavf57.19.100 [29] => Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 480x320, q=-1--1, 24 fps, 12288 tbn, 24 tbc [30] => Metadata: [31] => encoder : Lavc57.17.100 libx264 [32] => Stream #0:1: Audio: aac ([64][0][0][0] / 0x0040), 44100 Hz, stereo, fltp, 192 kb/s [33] => Metadata: [34] => encoder : Lavc57.17.100 aac [35] => Stream mapping: [36] => Stream #0:0 -> #0:0 (flv1 (flv) -> h264 (libx264)) [37] => Stream #0:1 -> #0:1 (aac (native) -> aac (native)) [38] => Press [q] to stop, [?] for help [39] => frame= 55 fps=0.0 q=23.0 size= 27kB time=00:00:02.22 bitrate= 98.2kbits/s frame= 96 fps= 93 q=24.0 size= 137kB time=00:00:03.92 bitrate= 285.4kbits/s frame= 161 fps=105 q=24.0 size= 317kB time=00:00:06.64 bitrate= 391.6kbits/s frame= 220 fps=108 q=24.0 size= 541kB time=00:00:09.07 bitrate= 487.8kbits/s frame= 274 fps=108 q=24.0 size= 773kB time=00:00:11.35 bitrate= 557.8kbits/s frame= 326 fps=107 q=24.0 size= 1109kB time=00:00:13.53 bitrate= 671.4kbits/s Past duration 0.607994 too large [40] => Last message repeated 1 times [41] => Past duration 0.615990 too large [42] => Past duration 0.607994 too large [43] => frame= 382 fps=108 q=24.0 size= 1439kB time=00:00:15.81 bitrate= 745.6kbits/s Past duration 0.615990 too large [44] => Past duration 0.607994 too large [45] => Past duration 0.623985 too large [46] => Past duration 0.615990 too large [47] => Past duration 0.607994 too large [48] => Past duration 0.623985 too large [49] => Past duration 0.615990 too large [50] => Past duration 0.631996 too large [51] => Past duration 0.623985 too large [52] => Past duration 0.615990 too large [53] => Past duration 0.631996 too large [54] => Past duration 0.623985 too large [55] => Past duration 0.639992 too large [56] => Past duration 0.631996 too large [57] => Past duration 0.623985 too large [58] => Past duration 0.639992 too large [59] => Past duration 0.631996 too large [60] => Past duration 0.647987 too large [61] => Past duration 0.639992 too large [62] => Past duration 0.631996 too large [63] => Past duration 0.647987 too large [64] => Past duration 0.639992 too large [65] => Past duration 0.655998 too large [66] => Past duration 0.647987 too large [67] => Past duration 0.639992 too large [68] => Past duration 0.655998 too large [69] => Past duration 0.647987 too large [70] => Past duration 0.663994 too large [71] => Past duration 0.655998 too large [72] => Past duration 0.647987 too large [73] => Past duration 0.663994 too large [74] => Past duration 0.655998 too large [75] => Past duration 0.671989 too large [76] => Past duration 0.663994 too large [77] => Past duration 0.655998 too large [78] => Past duration 0.671989 too large [79] => Past duration 0.663994 too large [80] => Past duration 0.679985 too large [81] => Past duration 0.671989 too large [82] => Past duration 0.663994 too large [83] => Past duration 0.679985 too large [84] => Past duration 0.671989 too large [85] => Past duration 0.687996 too large [86] => Past duration 0.679985 too large [87] => Past duration 0.671989 too large [88] => Past duration 0.687996 too large [89] => Past duration 0.679985 too large [90] => Past duration 0.695992 too large [91] => Past duration 0.687996 too large [92] => Past duration 0.679985 too large [93] => Past duration 0.695992 too large [94] => Past duration 0.687996 too large [95] => Past duration 0.703987 too large [96] => Past duration 0.695992 too large [97] => frame= 436 fps=108 q=24.0 size= 1732kB time=00:00:18.08 bitrate= 784.5kbits/s Past duration 0.687996 too large [98] => Past duration 0.703987 too large [99] => Past duration 0.695992 too large [100] => Past duration 0.711998 too large [101] => Past duration 0.703987 too large [102] => Past duration 0.695992 too large [103] => Past duration 0.711998 too large [104] => Past duration 0.703987 too large [105] => Past duration 0.719994 too large [106] => Past duration 0.711998 too large [107] => Past duration 0.703987 too large [108] => Past duration 0.719994 too large [109] => Past duration 0.711998 too large [110] => Past duration 0.727989 too large [111] => Past duration 0.719994 too large [112] => Past duration 0.711998 too large [113] => Past duration 0.727989 too large [114] => Past duration 0.719994 too large [115] => Past duration 0.735985 too large [116] => Past duration 0.727989 too large [117] => Past duration 0.719994 too large [118] => Past duration 0.735985 too large [119] => Past duration 0.727989 too large [120] => Past duration 0.743996 too large [121] => Past duration 0.735985 too large [122] => Past duration 0.727989 too large [123] => Past duration 0.743996 too large [124] => Past duration 0.735985 too large [125] => Past duration 0.751991 too large [126] => Past duration 0.743996 too large [127] => Past duration 0.735985 too large [128] => Past duration 0.751991 too large [129] => Past duration 0.743996 too large [130] => Past duration 0.759987 too large [131] => Past duration 0.751991 too large [132] => Past duration 0.743996 too large [133] => Past duration 0.759987 too large [134] => Past duration 0.751991 too large [135] => Past duration 0.767998 too large [136] => Past duration 0.759987 too large [137] => Past duration 0.751991 too large [138] => Past duration 0.767998 too large [139] => Past duration 0.759987 too large [140] => Past duration 0.775993 too large [141] => Past duration 0.767998 too large [142] => Past duration 0.759987 too large [143] => Past duration 0.775993 too large [144] => Past duration 0.767998 too large [145] => Past duration 0.783989 too large [146] => Past duration 0.775993 too large [147] => Past duration 0.767998 too large [148] => Past duration 0.783989 too large [149] => Past duration 0.775993 too large [150] => Past duration 0.792000 too large [151] => Past duration 0.783989 too large [152] => Past duration 0.775993 too large [153] => Past duration 0.792000 too large [154] => Past duration 0.783989 too large [155] => Past duration 0.799995 too large [156] => Past duration 0.792000 too large [157] => Past duration 0.783989 too large [158] => Past duration 0.799995 too large [159] => Past duration 0.792000 too large [160] => Past duration 0.807991 too large [161] => Past duration 0.799995 too large [162] => Past duration 0.792000 too large [163] => Past duration 0.807991 too large [164] => Past duration 0.799995 too large [165] => Past duration 0.815987 too large [166] => Past duration 0.807991 too large [167] => Past duration 0.799995 too large [168] => Past duration 0.815987 too large [169] => frame= 508 fps=112 q=24.0 size= 1953kB time=00:00:21.10 bitrate= 758.1kbits/s Past duration 0.807991 too large [170] => Past duration 0.823997 too large [171] => Past duration 0.815987 too large [172] => Past duration 0.807991 too large [173] => Past duration 0.823997 too large [174] => Past duration 0.815987 too large [175] => Past duration 0.831993 too large [176] => Past duration 0.823997 too large [177] => Past duration 0.815987 too large [178] => Past duration 0.831993 too large [179] => Past duration 0.823997 too large [180] => Past duration 0.839989 too large [181] => Past duration 0.831993 too large [182] => Past duration 0.823997 too large [183] => Past duration 0.839989 too large [184] => Past duration 0.831993 too large [185] => Past duration 0.848000 too large [186] => Past duration 0.839989 too large [187] => Past duration 0.831993 too large [188] => Past duration 0.848000 too large [189] => Past duration 0.839989 too large [190] => Past duration 0.855995 too large [191] => Past duration 0.848000 too large [192] => Past duration 0.839989 too large [193] => Past duration 0.855995 too large [194] => Past duration 0.848000 too large [195] => Past duration 0.863991 too large [196] => Past duration 0.855995 too large [197] => Past duration 0.848000 too large [198] => Past duration 0.863991 too large [199] => Past duration 0.855995 too large [200] => Past duration 0.871986 too large [201] => Past duration 0.863991 too large [202] => Past duration 0.855995 too large [203] => Past duration 0.871986 too large [204] => Past duration 0.863991 too large [205] => Past duration 0.879997 too large [206] => Past duration 0.871986 too large [207] => Past duration 0.863991 too large [208] => Past duration 0.879997 too large [209] => Past duration 0.871986 too large [210] => Past duration 0.887993 too large [211] => Past duration 0.879997 too large [212] => Past duration 0.871986 too large [213] => Past duration 0.887993 too large [214] => Past duration 0.879997 too large [215] => Past duration 0.895988 too large [216] => Past duration 0.887993 too large [217] => Past duration 0.879997 too large [218] => Past duration 0.895988 too large [219] => Past duration 0.887993 too large [220] => Past duration 0.903999 too large [221] => Past duration 0.895988 too large [222] => Past duration 0.887993 too large [223] => Past duration 0.903999 too large [224] => Past duration 0.895988 too large [225] => Past duration 0.911995 too large [226] => Past duration 0.903999 too large [227] => Past duration 0.895988 too large [228] => Past duration 0.911995 too large [229] => Past duration 0.903999 too large [230] => Past duration 0.919991 too large [231] => Past duration 0.911995 too large [232] => frame= 571 fps=113 q=24.0 size= 2150kB time=00:00:23.68 bitrate= 743.7kbits/s Past duration 0.903999 too large [233] => Past duration 0.919991 too large [234] => Past duration 0.911995 too large [235] => Past duration 0.927986 too large [236] => Past duration 0.919991 too large [237] => Past duration 0.911995 too large [238] => Past duration 0.927986 too large [239] => Past duration 0.919991 too large [240] => Past duration 0.935997 too large [241] => Past duration 0.927986 too large [242] => Past duration 0.919991 too large [243] => Past duration 0.935997 too large [244] => Past duration 0.927986 too large [245] => Past duration 0.943993 too large [246] => Past duration 0.935997 too large [247] => Past duration 0.927986 too large [248] => Past duration 0.943993 too large [249] => Past duration 0.935997 too large [250] => Past duration 0.951988 too large [251] => Past duration 0.943993 too large [252] => Past duration 0.935997 too large [253] => Past duration 0.951988 too large [254] => Past duration 0.943993 too large [255] => Past duration 0.959999 too large [256] => Past duration 0.951988 too large [257] => Past duration 0.943993 too large [258] => Past duration 0.959999 too large [259] => Past duration 0.951988 too large [260] => Past duration 0.967995 too large [261] => Past duration 0.959999 too large [262] => Past duration 0.951988 too large [263] => Past duration 0.967995 too large [264] => Past duration 0.959999 too large [265] => Past duration 0.975990 too large [266] => Past duration 0.967995 too large [267] => Past duration 0.959999 too large [268] => Past duration 0.975990 too large [269] => Past duration 0.967995 too large [270] => Past duration 0.983986 too large [271] => Past duration 0.975990 too large [272] => Past duration 0.967995 too large [273] => Past duration 0.983986 too large [274] => Past duration 0.975990 too large [275] => Past duration 0.991997 too large [276] => Past duration 0.983986 too large [277] => Past duration 0.975990 too large [278] => Past duration 0.991997 too large [279] => Past duration 0.983986 too large [280] => Past duration 0.999992 too large [281] => Past duration 0.991997 too large [282] => Past duration 0.983986 too large [283] => frame= 622 fps=112 q=24.0 size= 2328kB time=00:00:25.82 bitrate= 738.7kbits/s Past duration 0.999992 too large [284] => Past duration 0.991997 too large [285] => Past duration 0.999992 too large [286] => Past duration 0.991997 too large [287] => Past duration 0.999992 too large [288] => Last message repeated 1 times [289] => frame= 672 fps=111 q=24.0 size= 2585kB time=00:00:27.91 bitrate= 758.8kbits/s frame= 719 fps=110 q=24.0 size= 2829kB time=00:00:29.86 bitrate= 776.0kbits/s frame= 765 fps=109 q=24.0 size= 3063kB time=00:00:31.76 bitrate= 789.8kbits/s frame= 812 fps=108 q=24.0 size= 3282kB time=00:00:33.71 bitrate= 797.5kbits/s frame= 853 fps=106 q=24.0 size= 3472kB time=00:00:35.45 bitrate= 802.2kbits/s frame= 897 fps=105 q=24.0 size= 3713kB time=00:00:37.26 bitrate= 816.1kbits/s frame= 943 fps=104 q=24.0 size= 3960kB time=00:00:39.17 bitrate= 828.0kbits/s frame= 987 fps=103 q=24.0 size= 4205kB time=00:00:41.00 bitrate= 840.1kbits/s frame= 1033 fps=102 q=24.0 size= 4442kB time=00:00:42.91 bitrate= 848.1kbits/s frame= 1074 fps=101 q=24.0 size= 4627kB time=00:00:44.60 bitrate= 849.7kbits/s frame= 1123 fps=101 q=24.0 size= 4861kB time=00:00:46.67 bitrate= 853.3kbits/s frame= 1168 fps=101 q=24.0 size= 5079kB time=00:00:48.52 bitrate= 857.3kbits/s frame= 1216 fps=100 q=24.0 size= 5312kB time=00:00:50.52 bitrate= 861.3kbits/s frame= 1254 fps= 99 q=24.0 size= 5519kB time=00:00:52.10 bitrate= 867.7kbits/s frame= 1302 fps= 99 q=24.0 size= 5751kB time=00:00:54.12 bitrate= 870.5kbits/s frame= 1358 fps= 99 q=24.0 size= 6002kB time=00:00:56.47 bitrate= 870.8kbits/s dup=0 drop=1 frame= 1427 fps=101 q=24.0 size= 6243kB time=00:00:59.35 bitrate= 861.8kbits/s dup=0 drop=1 frame= 1444 fps=100 q=-1.0 Lsize= 6451kB time=00:01:00.16 bitrate= 878.3kbits/s dup=0 drop=1 [290] => video:5008kB audio:1407kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.550038% [291] => [libx264 @ 0000000001c31860] frame I:10 Avg QP:13.67 size: 25967 [292] => [libx264 @ 0000000001c31860] frame P:1434 Avg QP:18.73 size: 3395 [293] => [libx264 @ 0000000001c31860] mb I I16..4: 36.0% 0.0% 64.0% [294] => [libx264 @ 0000000001c31860] mb P I16..4: 3.6% 0.0% 4.0% P16..4: 21.9% 5.5% 4.2% 0.0% 0.0% skip:60.8% [295] => [libx264 @ 0000000001c31860] coded y,uvDC,uvAC intra: 51.3% 62.1% 11.5% inter: 11.4% 14.4% 2.1% [296] => [libx264 @ 0000000001c31860] i16 v,h,dc,p: 52% 30% 16% 2% [297] => [libx264 @ 0000000001c31860] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 34% 25% 17% 3% 4% 4% 3% 4% 5% [298] => [libx264 @ 0000000001c31860] i8c dc,h,v,p: 39% 32% 25% 4% [299] => [libx264 @ 0000000001c31860] ref P L0: 82.2% 8.5% 4.8% 2.2% 2.3% [300] => [libx264 @ 0000000001c31860] kb/s:681.85 [301] => [aac @ 0000000001c322a0] Qavg: 14325.964 )

user3653474

Posted 2015-12-21T14:26:01.167

Reputation: 103

1

Complete console output is missing. Crossposting the same question to multiple Stack Exchange sites is discouraged.

– llogan – 2015-12-21T19:02:31.947

-LordNeckbeard- I have added the output, Please check it.It is not working on somw android devices. – user3653474 – 2015-12-22T05:14:15.747

@Boken If you can show your ffmpeg command and the complete log then we may be able to give you an answer. – llogan – 2019-10-25T00:28:13.293

@llogan I'm using: ffmpeg -i <INPUT> -vf scale=1920:-2:force_original_aspect_ratio=decrease,format=yuv420p -c:v libx264 -r 1/6 -t 6 <OUTPUT>. Tested with adding -vprofile baseline, -preset slow or -movflags faststart but still native video player and VLC can not open that. When i will share e.g. to Instagram - it work. Also when I will copy that to computer - it works also. Length of the file is correct (6 seconds) – Boken – 2019-10-25T00:32:11.590

@Boken: Putting a bounty on a 4 years old post is a BAD IDEA, especially as your ffmpeg command is different, and so are your codecs. If you wish to advance, post an example of a short audio file before and after conversion on dropbox or elsewhere, and specify the errors you are getting. Feel free to edit the post here, adding a Bounty section at the end with your ffmpeg command. If you don't have enough reputation, someone here will approve it.

– harrymc – 2019-10-25T15:28:24.573

Answers

0

You should probably express the h264 profile, and often more importantly the level. YMMV, but High-L4.1 seems pretty ubiquitously supported.

ffmpeg.exe -y -i output.flv \
  -c:v libx264 -crf 19 -preset slow -profile:v high -level 4.1 \
    -c:a aac -strict experimental -b:a 192k -ac 2 w3.mp4

The reason why they get to be important is that the libx264 presets have an effect on the profile and level. In my own experiments, 1080p30 content encoded with the slow preset (and default crf) is encoded to High-L4.1, but the slower preset will bump that up to High-L5.0. Higher level support is needed to support more B-frames, and B-frames are where a lot of the gains of h264 over previous codecs come from.

To counter a comment made above, Android certainly does support AAC, reading and writing. In fact, ffmpeg's libvo_aacenc is based on the VisualOn library used by libstagefright.

MithrilTuxedo

Posted 2015-12-21T14:26:01.167

Reputation: 146

I have retracted my statement. it was ChromeCast support specifically I was thinking of at the time, having just researched it the night before. You are probably right that Android supports AAC for local playback. – Frank Thomas – 2015-12-24T03:36:04.163

Thanks for your answer but it is not working. I have tried ffmpeg.exe -y -i D:/wamp/www/upload_google_drive/SampleVideo1.flv -c:v libx264 -crf 19 -preset slow -profile:v high -level 4.1 -c:a aac -strict experimental -b:a 192k -ac 2 D:/wamp/www/upload_google_drive/w7.mp4 2>&1' ,$output); there are no errors but video is not supported in android devices. – user3653474 – 2015-12-24T11:54:29.743

analyze the video with GSpot, and confirm that a codec for each encoding involved is available. http://www.headbands.com/gspot/ Theres also this product (I've not used this one) with linux support.

– Frank Thomas – 2015-12-25T03:45:33.570

Looked at your output and saw a suggestion that might cover it. The input is supposedly 24fps, so maybe add -filter:v fps=24 or -r 24 to the output options (after the input). Also, since the source has AAC audio, you can just use -c:a copy to copy that stream rather than recompress it.

– MithrilTuxedo – 2016-01-26T23:52:33.897