
            try:
                                        if split_video_by_time:
                                            now = time.strftime("%Y-%m-%d_%H-%M-%S", time.localtime())
                                            print(f"{rec_info} 开始推流到 YouTube: {anchor_name}_{title_in_name}_{now}")

                                            YT_STREAM_KEY = "ue78-1c3e-mr9g-14mz-9r4z"
                                            youtube_rtmp = f"rtmp://a.rtmp.youtube.com/live2/{YT_STREAM_KEY}"

                                            # ------------------------
                                            # NVENC 检测
                                            # ------------------------
                                            codec_v = "libx264"
                                            preset_v = "veryfast"
                                            tune_param = ["-tune", "zerolatency"]

                                            try:
                                                if platform.system().lower() in ["windows", "linux"]:
                                                    check = subprocess.run(["nvidia-smi"], capture_output=True, timeout=10)
                                                    if check.returncode == 0:
                                                        enc = subprocess.run(["ffmpeg", "-hide_banner", "-encoders"], 
                                                                            capture_output=True, text=True, timeout=10)
                                                        if "h264_nvenc" in enc.stdout:
                                                            codec_v   = "h264_nvenc"
                                                            preset_v  = "p5"
                                                            tune_param = ["-tune", "ll", "-rc", "vbr"]
                                                            print("检测到 NVIDIA GPU → 使用 NVENC 硬件加速")
                                            except:
                                                pass  # 异常自动降级

                                            # ------------------------
                                            # FFmpeg 命令（稳定推流）
                                            # ------------------------
                                            ffmpeg_command = [
                                                "ffmpeg",
                                                "-re",
                                                "-i", real_url,

                                                "-vf", "scale=720:1280:force_original_aspect_ratio=decrease,pad=720:1280:(ow-iw)/2:(oh-ih)/2:black",

                                                "-c:v", codec_v,
                                                "-preset", preset_v,
                                                *tune_param,

                                                "-b:v", "2500k",
                                                "-maxrate", "2500k",
                                                "-bufsize", "5000k",
                                                "-g", "50",
                                                "-r", "25",
                                                "-pix_fmt", "yuv420p",
                                                "-bf", "0",

                                                "-c:a", "aac",
                                                "-b:a", "128k",
                                                "-ar", "44100",
                                                "-ac", "2",
                                                "-af", "aresample=async=1:first_pts=0",

                                                "-flags", "+low_delay",
                                                "-fflags", "+genpts",
                                                "-thread_queue_size", "512",
                                                "-threads", "6",

                                                "-f", "flv",
                                                youtube_rtmp
                                            ]

                                            # ------------------------
                                            # 永不断流重连逻辑
                                            # ------------------------
                                            proc = None
                                            while True:
                                                try:
                                                    if proc and proc.poll() is None:
                                                        proc.terminate()
                                                        try:
                                                            proc.wait(timeout=8)
                                                        except:
                                                            proc.kill()

                                                    print(f"{anchor_name}_{title_in_name}_{now} → 启动 YouTube 推流...")
                                                    proc = subprocess.Popen(
                                                        ffmpeg_command,
                                                        stdin=subprocess.DEVNULL,
                                                        stdout=subprocess.PIPE,
                                                        stderr=subprocess.PIPE,
                                                        text=True
                                                    )

                                                    # 打印 FFmpeg 错误日志，便于排查
                                                    while True:
                                                        line = proc.stderr.readline()
                                                        if not line:
                                                            break
                                                        line = line.strip()
                                                        if line:
                                                            print(f"FFmpeg: {line}")
                                                        if proc.poll() is not None:
                                                            break

                                                    code = proc.returncode
                                                    if code != 0:
                                                        print(f"FFmpeg 退出（code={code}），5秒后重连...")
                                                    time.sleep(5)

                                                except Exception as e:
                                                    print(f"启动 FFmpeg 异常: {e}")
                                                    time.sleep(5)

                                    except Exception as e:
                                        print(f"外层异常: {e}")