bililive-go
bililive-go copied to clipboard
抖音直播间录制时,报ffmpeg不支持的编码
程序版本
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的版本,不知道是什么原因。
补充说明,我同时还在录制另一个抖音直播间,主播是采用手机直播方式,就没这个错误。现在报这个错误的主播是单反直播,这是我唯一了解到的区别。
再补充,我尝试了将参数use_native_flv_parser设置为true,结果保存了一个有大小的flv文件,但是转码出来的mp4为空文件,保存的flv文件实际也无法打开
你的配置文件的 debug: true 的话,ffmpeg应该会输出非常多log吧。可以把完整log都发出来吗? native flv parser 默认来的一定是 flv,但看你的描述,我怀疑收到的不是 flv 流。
你还可以在你的 log 里搜一下 Start ParseLiveStream
,在它后面会跟着一个录制时使用的视频流的真实地址。如果有的话可以发上来吗?根据这个地址也许能推断出那个直播先的视频流是什么格式。
好,我试试,这个nas设备里面我想办法把日志搞出来
完整的日志文件我在远端搞不出来,不过日志中找到了end parse部分,如上图。
这个url(http://pull-flv-l11.douyincdn.com/third/stream-113344245799059932.flv?expire=1689571984&sign=d2bf6a98a3b18feb4b9868ecfa7d4baa )我试过在浏览器中打开,让我下载,貌似是能访问的
我通过远端日志查看器,看到以下日志,也许对您有用。
再补充,我尝试了将参数use_native_flv_parser设置为true,结果保存了一个有大小的flv文件,但是转码出来的mp4为空文件,保存的flv文件实际也无法打开
那个flv文件有多大?方便上传到这里或者tg群里吗?我想下载下来看看。。
怀疑是这个问题:https://github.com/hr3lxphr6j/bililive-go/issues/74
但是因为我找不到可以重现的直播间,所以一直不知道怎么着手。
再补充,我尝试了将参数use_native_flv_parser设置为true,结果保存了一个有大小的flv文件,但是转码出来的mp4为空文件,保存的flv文件实际也无法打开
那个flv文件有多大?方便上传到这里或者tg群里吗?我想下载下来看看。。
今天的那个我没存,我明天留意一下,如果给我蹲到,那么我可以控制在几十兆这种大小,然后……我总有办法传给你的。 你可以试试看这个抖音直播间 https://live.douyin.com/305904159571 昨天还是好的,突然变成这样了
再补充,我尝试了将参数use_native_flv_parser设置为true,结果保存了一个有大小的flv文件,但是转码出来的mp4为空文件,保存的flv文件实际也无法打开
那个flv文件有多大?方便上传到这里或者tg群里吗?我想下载下来看看。。
那个flv文件,我从nas上恢复出来了,30多兆,无法上传到这里,但是我可以给你网盘链接
链接: https://pan.baidu.com/s/1LGx7mvpm2AA4GbBUEKo5bA?pwd=uubu 提取码: uubu --来自百度网盘超级会员v8的分享
谢谢!我下下来了,可以用potplayer播放。potplayer里显示视频是hevc编码,就是我上面说的那个老 issue 里提到的问题。这次有了实际的flv文件做参考,帮助太大了!感谢! 不过什么时候能修复不好说,我有点拖延。。
感谢,我至少知道可以有个东西播放了,那么potplayer可以把这玩意转换成mp4吗?
那就不清楚了,我用potplayer仅限于播放。 考虑到他叫 player,估计是不包含转换功能的。
谢谢!我下下来了,可以用potplayer播放。potplayer里显示视频是hevc编码,就是我上面说的那个老 issue 里提到的问题。这次有了实际的flv文件做参考,帮助太大了!感谢! 不过什么时候能修复不好说,我有点拖延。。
幸亏我昨天恢复出来这个文件了,今天这个直播间数据又恢复正常了,没这个现象了。这个30m的文件是个绝版文件。
这个不是BUG, 主播电脑端推流 选的HEVC编码(B站就很多用这个编码推流直播), 官方的ffmpeg是不支持 hevc FLV的。
这个不是BUG, 主播电脑端推流 选的HEVC编码(B站就很多用这个编码推流直播), 官方的ffmpeg是不支持 hevc FLV的。
恩,确实不是bug。只能说是一种特殊情况,超过的标准范围,无法支持了。
但解决这个hevc flv问题是这个项目原作者当时就立下的 flag,我想完成他的遗志(不是
我也遇到这个问题了,好几次了录的视频文件1个多G,无法播放也无法转码也无法修复😂想问问你目前是怎么解决的
我也遇到这个问题了,好几次了录的视频文件1个多G,无法播放也无法转码也无法修复😂想问问你目前是怎么解决的
并没有解决,最多就是能录,但是回放不了,也转换不成mp4。 问题的核心是hevc编码就不是flv的标准格式,人家不认为这是一个需要解决的问题,确实也没毛病。
并没有解决,最多就是能录,但是回放不了,也转换不成mp4。 问题的核心是hevc编码就不是flv的标准格式,人家不认为这是一个需要解决的问题,确实也没毛病。
好吧,我目前用播客录,暂时还没遇到问题,也不知道主播改没改编码,暂时就这样吧