将文件格式从flv更改为android将播放的任何内容

将文件格式从flv更改为android将播放的任何内容,android,ffmpeg,flv,playback,libavformat,Android,Ffmpeg,Flv,Playback,Libavformat,我需要把这个编码为h264的文件放在一个flv容器中,然后把它放在mp4、3gp或android MediaPlayer可以理解的任何文件格式中 我想用本土的方式来做这件事。因为我不会解码或编码任何东西,所以我认为我不会浪费很多精力(我错了吗?) 我按照这里的说明,成功地编译和使用了ffmpeg,并将其用于mp4和3gp文件 但是当涉及到flv文件时,它失败了。我知道android的ffmpeg特定端口中没有flv文件的格式定义 例如,没有libavformat/flv.h头文件 也许这就是为什

我需要把这个编码为h264的文件放在一个flv容器中,然后把它放在mp4、3gp或android MediaPlayer可以理解的任何文件格式中

我想用本土的方式来做这件事。因为我不会解码或编码任何东西,所以我认为我不会浪费很多精力(我错了吗?)

我按照这里的说明,成功地编译和使用了ffmpeg,并将其用于mp4和3gp文件

但是当涉及到flv文件时,它失败了。我知道android的ffmpeg特定端口中没有flv文件的格式定义

例如,没有libavformat/flv.h头文件

也许这就是为什么这样做的原因:

外部AVInputFormat ff_mov_demuxer
av寄存器输入格式(ff mov解复用器)

尽管这样做失败了:

问题是,隧道尽头有灯吗?有人做过类似的事情吗?它有用吗?我的意思是,我总是可以把flv媒体文件扔进一个flash播放器里,瞧。。问题是,这将是一个特殊的解决方案,因为它不适用于所有那些运行速度较慢但还不能运行Flash的设备的人

纳尔逊

附:以防万一。以下是关于我正在谈论的文件的一些信息:

ffmpeg -i rio.flv 
ffmpeg version N-32624-gea8de10, Copyright (c) 2000-2011 the FFmpeg developers
  built on Sep 15 2011 23:31:42 with gcc 4.5.2
  configuration: --enable-libfaac --enable-libmp3lame --enable-librtmp --enable-libtheora --enable-libx264 --enable-libxvid --enable-gpl --enable-nonfree
  libavutil    51. 16. 0 / 51. 16. 0
  libavcodec   53. 15. 0 / 53. 15. 0
  libavformat  53. 12. 0 / 53. 12. 0
  libavdevice  53.  3. 0 / 53.  3. 0
  libavfilter   2. 42. 0 /  2. 42. 0
  libswscale    2.  1. 0 /  2.  1. 0
  libpostproc  51.  2. 0 / 51.  2. 0

Seems stream 0 codec frame rate differs from container frame rate: 2000.00 (2000/1) -> 14.99 (15000/1001)
Input #0, flv, from 'rio.flv':
  Duration: 00:01:00.06, start: 0.000000, bitrate: 783 kb/s
    Stream #0.0: Video: h264 (Main), yuv420p, 704x480 [SAR 10:11 DAR 4:3], 14.99 tbr, 1k tbn, 2k tbc
ffmpeg -i rio.flv 
ffmpeg version N-32624-gea8de10, Copyright (c) 2000-2011 the FFmpeg developers
  built on Sep 15 2011 23:31:42 with gcc 4.5.2
  configuration: --enable-libfaac --enable-libmp3lame --enable-librtmp --enable-libtheora --enable-libx264 --enable-libxvid --enable-gpl --enable-nonfree
  libavutil    51. 16. 0 / 51. 16. 0
  libavcodec   53. 15. 0 / 53. 15. 0
  libavformat  53. 12. 0 / 53. 12. 0
  libavdevice  53.  3. 0 / 53.  3. 0
  libavfilter   2. 42. 0 /  2. 42. 0
  libswscale    2.  1. 0 /  2.  1. 0
  libpostproc  51.  2. 0 / 51.  2. 0

Seems stream 0 codec frame rate differs from container frame rate: 2000.00 (2000/1) -> 14.99 (15000/1001)
Input #0, flv, from 'rio.flv':
  Duration: 00:01:00.06, start: 0.000000, bitrate: 783 kb/s
    Stream #0.0: Video: h264 (Main), yuv420p, 704x480 [SAR 10:11 DAR 4:3], 14.99 tbr, 1k tbn, 2k tbc