bililive-go icon indicating copy to clipboard operation
bililive-go copied to clipboard

抖音直播间录制时,报ffmpeg不支持的编码

Open kele-manong opened this issue 1 year ago • 20 comments

程序版本

v0.7.13

所使用的 config 文件的内容

rpc: enable: true bind: :8080 debug: true interval: 15 out_put_path: /srv/bililive ffmpeg_path: "" log: out_put_folder: ./ save_last_log: true save_every_log: false feature: use_native_flv_parser: false remove_symbol_other_character: false live_rooms:

  • url: https://live.douyin.com/305904159571 is_listening: true quality: 0 out_put_tmpl: "" video_split_strategies: on_room_name_changed: false max_duration: 8h0m0s cookies: {} on_record_finished: convert_to_mp4: true delete_flv_after_convert: false timeout_in_us: 60000000

程序 log

2023-07-10 13:04:53 | stderr | [flv @ 0x7f6e05179740] Video codec (c) is not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means

自由描述

在nas的docker环境中运行,对配置文件中的抖音直播间录屏报以上错误,比较奇怪的是,以前没这个问题,同样的直播间,就今天突然出现。 因为是docker环境安装,我暂时没办法升级或处理ffmpeg的版本,不知道是什么原因。

kele-manong avatar Jul 10 '23 05:07 kele-manong

补充说明,我同时还在录制另一个抖音直播间,主播是采用手机直播方式,就没这个错误。现在报这个错误的主播是单反直播,这是我唯一了解到的区别。

kele-manong avatar Jul 10 '23 05:07 kele-manong

再补充,我尝试了将参数use_native_flv_parser设置为true,结果保存了一个有大小的flv文件,但是转码出来的mp4为空文件,保存的flv文件实际也无法打开

kele-manong avatar Jul 10 '23 05:07 kele-manong

你的配置文件的 debug: true 的话,ffmpeg应该会输出非常多log吧。可以把完整log都发出来吗? native flv parser 默认来的一定是 flv,但看你的描述,我怀疑收到的不是 flv 流。

你还可以在你的 log 里搜一下 Start ParseLiveStream ,在它后面会跟着一个录制时使用的视频流的真实地址。如果有的话可以发上来吗?根据这个地址也许能推断出那个直播先的视频流是什么格式。

kira1928 avatar Jul 10 '23 05:07 kira1928

好,我试试,这个nas设备里面我想办法把日志搞出来

kele-manong avatar Jul 10 '23 05:07 kele-manong

11081688967277_ pic 完整的日志文件我在远端搞不出来,不过日志中找到了end parse部分,如上图。 这个url(http://pull-flv-l11.douyincdn.com/third/stream-113344245799059932.flv?expire=1689571984&sign=d2bf6a98a3b18feb4b9868ecfa7d4baa )我试过在浏览器中打开,让我下载,貌似是能访问的

kele-manong avatar Jul 10 '23 05:07 kele-manong

我通过远端日志查看器,看到以下日志,也许对您有用。 image image image image image

kele-manong avatar Jul 10 '23 05:07 kele-manong

再补充,我尝试了将参数use_native_flv_parser设置为true,结果保存了一个有大小的flv文件,但是转码出来的mp4为空文件,保存的flv文件实际也无法打开

那个flv文件有多大?方便上传到这里或者tg群里吗?我想下载下来看看。。

kira1928 avatar Jul 10 '23 10:07 kira1928

怀疑是这个问题:https://github.com/hr3lxphr6j/bililive-go/issues/74

但是因为我找不到可以重现的直播间,所以一直不知道怎么着手。

kira1928 avatar Jul 10 '23 10:07 kira1928

再补充,我尝试了将参数use_native_flv_parser设置为true,结果保存了一个有大小的flv文件,但是转码出来的mp4为空文件,保存的flv文件实际也无法打开

那个flv文件有多大?方便上传到这里或者tg群里吗?我想下载下来看看。。

今天的那个我没存,我明天留意一下,如果给我蹲到,那么我可以控制在几十兆这种大小,然后……我总有办法传给你的。 你可以试试看这个抖音直播间 https://live.douyin.com/305904159571 昨天还是好的,突然变成这样了

kele-manong avatar Jul 10 '23 10:07 kele-manong

再补充,我尝试了将参数use_native_flv_parser设置为true,结果保存了一个有大小的flv文件,但是转码出来的mp4为空文件,保存的flv文件实际也无法打开

那个flv文件有多大?方便上传到这里或者tg群里吗?我想下载下来看看。。

那个flv文件,我从nas上恢复出来了,30多兆,无法上传到这里,但是我可以给你网盘链接

链接: https://pan.baidu.com/s/1LGx7mvpm2AA4GbBUEKo5bA?pwd=uubu 提取码: uubu --来自百度网盘超级会员v8的分享

kele-manong avatar Jul 10 '23 10:07 kele-manong

谢谢!我下下来了,可以用potplayer播放。potplayer里显示视频是hevc编码,就是我上面说的那个老 issue 里提到的问题。这次有了实际的flv文件做参考,帮助太大了!感谢! 不过什么时候能修复不好说,我有点拖延。。

kira1928 avatar Jul 10 '23 14:07 kira1928

感谢,我至少知道可以有个东西播放了,那么potplayer可以把这玩意转换成mp4吗?

kele-manong avatar Jul 10 '23 14:07 kele-manong

那就不清楚了,我用potplayer仅限于播放。 考虑到他叫 player,估计是不包含转换功能的。

kira1928 avatar Jul 10 '23 16:07 kira1928

谢谢!我下下来了,可以用potplayer播放。potplayer里显示视频是hevc编码,就是我上面说的那个老 issue 里提到的问题。这次有了实际的flv文件做参考,帮助太大了!感谢! 不过什么时候能修复不好说,我有点拖延。。

幸亏我昨天恢复出来这个文件了,今天这个直播间数据又恢复正常了,没这个现象了。这个30m的文件是个绝版文件。

kele-manong avatar Jul 11 '23 04:07 kele-manong

这个不是BUG, 主播电脑端推流 选的HEVC编码(B站就很多用这个编码推流直播), 官方的ffmpeg是不支持 hevc FLV的。

buzhixihuan2021 avatar Jul 11 '23 09:07 buzhixihuan2021

这个不是BUG, 主播电脑端推流 选的HEVC编码(B站就很多用这个编码推流直播), 官方的ffmpeg是不支持 hevc FLV的。

恩,确实不是bug。只能说是一种特殊情况,超过的标准范围,无法支持了。

kele-manong avatar Jul 11 '23 09:07 kele-manong

但解决这个hevc flv问题是这个项目原作者当时就立下的 flag,我想完成他的遗志(不是

kira1928 avatar Jul 11 '23 09:07 kira1928

我也遇到这个问题了,好几次了录的视频文件1个多G,无法播放也无法转码也无法修复😂想问问你目前是怎么解决的

Hertz221 avatar Jul 24 '23 03:07 Hertz221

我也遇到这个问题了,好几次了录的视频文件1个多G,无法播放也无法转码也无法修复😂想问问你目前是怎么解决的

并没有解决,最多就是能录,但是回放不了,也转换不成mp4。 问题的核心是hevc编码就不是flv的标准格式,人家不认为这是一个需要解决的问题,确实也没毛病。

kele-manong avatar Jul 24 '23 06:07 kele-manong

并没有解决,最多就是能录,但是回放不了,也转换不成mp4。 问题的核心是hevc编码就不是flv的标准格式,人家不认为这是一个需要解决的问题,确实也没毛病。

好吧,我目前用播客录,暂时还没遇到问题,也不知道主播改没改编码,暂时就这样吧

Hertz221 avatar Jul 24 '23 06:07 Hertz221