我有两个h264视频文件。一个是“Big buck Bunny”,另一个是我使用FFMPEG创建的。两者在大多数浏览器中都可以播放,但在Firefox31.1.0中,“Big buck Bunny”播放得很好,但我的视频给出了“损坏视频”的响应。
ffprobe在屯门的两个视频的输出如下(首先是兔子,然后是我的)
谁能明白为什么我的不玩...?
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'mov_bbb.mp4': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: mp42isomavc1 creation_time : 2012-03-13 08:58:06 encoder : HandBrake 0.9.6 2012022800 Duration: 00:00:10.03, start: 0.000000, bitrate: 629 kb/s Chapter #0:0: start -0.080000, end 10.000000 Metadata: title : Chapter 1 Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, smpte170m/smpte170m/bt709), 320x176, 300 kb/s, 25 fps, 25 tbr, 90k tbn, 180k tbc (default) Metadata: creation_time : 2012-03-13 08:58:06 encoder : JVT/AVC Coding Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 160 kb/s (default) Metadata: creation_time : 2012-03-13 08:58:06 Stream #0:2(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 160 kb/s Metadata: creation_time : 2012-03-13 08:58:06 Stream #0:3(und): Subtitle: mov_text (text / 0x74786574), 0 kb/s Metadata: creation_time : 2012-03-13 08:58:06
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : Lavf56.40.101 Duration: 00:00:09.92, start: 0.000000, bitrate: 159 kb/s Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 352x288 [SAR 12:11 DAR 4:3], 157 kb/s, 12.50 fps, 12.50 tbr, 12800 tbn, 25 tbc (default) Metadata: handler_name : VideoHandler
您可以尝试使用选项-movflags faststart
在ffmpeg中对视频进行编码(请参见此处
这会将moov atom移动到文件的开头,防止在播放之前需要下载整个文件
除此之外,我所能建议的就是尝试MP4Box来编码你的视频
背景: 两天来,我一直在努力实现一个像Vine一样的录像机。首先,我试了MediaRecorder。但我需要的视频可能是由小视频剪辑组成的。此类不能用于录制短时视频剪辑。然后我找到了MediaCodec、FFmpeg和JavaCV。FFmpeg和JavaCV可以解决这个问题。但是我必须用许多库文件来编译我的项目。它将生成一个非常大的APK文件。所以我更喜欢用MediaCodec实现它,尽管这个类只
我需要验证视频文件是(在Java): 视频是H.264编码的 我调查过JMF和Xuggle。 Xuggle使加载和解码文件变得更容易,并将其转换为另一种格式,但我还不知道如何确定我加载的文件的编码。 所以我想知道Xuggle是否有能力简单地返回视频类型 如果我需要自己确定,有人能给我指一些H.264格式的文档吗
我正在使用Java API实现一个解码器,用于解码实时H.264远程流。我正在使用回调()从本机层接收H.264编码数据,并在的上解码和呈现。我的实现已经完成(使用回调、解码和呈现等方式检索编码流)。下面是我的解码器类: 现在的问题是-流正在解码和呈现在表面,但视频不清楚。看起来像是框架被打破了,场景被扭曲了/脏了。移动是破碎的和方形的碎片到处(我真的很抱歉,因为我没有截图现在)。 关于我的流-它
H.264分析器可以用来分析学习H.264码流结构。可以比较详细的列出H.264码流中NAL的信息。
经过多次尝试,我决定去ExoPlayer库。我很高兴使用方便和不断更新。此外,它减少了我的APK的大小三倍。 不幸的是,ExoPlayer库无法播放一些音频流。我尝试过调试、更改对URL的调用等等。不成功。 以下是我不能用ExoPlayer库玩的流的例子,但我可以用Vitamio复制: http://42747t.lp.azioncdn.net:1935/2747t/a/mp4:access_op
我试图在Android上使用ExoPlayer创建一个流媒体应用程序。大多数的流工作良好,只有一些他们不播放声音,在某些设备上只。 这是问题吗?如果我必须从头开始构建扩展,是否可以在Windows中完成?在我的PC上安装Linux有点问题。并且有没有任何教程来做它正确,根据我的流信息? ExoPlayer是一个很棒的媒体播放器,但是它确实缺乏文档(或者很难找到)。