已关闭
通过h264_ascend指定视频编码器的速率控制模式不生效 #330
kevin0615创建于 2025年12月23日关闭于 1月26日
hang
2025年12月23日 评论:
2025年12月23日 评论:
尊敬的开发者您好
目前我们支持的ffmpeg版本是n4.4.1。
同时您可以尝试下readme中的指令,转换成ts格式可能会被mediainfo误判。
将输入文件 test.264 根据指定参数重新编码为H.264格式,输出文件为 out.264
./ffmpeg -hwaccel ascend -c:v h264_ascend -device_id 0 -channel_id 0 -resize 1024x1000 -i test.264 -c:v h264_ascend -device_id 0 -channel_id 0 -profile 2 -rc_mode 0 -gop 30 -frame_rate 25 -max_bit_rate 20000 out.264


hang
2025年12月24日 评论:
2025年12月24日 评论:
尊敬的开发者您好
我们提供的指令是h264之间的rc_mode的转换,根据您的截图,您最终将其转换为mp4,意味着多了一层封装,可能会影响码率的计算。
同时针对码率模式的查看,我们建议您直接使用码率监控监控整个视频的码率是否存在较大波动,如果没有波动则意味着已经为cbr模式。
谢谢


ascend-robot
1月22日 评论:
1月22日 评论:
这个Issue标记为resolved且有一段时间未进一步更新,因此我们将其标记为'stale'(闲置)状态。若你认为这是误操作,可随时评论'/label remove stale'移除'stale'标签。标记为stale的Issue在4天内无更新活动将自动关闭


1月22日 添加了label:stale
1月22日 关闭了 issue
1月23日 重新打开了 issue
1月26日 关闭了 issue
9月9日 issue状态由 Feedback 改变为 DONE


该问题是怎么引起的?
• -rc_mode - 指定视频编码器的速率控制模式(0: CBR, 1: VBR, 默认为 0)。
不设置,设置为0,设置为1,通过mediainfo查看都为VBR,而非CBR。
重现步骤
https://codeload.github.com/FFmpeg/FFmpeg/tar.gz/refs/tags/n4.4.4
https://gitcode.com/ascend/mindsdk-referenceapps.git
./configure
--prefix=./ascend
--enable-shared
--extra-cflags="-I${ASCEND_HOME}/ascend-toolkit/latest/acllib/include"
--extra-ldflags="-L${ASCEND_HOME}/ascend-toolkit/latest/acllib/lib64"
--extra-libs="-lacl_dvpp_mpi -lascendcl"
--enable-ascend
&& make -j && make install
./ffmpeg -hwaccel ascend -c:v h264_ascend -device_id 0 -channel_id 0 -resize 1920x1080 -i ./HBTV_新闻联播_1980_1080.mp4 -c:v h264_ascend -device_id 0 -channel_id 0 -profile 1 -rc_mode 0 -g 25 -max_bit_rate 8192 ./output.ts
报错信息