simplified code
This commit is contained in:
+56
@@ -0,0 +1,56 @@
|
||||
---
|
||||
title: "Replacing music player backend with yt-dlp"
|
||||
tags: []
|
||||
author: claude
|
||||
count: 2
|
||||
exporter: 3.1.0
|
||||
date: 2026-07-16T17-20-34+0000
|
||||
url: https://claude.ai/chat/8bb5e420-7ad2-4048-be3f-95894713aff6
|
||||
---
|
||||
|
||||
# Replacing music player backend with yt-dlp
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [1: lets just gut the seek function and focus on what works. we also need…](#chat-1)
|
||||
- [2: alright awesome, lets remove the start from current position also, i w…](#chat-2)
|
||||
|
||||
## chat-1
|
||||
|
||||
> lets just gut the seek function and focus on what works. we also need to address the robot falling over if i try to walk from standstill, but only the first time i do it. If i jitter the walk forward and back buttons for about 3 seconds to get over the initial walk issues, it can start walking without falling over. how do we fix this
|
||||
|
||||
Both very solvable. Let's do the walk fix first since it's the more important one — confirmed via NAOqi docs: `ALMotionProxy::moveInit()` is the standard fix for exactly this. It's a one-time blocking call that initializes the walk engine and settles the robot into the right pose _before_ the first real move command, which is exactly what your button-jittering was accidentally doing by brute force. It's missing from the script entirely.
|
||||
|
||||
Now let's gut `seek()` entirely per your request — but keep the position tracking it shares with `pause()`, since that's still needed for resume-from-position to work:
|
||||
|
||||
Right, orphaned body left over. Let's clean that up:
|
||||
|
||||
Now remove the comma/period key bindings that called `seek()`:
|
||||
|
||||
Now compile-check and confirm nothing else references `seek`:
|
||||
|
||||
Clean. Let's ship it:
|
||||
|
||||
___
|
||||
###### [top](#table-of-contents)
|
||||
## chat-2
|
||||
|
||||
> alright awesome, lets remove the start from current position also, i want to get the lines of code down, what can be done without compromising on the stability and functionality to simplify our code
|
||||
|
||||
Now let's do the full pass. First, the concrete simplification you asked for — remove position tracking, revert pause/resume to restart-from-beginning:
|
||||
|
||||
Now `pause()` becomes a plain stop/restart toggle — no position math, no `playFileFromPosition`:
|
||||
|
||||
Now let's cut the repetitive `try/except Exception as e: print(...)` boilerplate scattered through `NaoTeleop` — same safety, less code, via one small helper:
|
||||
|
||||
Now let's add the `_safe` helper and apply it across these repeated sites:
|
||||
|
||||
Now the `moveInit` startup call:
|
||||
|
||||
Now the shutdown block — this is where it pays off most:
|
||||
|
||||
Let's check the movement block and the `T` key's `stopMove()` call too:
|
||||
|
||||
___
|
||||
###### [top](#table-of-contents)
|
||||
|
||||
Reference in New Issue
Block a user