用direct264,ffmpeg avi转h264压mp4过程出错,怎么解决

《用roozhou大的direct264压视频,画面播放有问题!请进! 》问题_dwing吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:3,842贴子:
《用roozhou大的direct264压视频,画面播放有问题!请进! 》问题
汉哲管理咨询,您身边的管理咨询专家,帮助企业建立规范,高效的管理体系,
问题解决,请看原帖子的4楼的请教!谢谢!
昂 楼主应该把原帖地址贴上来。。roozhou大大的x264禁用那个weightp了吗 我没看原帖 但是我知道花屏问题是该参数目前不能被coreavc1.95版兼容所致,升级coreavc至2.0就OK了,或者使用ffdshow作为解码器
呵呵~~谢谢关注,我的问题之前是花屏,但是是constrain intra参数不应该加,但是我的的确是2.0+ffdshow的,之前就算用也是花屏,MPlayer应该不是调用DirectShow吧?(不知道~)
昨天压了视频,但是用roozhou大的ffmpeg封装的时候遇到问题…… 无法封装,用的是3月8日的direct264[matroska @ 0xadafb0]st:1 error, non monotone timestamps 1455317 &= 1455317[matroska @ 0xadafb0]st:1 error, pts & dtsav_interleaved_write_frame(): Error while opening file 不知道啥回事,单独播放压了的视频可以,但是封装不能正常……比原来的少了5秒,最后的5秒是静止3秒左右,2秒左右是黑屏,音乐到了就立即停了,所以有问题……
用官方的ffmpeg更是啥都没封成,用mencoder直接把视频流,不包括封装,直接输出来的一个24min的黑屏…… 所以想改用roozhou大的~~ 我觉得是不是我的设置或者姬子rp啊? 不过压一个14s的视频倒是没事~~ 没有加AVS来压视频,但在ffdshow裏面设置了deband,dscaler(其实我连这有啥用也不知道,用来看看效果的……),x锐化,也扌选了avisynth的复选框(不知道这是否会走AVS……)
很蛋疼的mmg可以封装,不需要timecode…… 用mediainfo看,封装只前是24.947帧,但是封装后事29.976帧…… 这有关么? 见过很多次以下代码, Seems stream 0 codec frame rate differs from container frame rate:
() -& 000/1) ffmpeg的……
This is handy because a non monotone discontinuity in timestamps (that is: next read frame with a timestamp *less or equal* to the previous one) causes a failure when writing in the stream: ffmpeg will continue to transcode but the frame won't be written into the stream. 刚查了一下,多数英文没看懂…… 不过这里只看懂了ffmpeg说: 下一个将要读取的带有时间标记的帧由於(少於或相等于之前的帧?)而导致了写入流的错误:ffmpeg将会继续转码,但是帧却不会写入流裏面 囧……如何解决呢? 附:原文地址……关於ffmpeg的源码吧……
&&没有加AVS来压视频,但在ffdshow裏面设置了deband,dscaler(其实我连这有啥用也不知道,用来看看效果的……),x锐化,也扌选了avisynth的复选框(不知道这是否会走AVS……)什么都不要选,既然不知道什么用的就不要选,avisynth框如果不用也不要选。如果要试效果,先在播放器里试,不要用压片来试。(不包括resize和裁边)只有以下情况需要用:1)源视频播放起来有问题,需要修复2)为了得到某些源没有的特殊效果关于那个monotone的问题,那个是ffmpeg的bug,我在自己的版本里已经基本修复了。如果还出现一般就是有问题了。能不能把封装出错的视频(ffmpeg&-i&后面的那个)提供上传到网盘让我看一下。
谢谢roozhou大!我很乐意! 但是已经删掉了…Orz…我再压一次看看吧~~~ 但是由於时间,我会把一些参数加入,因为本来是1080p→1080p的,但是太慢了…… 开一个resize到848我试一下~会影响么?
最好不要改,用原来的参数压,但是只要很短的一段就可以了,从pts的数值看没有几秒
防雾霾,新风,除湿,全热交换,完美家居生活只需一部完成
原来没有删除…… 我再混流一次,roozhou大要未混流的视频和音频么?
roozhou大只要很短一段?好像视频前面都没问题,但是最后几秒才有问题,用ffmpeg切么?我上传多少都可以~~ roozhou大感到方便就可以了~
神奇的……这次混流虽然出现以上问题信息,但是混流只是可能少了1s…… 什麽回事呢…… 这次是: (略)frame=34847 fps=2297 q=-1.0 size=&& 249934kB time=1045.70 bitrate=1958.0kbits/sframe=34847 fps=2224 q=-1.0 size=&& 285618kB time=1202.15 bitrate=1946.3kbits/sframe=34847 fps=2155 q=-1.0 size=&& 317496kB time=1362.47 bitrate=1909.0kbits/s[matroska @ 01be9010]st:1 error, non monotone timestamps 1455317 &= 1455317av_interleaved_write_frame(): Error while opening file roozhou要多大的视频啊?
这是整段混流之后的视频~~ 麻烦roozhou大了~~
如果下载不能,提取码是35d296ad
啊,传错了…… roozhou大下载了麽? 之前的是用megui的ffmpeg混流的……少大概1s 现在发的是用roozhou大的ffmpeg混流的,少5s……
提取码:4c7b35d1 抱歉了,roozhou大……
你还是理解错了,我要的是混流前的就是你用来混流的,会出问题的,完整的视频文件,我可以分析原因。
不好意思,没看到……以上是压出来的视频,未混流的~`
bca648c0是视频的提取码
音频部份要么? 98c9735c是提取码
&leeangering出问题的是音频,你的那个音频文件是怎么做出来的?我看到用的是lavf。
我刚刚用roozhou大大的ffmpeg解音频~混流试了一下~~输出:Seems stream 0 codec frame rate differs from container frame rate:
() -& 000/1)Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'e:\maho-video.mp4':&& Metadata:&&&& major_brand&&&&& : avc1&&&& minor_version&&& : 0&&&& compatible_brands: isomavc1&& Duration: 00:24:15.16, start: 0.000000, bitrate: 1743 kb/s&&&& Stream #0.0(und): Video: h264, yuv420p, , 1740 kb/s, 23.95 fps, 48k tbr, 48k tbn, 20000k tbcInput #1, mov,mp4,m4a,3gp,3g2,mj2, from 'K:\mahoro-audio.mp4':&& Metadata:&&&& major_brand&&&&& : isom&&&& minor_version&&& : 512&&&& compatible_brands: isomiso2mp41&&&& encoder&&&&&&&&& : Lavf52.54.0&& Duration: 00:24:15.36, start: 0.000000, bitrate: 168 kb/s&&&& Stream #1.0(und): Audio: aac, 48000 Hz, stereo, s16, 165 kb/sOutput #0, mp4, to 'e:\mahoro-muxed.mp4':&& Metadata:&&&& encoder&&&&&&&&& : Lavf52.54.0&&&& Stream #0.0(und): Video: 0x0021, yuv420p, , q=2-31, 1740 kb/s, 48ktbn, 48k tbc&&&& Stream #0.1(und): Audio: 0x Hz, stereo, 165 kb/sStream mapping:&& Stream #0.0 -& #0.0&& Stream #1.0 -& #0.1Press [q] to stop encoding[mp4 @ 0xadafb0]st:1 error, non monotone timestamps
&= bps[mp4 @ 0xadafb0]st:1 error, pts & dtsav_interleaved_write_frame(): Error while opening file 啊……搞不懂啊……
音频解流的时候,我用的是-acodec copy参数…… Seems stream 0 codec frame rate differs from container frame rate: 47.95 (48000/1001) -& 23.98 ()Input #0, mov,,m4a,3gp,3g2,mj2, from 'K:\[POPGO][FREEWIND][Mahoro_Matic][Full_HD-BDRIP][01].':&& Metadata:&&&& major_brand&&&&& : isom&&&& minor_version&&& : 1&&&& compatible_brands: isomavc1&& Duration: 00:24:15.36, start: 0.021333, bitrate: 3795 kb/s&&&& Stream #0.0(und): Video: h264, yuv420p,
[PAR 1:1 DAR 16:9], 3626 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 47.95 tbc&&&& Stream #0.1(und): Audio: aac, 48000 Hz, stereo, s16, 165 kb/sFile 'k:\mahoro-audio.' already exists. Overwrite ? [y/N] yOutput #0, , to 'k:\mahoro-audio.mp4':&& Metadata:&&&& encoder&&&&&&&&& : Lavf52.54.0&&&& Stream #0.0(und): Audio: 0x Hz, stereo, 165 kb/sStream mapping:&& Stream #0.1 -& #0.0Press [q] to stop encodingsize=&&& 29872kB time=1455.34 bitrate= 168.1kbpsvideo:0kB audio:29338kB global headers:0kB muxing overhead 1.819038% 好难懂啊 ……
当输出格式为mkv时候,输出为:Press [q] to stop encoding[matroska @ 0xadafb0]st:1 error, non monotone timestamps 1455317 &= 1455317[matroska @ 0xadafb0]st:1 error, pts & dtsav_interleaved_write_frame(): Error while opening file 输出mkv,之前是MP4,non monotone timestamps从error, non monotone timestamps
&= bps变成了error, non monotone timestamps 1455317 &= 1455317 不知道有没有关系…… 以上的操作只是用了direct264的工具……不知道和我的设置是否有关系……
从22楼的回复我猜你是先用ffmpeg把音频抽到单独的mp4里,然后再合成的。这一步是不需要的。只需要在mux时加入原始文件就可以。ffmpeg&-i&output.mp4&-vcodec&copy&-i&input.mp4&-acodec&copy&mux.mp4当然即使先抽取也不应该出这样的问题,可能是bug。另外楼上发帖还是注意一下1)不要发很多楼,尽量一贴里面把事情说完整2)只需要回答我的问题就行了,不要把无关的东西发上来,也不要加什么“好难懂啊”之类没用的评论3)发ffmpeg的输出时把命令行参数也加上
是的,roozhou大~~ 我刚用avi封装更是出现不停的封装,体积不停的大,ctrl+c直接停了,输出:frame=18641 fps= 13 q=-1.0 Lsize= 1064747kB time=777.73 bitrate=11215.2kbpsvideo:173198kB audio:15706kB global headers:0kB muxing overhead 463.644421%Received signal 2: terminating.
ffmpeg的参数是ffmpeg -i video.mp4 -vcodec copy -an -i audio.mp4 -vn -acodec copy muxed.avi
至於我用俩楼,是因为想一次发那麼多,会不会比较看起来繁琐而已…… 呵呵~ 昨晚上又压了视频,但是不知啥原因,无法混流 输出以下信息: C:\Documents and PUTER&ffmpeg -i k:\01.mp3 -acodec copy -vn -i k:\d01.mkv -vcodec copy -an k:\d02.mkvFFmpeg version SVN-r22204, Copyright (c)
the FFmpeg developers&& built on Mar&& 5 :26 with gcc 4.4.1&& configuration:&& libavutil&&&&& 50.10. 0 / 50.10. 0&& libavcodec&&&& 52.55. 0 / 52.55. 0&& libavformat&&& 52.54. 0 / 52.54. 0&& libavdevice&&& 52. 2. 0 / 52. 2. 0&& libswscale&&&&& 0.10. 0 /&& 0.10. 0[mp3 @ 0x3eb5d0]max_analyze_duration reachedInput #0, mp3, from 'k:\01.mp3':&& Metadata:&&&& TSSE&&&&&&&&&&&& : Lavf52.54.0&& Duration: 00:23:10.00, start: 0.000000, bitrate: 165 kb/s&&&& Stream #0.0: Audio: mp3, 48000 Hz, 2 channels, s16, 32 kb/s[matroska @ 0x928070]Estimating duration from bitrate, this may be inaccurateSeems stream 0 codec frame rate differs from container frame rate:
() -& 000/1)Input #1, matroska, from 'k:\d01.mkv':&& Duration: 00:23:09.72, start: 0.000000, bitrate: N/A&&&& Stream #1.0(eng): Video: h264, yuv420p, 848x480, PAR 1:1 DAR 53:30, 20k tbr, 20k tbn, 20000k tbcOutput #0, matroska, to 'k:\d02.mkv':Output file #0 does not contain any stream
mmg可以合成……
你到底有没有看我24楼写的东西?还有我什么时候说过可以mp4-&avi了?这个功能我还在修呢,到下个版本才会有。还有你的命令行有问题,不要加-vn,&-an。这些参数是对于输出的流而不是输入流的。比如你的输出含有一条视频和一条音轨,那么你只需要在输出文件名之前指定一次-vcodec&copy&或-acodec&copy。比如我有两个文件,都含有视频和音频,但我要取第一个文件的音频和第二个文件的视频,然后每个文件里视频都是第一条轨道ffmpeg&-i&input1.mp4&-i&input2.mp4&-vcodec&copy&-acodec&copy&-map&0:1&-map&1:0&output.mp4
嗯,谢谢roozhou大的无私帮助!浪费roozhou大的时间真的抱歉!小弟的低级错误真的太多了……小弟按照roozhou大的方法,混流那mkv和的方法知道了!感谢! 原来是小弟的错误!抱歉! 之前那个的混流错误如果直接一步用原视频的音频混流现在已经没有问题! 感谢!
贴吧热议榜
使用签名档&&
保存至快速回贴}

我要回帖

更多关于 direct264 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信