修复工作
This commit is contained in:
@@ -92,6 +92,24 @@ export default {
|
||||
console.log('✅ 播放器对象已创建:', this.player);
|
||||
console.log('🎬 播放器底层视频元素:', this.player.video);
|
||||
|
||||
// 监听 flv.js 的统计信息和错误
|
||||
if (this.player.flv) {
|
||||
console.log('📊 flv.js 实例:', this.player.flv);
|
||||
|
||||
// 监听 flv.js 的统计信息
|
||||
this.player.flv.on('statistics_info', (stats) => {
|
||||
console.log('📈 flv.js 统计:', stats);
|
||||
});
|
||||
|
||||
// 监听 flv.js 的错误
|
||||
this.player.flv.on('error', (errorType, errorDetail, errorInfo) => {
|
||||
console.error('💥 flv.js 错误:');
|
||||
console.error(' 类型:', errorType);
|
||||
console.error(' 详情:', errorDetail);
|
||||
console.error(' 信息:', errorInfo);
|
||||
});
|
||||
}
|
||||
|
||||
// 监听播放器错误
|
||||
this.player.on('error', (error) => {
|
||||
console.error('❌ 播放器错误:', error);
|
||||
@@ -101,7 +119,9 @@ export default {
|
||||
currentTime: this.player.video.currentTime,
|
||||
duration: this.player.video.duration,
|
||||
readyState: this.player.video.readyState,
|
||||
networkState: this.player.video.networkState
|
||||
networkState: this.player.video.networkState,
|
||||
buffered: this.player.video.buffered.length > 0 ?
|
||||
`${this.player.video.buffered.start(0)} - ${this.player.video.buffered.end(0)}` : 'none'
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@@ -242,7 +242,16 @@ public class MediaTransferFlvByFFmpeg extends MediaTransfer {
|
||||
if (header == null && len >= 13) {
|
||||
header = new byte[13];
|
||||
System.arraycopy(buffer, 0, header, 0, 13);
|
||||
log.info("✅ FLV header已获取: {} bytes", header.length);
|
||||
|
||||
// 验证 FLV header(应该是 'FLV' + version + flags)
|
||||
String magic = new String(header, 0, 3);
|
||||
log.info("✅ FLV header已获取: {} bytes, Magic: {}, Version: {}, Flags: {}",
|
||||
header.length, magic, header[3], header[4]);
|
||||
|
||||
if (!"FLV".equals(magic)) {
|
||||
log.error("❌ FLV header 无效! Magic: {}", magic);
|
||||
}
|
||||
|
||||
headerSent = true;
|
||||
|
||||
// 如果有剩余数据(包含header+数据),一起发送
|
||||
|
||||
Reference in New Issue
Block a user