As you sayed in your comment : "This should probably be smoothed out so that it doesn't rely on text so much." is probably a good idea.
Below is what I get when I output $output = ffmpeg_wrapper_run_command('-formats');
The regex and string replacing doesnot work in my case.

My "solution" was pretty easy. In the ffmpeg_wrapper_can_decode I returned true in any case since I was the one setting it all up I knew what would work and what wouldnt. Offcourse this is not a very elegant solution. Perhaps you could allow a setting to overrule the can_decode checking? Perhaps there is another way to do the checking? I bet a lot of people are having this problem since lots of ffmpeg versions are out there. Hope to hear what you guys think is the best solution.

FFmpeg version SVN-r20915, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  built on Dec 23 2009 17:19:40 with gcc 4.4.1
  configuration: 
  libavutil     50. 7. 0 / 50. 7. 0
  libavcodec    52.45. 0 / 52.45. 0
  libavformat   52.44. 0 / 52.44. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libswscale     0. 7. 2 /  0. 7. 2
File formats:
 D. = Demuxing supported
 .E = Muxing supported
 --
  E 3g2             3GP2 format
  E 3gp             3GP format
 D  4xm             4X Technologies format
 D  IFF             IFF format
 D  ISS             Funcom ISS format
 D  MTV             MTV format
 DE RoQ             raw id RoQ format
 D  aac             raw ADTS AAC
 DE ac3             raw AC-3
  E adts            ADTS AAC
 D  aea             MD STUDIO audio
 DE aiff            Audio IFF
 DE alaw            PCM A-law format
 DE amr             3GPP AMR file format
 D  apc             CRYO APC format
 D  ape             Monkey's Audio
 DE asf             ASF format
  E asf_stream      ASF format
 DE ass             SSA/ASS format
 DE au              SUN AU format
 DE avi             AVI format
  E avm2            Flash 9 (AVM2) format
 D  avs             AVS format
 D  bethsoftvid     Bethesda Softworks VID format
 D  bfi             Brute Force & Ignorance
 D  c93             Interplay C93
 D  caf             Apple Core Audio Format
 D  cavsvideo       raw Chinese AVS video
 D  cdg             CD Graphics Format
  E crc             CRC testing format
 DE daud            D-Cinema audio format
 DE dirac           raw Dirac
 DE dnxhd           raw DNxHD (SMPTE VC-3)
 D  dsicin          Delphine Software International CIN format
 DE dts             raw DTS
 DE dv              DV video format
 D  dv1394          DV1394 A/V grab
  E dvd             MPEG-2 PS format (DVD VOB)
 D  dxa             DXA
 D  ea              Electronic Arts Multimedia Format
 D  ea_cdata        Electronic Arts cdata
 DE eac3            raw E-AC-3
 DE f32be           PCM 32 bit floating-point big-endian format
 DE f32le           PCM 32 bit floating-point little-endian format
 DE f64be           PCM 64 bit floating-point big-endian format
 DE f64le           PCM 64 bit floating-point little-endian format
 DE ffm             FFM (FFserver live feed) format
 D  film_cpk        Sega FILM/CPK format
 DE flac            raw FLAC
 D  flic            FLI/FLC/FLX animation format
 DE flv             FLV format
  E framecrc        framecrc testing format
  E gif             GIF Animation
 D  gsm             raw GSM
 DE gxf             GXF format
 DE h261            raw H.261
 DE h263            raw H.263
 DE h264            raw H.264 video format
 D  idcin           id Cinematic format
 DE image2          image2 sequence
 DE image2pipe      piped image2 sequence
 D  ingenient       raw Ingenient MJPEG
 D  ipmovie         Interplay MVE format
  E ipod            iPod H.264 MP4 format
 D  iv8             A format generated by IndigoVision 8000 video server
 D  lmlm4           lmlm4 raw format
 DE m4v             raw MPEG-4 video format
 DE matroska        Matroska file format
 DE mjpeg           raw MJPEG video
 DE mlp             raw MLP
 D  mm              American Laser Games MM format
 DE mmf             Yamaha SMAF
  E mov             MOV format
 D  mov,mp4,m4a,3gp,3g2,mj2 QuickTime/MPEG-4/Motion JPEG 2000 format
  E mp2             MPEG audio layer 2
 DE mp3             MPEG audio layer 3
  E mp4             MP4 format
 D  mpc             Musepack
 D  mpc8            Musepack SV8
 DE mpeg            MPEG-1 System format
  E mpeg1video      raw MPEG-1 video
  E mpeg2video      raw MPEG-2 video
 DE mpegts          MPEG-2 transport stream format
 D  mpegtsraw       MPEG-2 raw transport stream format
 D  mpegvideo       raw MPEG video
  E mpjpeg          MIME multipart JPEG format
 D  msnwctcp        MSN TCP Webcam stream
 DE mulaw           PCM mu-law format
 D  mvi             Motion Pixels MVI format
 DE mxf             Material eXchange Format
  E mxf_d10         Material eXchange Format, D-10 Mapping
 D  nc              NC camera feed format
 D  nsv             Nullsoft Streaming Video
  E null            raw null video format
 DE nut             NUT format
 D  nuv             NuppelVideo format
 DE ogg             Ogg
 D  oma             Sony OpenMG audio
 DE oss             Open Sound System playback
  E psp             PSP MP4 format
 D  psxstr          Sony Playstation STR format
 D  pva             TechnoTrend PVA file and stream format
 D  qcp             QCP format
 D  r3d             REDCODE R3D format
 DE rawvideo        raw video format
  E rcv             VC-1 test bitstream
 D  rl2             RL2 format
 DE rm              RealMedia format
 D  rpl             RPL/ARMovie format
  E rtp             RTP output format
 D  rtsp            RTSP input format
 DE s16be           PCM signed 16 bit big-endian format
 DE s16le           PCM signed 16 bit little-endian format
 DE s24be           PCM signed 24 bit big-endian format
 DE s24le           PCM signed 24 bit little-endian format
 DE s32be           PCM signed 32 bit big-endian format
 DE s32le           PCM signed 32 bit little-endian format
 DE s8              PCM signed 8 bit format
 D  sdp             SDP
 D  shn             raw Shorten
 D  siff            Beam Software SIFF
 D  smk             Smacker video
 D  sol             Sierra SOL format
 DE sox             SoX native format
  E spdif           IEC958 - S/PDIF (IEC-61937)
  E svcd            MPEG-2 PS format (VOB)
 DE swf             Flash format
 D  thp             THP
 D  tiertexseq      Tiertex Limited SEQ format
 D  tmv             8088flex TMV
 DE truehd          raw TrueHD
 D  tta             True Audio
 D  txd             Renderware TeXture Dictionary
 DE u16be           PCM unsigned 16 bit big-endian format
 DE u16le           PCM unsigned 16 bit little-endian format
 DE u24be           PCM unsigned 24 bit big-endian format
 DE u24le           PCM unsigned 24 bit little-endian format
 DE u32be           PCM unsigned 32 bit big-endian format
 DE u32le           PCM unsigned 32 bit little-endian format
 DE u8              PCM unsigned 8 bit format
 D  vc1             raw VC-1
 D  vc1test         VC-1 test bitstream format
  E vcd             MPEG-1 System format (VCD)
 D  video4linux     Video4Linux device grab
 D  video4linux2    Video4Linux2 device grab
 D  vmd             Sierra VMD format
  E vob             MPEG-2 PS format (VOB)
 DE voc             Creative Voice file format
 D  vqf             Nippon Telegraph and Telephone Corporation (NTT) TwinVQ
 D  w64             Sony Wave64 format
 DE wav             WAV format
 D  wc3movie        Wing Commander III movie format
 D  wsaud           Westwood Studios audio format
 D  wsvqa           Westwood Studios VQA format
 D  wv              WavPack
 D  xa              Maxis XA File Format
 DE yuv4mpegpipe    YUV4MPEG pipe format

Comments

arthurf’s picture

Can you run print_r(ffmpeg_wrapper_get_file_formats('decode')); and make sure that your cache is cleared (or comment out line 592)?

I'd like to see if it's just failing to parse correctly or if it's really a new format of output.

thanks

a.

domidc’s picture

It prints this array:

Array ( [0] => 4xm [1] => IFF [2] => ISS [3] => MTV [4] => RoQ [5] => aac [6] => ac3 [7] => aea [8] => aiff [9] => alaw [10] => amr [11] => apc [12] => ape [13] => asf [14] => ass [15] => au [16] => avi [17] => avs [18] => bethsoftvid [19] => bfi [20] => c93 [21] => caf [22] => cavsvideo [23] => cdg [24] => daud [25] => dirac [26] => dnxhd [27] => dsicin [28] => dts [29] => dv [30] => dv1394 [31] => dxa [32] => ea [33] => ea_cdata [34] => eac3 [35] => f32be [36] => f32le [37] => f64be [38] => f64le [39] => ffm [40] => film_cpk [41] => flac [42] => flic [43] => flv [44] => gsm [45] => gxf [46] => h261 [47] => h263 [48] => h264 [49] => idcin [50] => image2 [51] => image2pipe [52] => ingenient [53] => ipmovie [54] => iv8 [55] => lmlm4 [56] => m4v [57] => matroska [58] => mjpeg [59] => mlp [60] => mm [61] => mmf [62] => mov [63] => mp4 [64] => m4a [65] => 3gp [66] => 3g2 [67] => mj2 [68] => mp3 [69] => mpc [70] => mpc8 [71] => mpeg [72] => mpegts [73] => mpegtsraw [74] => mpegvideo [75] => msnwctcp [76] => mulaw [77] => mvi [78] => mxf [79] => nc [80] => nsv [81] => nut [82] => nuv [83] => ogg [84] => oma [85] => oss [86] => psxstr [87] => pva [88] => qcp [89] => r3d [90] => rawvideo [91] => rl2 [92] => rm [93] => rpl [94] => rtsp [95] => s16be [96] => s16le [97] => s24be [98] => s24le [99] => s32be [100] => s32le [101] => s8 [102] => sdp [103] => shn [104] => siff [105] => smk [106] => sol [107] => sox [108] => swf [109] => thp [110] => tiertexseq [111] => tmv [112] => truehd [113] => tta [114] => txd [115] => u16be [116] => u16le [117] => u24be [118] => u24le [119] => u32be [120] => u32le [121] => u8 [122] => vc1 [123] => vc1test [124] => video4linux [125] => video4linux2 [126] => vmd [127] => voc [128] => vqf [129] => w64 ) 
arthurf’s picture

What does ffmpeg say about the file you're passing it when you do ffmpeg -i filename.xxx ?