我有两个要尝试加载到VideoView使用中的视频videoView.setVideoURI(Uri.parse(url));这两个视频分别为视频1和视频2,它们具有以下规格(使用提取ffmpeg -i);实际上,它们是同一视频的两种不同编码:影片1:Seems stream 0 codec frame rate differs from container frame rate: 180000.00 (180000/1) -> 90000.00 (180000/2)Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '4fbfd5ece4b0932236fc234d.mp4': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: mp42isomavc1 creation_time : 2011-12-03 04:43:46 genre : Trailer artist : Paramount Pictures title : Captain America: The First Avenger - Theatrical Trailer #2 encoder : HandBrake 4344svn 2011111001 date : 2011 Duration: 00:02:30.67, start: 0.000000, bitrate: 6738 kb/s Stream #0.0(und): Video: h264 (High), yuv420p, 1920x800 [PAR 1:1 DAR 12:5], 6575 kb/s, 23.97 fps, 90k tbr, 90k tbn, 180k tbc Metadata: creation_time : 2011-12-03 04:43:46 Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, s16, 159 kb/s Metadata: creation_time : 2011-12-03 04:43:46视频2:Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '500416ea44aeb4b95d5ae8a0_hd.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 creation_time : 2011-12-03 04:43:46 title : Captain America: The First Avenger - Theatrical Trailer #2 artist : Paramount Pictures date : 2011 encoder : Lavf53.32.100 genre : Trailer Duration: 00:02:30.69, start: 0.000000, bitrate: 2045 kb/s Stream #0.0(und): Video: h264 (High), yuv420p, 1280x720 [PAR 27:20 DAR 12:5], 1889 kb/s, 23.99 fps, 90k tbr, 180k tbn, 180k tbc Metadata: creation_time : 2011-12-03 04:43:46 Stream #0.1(eng): Audio: aac, 44100 Hz, stereo, s16, 151 kb/s Metadata: creation_time : 2011-12-03 04:43:46根据我的阅读,错误(1,-2147483648)可能对应于不受支持的编解码器,损坏的元数据或错误的文件头。如果是这样,您能为我指出使用哪种编解码器的正确方向吗?谢谢。
3 回答
翻过高山走不出你
TA贡献1875条经验 获得超3个赞
我正面临着在Android P(像素2 XL)相同的错误,但我需要做的就是把android:usesCleartextTraffic="true"
我的AndroidManifest.xml
应用程序标签。
梵蒂冈之花
TA贡献1900条经验 获得超5个赞
对于流式传输,Android网站上有一条注释:
对于3GPP和MPEG-4容器,moov原子必须在任何mdat原子之前,但必须在ftyp原子之后。
在移动moov原子之前,我遇到了同样的错误。为了解决这个问题,您可以将mp4Box与以下命令配合使用:
MP4Box -hint output.mp4
之后,我的大部分视频都可以流式传输了。如果不起作用,请尝试使用ffmpeg进行此操作:
ffmpeg -i input.flv -f mp4 -vcodec libx264 -vprofile baseline -acodec libfaac -ar 16k -ab 32k output.mp4
MP4Box -hint output.mp4
您还可以在这里找到其他工具。
- 3 回答
- 0 关注
- 1810 浏览
添加回答
举报
0/150
提交
取消