#💽Programming Chat v2

1 messages · Page 56 of 1

pastel tinsel
#

since there is still things I need to do

#

I think

#

I just need to remember what the people want

rustic vine
#

ignore the people

pastel tinsel
#

and I need to properly add group banning endpoints

rustic vine
#

become benevolent dictator for life

pastel tinsel
#

rahhh

rustic vine
#

write a haiku about guard guy

timid quartz
#

ok done and changed default password

pastel tinsel
#

col

#

o

timid quartz
#

ooh I see a root account logged in

#

would be a shame if somebody...rm -rf /'d

#

im jk

pastel tinsel
#

yeah I use root

spare quartz
#

do you guys have a bread user

timid quartz
spare quartz
#

what did it do

timid quartz
#

Uhhh

#

Disk block buffer cache read

spare quartz
#

sounds dumb

timid quartz
#

Quite useful actually

#

LRU cache of popular disk blocks to avoid having to re-fetch them

spare quartz
#

💔

timid quartz
#

Oh atp I have an idea for you

#

P2P file transfer with no port forwarding and ability to resume downloads

spare quartz
timid quartz
#

ok but that’s not really what I described though

spare quartz
timid quartz
#

Insecure and I bet most routers have it off lol

spare quartz
#

i have it on :<

lyric mesa
spare quartz
#

is the first image on the page (part of a section of HTTP)

rustic vine
#

its http but with a shield around it

#

http shield

spare quartz
#

thats just SHTTP

rustic vine
#

yea ok nerd

spare quartz
spare quartz
#

erkfkjewkfmwefs

#

im 17 today

#

this is the worst

pastel tinsel
#

games still require it

spare quartz
#

got the binary writer working

#

can still be optimized but okay so far

timid quartz
#

The military is coming for you

spare quartz
#

ill get a remote job programming and continue doing what im doing for 50 years

#

👍

#

then die by heart disease from soda overuse

spare quartz
#

there

spare quartz
#

shrunk it down from 271 bytes

#
BEG-HIBF
DEFINE LOAF        i1 16 00
DEFINE DATATYPE    i1 16 01
DEFINE MIN         i1 16 02
DEFINE MAX         i1 16 03
DEFINE WIDTH       i1 16 04
DEFINE X86         i1 16 05
DEFINE INSTRUCTION i1 16 06
DEFINE ACCEPT      i1 16 07
DEFINE OPCODE      i1 16 08
DEFINE VALUE       i1 16 09
DEFINE ENTRY       i1 16 0a
DEFINE CRUMB       i1 16 0b
DEFINE BODY        i1 16 0c
DEFINE CALL        i1 16 0d
DEFINE OVER        i1 16 0e
DEFINE IN          i1 16 0f
DEFINE WITH        i1 16 10
DEFINE AS          i1 16 11
LOAF "Example Program"
    DATATYPE "Integer8"
        MIN 0
        MAX 255
        WIDTH 8
    DATATYPE "Address"
        MIN 0
        MAX 18446744073709551615
        WIDTH 64
    DATATYPE "ASCII Visible"
        MIN 48
        MAX 91
        WIDTH 8
    X86
        INSTRUCTION "Interrupt"
        ACCEPT "Index" DATATYPE "Integer8"
        OPCODE "Integer8" VALUE 205
    ENTRY "Main Crumb" "Entry Point"
CRUMB "System Interface"
    BODY "Write To File Descriptor"
        ACCEPT "File Descriptor" DATATYPE "Integer8"
        ACCEPT "Buffer Address" DATATYPE "Address"
CRUMB "Main Crumb"
    BODY "Entry Point"
        OVER "ASCII Visible" IN "Index"
            CALL "Write To File Descriptor"
                WITH "file Descriptor" AS "Index"
#

just so i dont accidentally overwrite this again

timid quartz
spare quartz
#

Also trying to sleep what

timid quartz
#

like

#

all the

DEFINE LOAF
DEFINE CRUMB
DEFINE BODY
spare quartz
#

Human Interchangeable Binary Format (HIBF)

#

it doesn’t encode any specific language, it just gives humans (me) a way to write in a specific binary format (HIBF)

timid quartz
#

so in theory

#
DEFINE ローフ i1 16 00
#

valid

spare quartz
#

Yeah

#

Would work right since strings are encoded in UTF-8 at the top

timid quartz
#

but also hear me out

#

C preprocessor

spare quartz
#

Correct, that is when I got the inspiration for this format

timid quartz
#

fair

spare quartz
#

In the future I might add an INCLUDE as crumbs will get hard to combine fast

#

then the binary format is passed to a compiler I have yet to write

timid quartz
#

so when you publish this are you just gonna say like

#

"all of these DEFINEs are an example and you don't have to use them but you do have to define stuff for what you're gonna use"

spare quartz
#

well rn it’s just a way to write this language, in the future I just wanna have it done be through GUI

#

I’ll probably just have like

#

To write BCM code textually, create a .HIBF file with a header of BEG-HIBF and the following line:
INCLUDE BCM.HIBF

#

then, refer to the included HIBF file for language syntax

#

file format can support strings, DEFINEd values, and both ULongs and Longs

#

they’re encoded as short as possible, so if something is negative but fits in a byte, it gets (tag: 7, value: -72), or (tag: 3, value: 25)

#

and strings only exist once and are backreferenced using a string buffer

#

1.2 kb -> 248 b. like a class file

spare quartz
#

like C or Rust

#

But it’d need to be flagged to the compiler and you’d need to write using the DEFINEd values

#

DATATYPE "Integer32" BODY "MAIN"
RETURN VALUE 0

#

so n na ni …

spare quartz
#

yeah works

timid quartz
#

neato

spare quartz
#

should describe

#

DEFINE <name> <replacement type> <radix> <value>
the defining stage ends whenever it encounters a keyword that is not define, e.g.
LOAF

#

if no definition exists it will error (with an exception to strings which are replaced by backreferences, or numbers which are tagged and shortened)

#

AUGH

#

A FRRIEND ASKED ME TO TRANSLATE JAPANESE FOR THEM

#

:crosS:

#
ロングキャスター!
ro n gu (long) k(-ya) su ta- (caster) !
餌付けはいかん!
e zu ke wa [ha] i ka n !
e zu ke = artifical feeding of animals (from humans)
wa [ha] = sentence topic
i ka n ! = do not!

ホーレ
ho- re (here)
わんちゃん
wa n ch(-a) n
#

thankfully it was relatively simple

timid quartz
spare quartz
#

i couldnt sleep..

#

and the stupid bayachao song is stuck in my friend

#

the same frriend who asked me to translate spells bayachao as "baynachao"

timid quartz
#

need to install freebsd on thinkpad

spare quartz
spare quartz
timid quartz
#

why not

spare quartz
#

okay but why bsd

timid quartz
#

bsd is neat

spare quartz
#

is there any reason

#

i dont have anything against bsd but i dont have anything for it either

#

ive just known it as "unix like linux like"

timid quartz
#

well bsd, unlike linux, is a descendent of unix

spare quartz
#

i know that

timid quartz
#

and I have this thinkpad that I'm not using

#

figured bsd on a thinkpad is apt

spare quartz
#

apt? yeah ubuntu is good

timid quartz
#

👎

#

ubuntu is so bloated, could never run on this thinkpad

#

also gemini advanced free for students for a whole year

spare quartz
#

ai

#

🤢

timid quartz
#

it's useful as an advanced search engine and for summarizing and redigesting information

spare quartz
#

mkmmmewfnfj

#

what was i doign again

spare quartz
#

おまえは「ばやちゃお」ごとき鳴る
え?そう?

rustic vine
spare quartz
rustic vine
#

It's ok u got 1 more year

#

Before everyone looks at u funny

#

😁

timid quartz
#

lmfao

#

that's pretty good

proud creek
timid quartz
#

@spare quartz the irc rfc has so many typos ._.

pallid loom
timid quartz
pallid loom
#

zipline

timid quartz
#

“ShareX/file upload server”

passkeys

#

oh ig it’s not storing them

#

just using them for login

pallid loom
#

keep in mind I'm running an old ver

timid quartz
#

@spare quartz when will partial content work with your server

#

cause I could just use that to serve files

pallid loom
#

quick question

#

what do we think

#

What's the easiest way to do auto updates

timid quartz
#

uh good question

pallid loom
#

git pull & db migrate every morning at 2 am over Cron?

timid quartz
#

maybe

pallid loom
#

there would be issued if breaking changes exist but uh

#

it doesn't really matter this is a school project anyhow

#

a project I've decided to do even though I could've done something so much simpler

#

the choices were

#
  1. do only a theoretical bit on some topic - like gears or some shit, 20 pages of pdf at max
  2. some practical work, like connecting an Arduino and ultrasonic sensor, and having 10 pages of documentation pdf
  3. make a fully pledged system with frontend and backend while acquiring funding and then having to document it all and resulting in 40 pages pdf
#

guess which I chose

#

99.9% of people would chose 1 or 2 but oh well I do love torturing myself

pallid loom
proud creek
spare quartz
#

Haven’t thoroughly tested it though

timid quartz
#

why dont you upload that one bayachao video of like some kind of opera performance or whatever

#

and test

spare quartz
#

Cause that’s what it does rn

timid quartz
spare quartz
#

Let me wake up …

timid quartz
#

wakeup()

spare quartz
spare quartz
timid quartz
#

jst uh

#

do simple ones

#

like mp4

spare quartz
#

いあんあ

spare quartz
#

this should be sufficient

#

i added more

#

there

#

test

#

hmm

#

don't believe range works since a webm caused an issue... need to figure that out

timid quartz
#

works so far

#

the only suggestion I have is that

#

you send the full length

#

so the time isn't constantly updating

spare quartz
#

i am

timid quartz
#

well it uh

#

keeps updating

#

it'll be like 4 seconds, then 10, then 21

spare quartz
#

not a problem i can fix then

#

try the webm

timid quartz
spare quartz
timid quartz
#

idk what the issue is!!

#

I gave you the description of the side effect as best I could

#

webm works fine

spare quartz
#

then i cant fix it dummy

timid quartz
#

how am I, the end user, expected to know what the issue is

#

in your code

#

whatever you did for the webm worked so

spare quartz
#

in http its all about the operation

timid quartz
#

well as the end user

#

http is hidden from me even more than from you

spare quartz
#

you have a browser

timid quartz
#

so there's no way I can actually diagnose the issue

#

just google it

spare quartz
#

GOOGLE WHAT

timid quartz
#

"mp4 web server length keeps getting longer"

#

or whatever

spare quartz
timid quartz
#

wow

#

die

#

you're not even using ada

#

you're using kotlin

spare quartz
#

let me try on chrome

#

chrome does not work

timid quartz
#

wdym chrome does not work

spare quartz
#

it does not

timid quartz
#

????

#

how does it not work

spare quartz
#

it just dont

#

hold on

timid quartz
#

OK ATP

#

HOW am I supposed to figure out why your stupid web server isn't streaming stupid videos right

spare quartz
#

idk

#

ssh into my computer

timid quartz
#

I get that my description of the bug isn't very full other than "it doesn't work"

#

BUT THAT

#

IS THE MOST I CAN GIVE

#

I can't see the http requests getting sent in real time because browsers don't SHOW that

timid quartz
#

arc

#

which is chromium

#

fwiw safari just aint working at all

spare quartz
#

fix

timid quartz
#

I don't have control over the browser!!!

spare quartz
#

hold on im trying to fix it........

timid quartz
#

if you need me to send a request so you can see

#

just lmk

spare quartz
#

hold onm

#

i need to download abaychaao videeo

timid quartz
timid quartz
#

not on saf

spare quartz
#

(idk whats wrong )

timid quartz
#

idk what's wrong either

#

oh seems that safari can't play mp4

#

and maybe not webm

#

bad browser fr

#

somehow webm broke on safari

#

@spare quartz whatever you did to your server broke like all video playback lol

timid quartz
#

yes it is

spare quartz
#

i tihink you caused it..

timid quartz
#

nope

#

bad server

#

shoulda written it in rust

spare quartz
#

(i dont know whats wrong hnesly)

timid quartz
#

I don't either bruh

spare quartz
#

like in curl it works fine

#

@timid quartz okay so

#

i think its honestly just

#

a video codec issue

#

i downloaded a full video and not even the windows app wuold let me seek

timid quartz
#

in safari I think so, but chrome?

timid quartz
#

lemme see if I can find an example mp4 hosted elsewhere

#

this works fine

#

I think it's a server issue

spare quartz
#

OHH

#

its probably this

#

im sending a full 200

#

hold on gotta write my first ever question to a japanese person

timid quartz
spare quartz
#

曲名

timid quartz
#

bayachao's friend, koginokiwi-san?

#

or is that a wi

#

idk my archaic kana

spare quartz
timid quartz
#

that is a wi

#

not a wu mb

#

@orchid wadi you can observe the insanity for yourself if you like

#

mayhaps even engage in it

spare quartz
#

oh is that their cdn

timid quartz
#

yes

spare quartz
#

cdns 🤢

timid quartz
#

well

#

less of a cdn

#

more of a backblaze bucket with a url

spare quartz
#

i have the spongebob movie as an mp4

#

i would use that for testing but it'd take forever to copy tot he server

timid quartz
#

gg

#

but yeah uh

#

try a 206

#

rather than a 200?

orchid wadi
#

this is

#

deeply terrifying

#

also why is my name blood red when did that happen

timid quartz
#

lmfao

#

uhh

#

good question

timid quartz
orchid wadi
#

i need a side project to work on again

#

ive been too busy doing life bullshit

#

i want to have an excuse to open an ide

spare quartz
#

i would give my advice but my advice is destructive

orchid wadi
#

fucking EMPLOYMENT smh

timid quartz
#

stupid job...

#

well I suppose start by asking yourself what kinds of things do you like to program

spare quartz
#

no just go on iana

#

and look up protocols

timid quartz
#

atp not everyone likes implementing protocols

orchid wadi
#

LMAO

#

duality of man

spare quartz
timid quartz
#

I mean you could tho, simplest

#

I'm doing IRC right now lol

orchid wadi
#

idk the first thing anyone ever asks me is "do u like making video games??" when i describe my interests and im like "no."

#

"i like making utility software that makes peoples daily lives easier."

timid quartz
#

(in Kotlin so I can run it on the JVM on terry's Sun SPARCStation, because making a gcc cross compiler is actually painful)

orchid wadi
#

like wtf kind of hobby description is that

spare quartz
spare quartz
#

gah

spare quartz
#

try the videos

timid quartz
#

this is a big market

spare quartz
#

i dont know why it just doesnt wanna embed!!!!!!

timid quartz
#

the video aint videoing

orchid wadi
timid quartz
#

oh wait

#

it had to load

#

ok

#

mp4 works after it thinks for a second

#

webm no

orchid wadi
#

i can watch the webm

timid quartz
#

what

orchid wadi
#

in firefox if that matters

timid quartz
#

maybe

orchid wadi
#

i can scrub around it and everything

timid quartz
#

the mp4 just like

timid quartz
#

it seems like the entire mp4 has to load in

#

before it plays

pallid loom
#

Firefox mobile fetches the video 5s by 5s

#

originally shows length as 6 seconds and then increases

spare quartz
#

i tried it on chrome and it loaded the full length but it conversely dosed me with range requests

pallid loom
#

if I had to guess there's some max on response size

spare quartz
#

pain

timid quartz
#

you could try uh

#

DASH and/or HLS

spare quartz
#

what are either of those

timid quartz
#

googl

spare quartz
timid quartz
#

you might also uh

#
    <body>
        <video id="videoPlayer" width="50%" controls muted="muted" autoplay>
            <source src="/video" type="video/mp4" />
        </video>
    </body>
#

have to serve something like this?

spare quartz
#

not possible

pallid loom
spare quartz
#

hm

#

well if the webm works, but not the mp4..

pallid loom
#

are we sure the webm itself isn't fucked

spare quartz
#

wait what

#

this seeks?

pallid loom
#

everything is fucked

#

mp4 also adds to the length aswell

spare quartz
#

i think the biggest factor here is just the server speed

#

its got like 5 mb/s up

pallid loom
#

that slow?

#

okay yeah it would make sense

#

but I'm half expecting it to only play after whole vid is relieved

#

recieved

#

that's the behaviour I've seen that's most common

spare quartz
timid quartz
#

@spare quartz what does your content-length header look like

#

like how are you sending it

spare quartz
#

a number

timid quartz
#

wait not uh

#

not length

#

content-range

#

what does that look like

spare quartz
timid quartz
#

how odd

#

looks correct

#

what happens if a client sends a request with Range: bytes=...

spare quartz
timid quartz
#

huh

#

idk then

spare quartz
#

hungry

#

i need pizaz

#

and sioder

timid quartz
#

I think both of your servers just suck

spare quartz
#

fym both

timid quartz
#

Ada HTTP server (which also had same issue) and now Kotlin one

spare quartz
#

i fixed the ada one

timid quartz
#

oh? show

spare quartz
#

the kotlin one is just due to bad network speed and codec issues

timid quartz
#

spin it up

spare quartz
#

let me find the binary

timid quartz
#

ugh I don't wanna run the binary I have no place to have it

#

other than localhost

spare quartz
#

dumb

#

let me find the binary so i can run it

#

i cant tell if its working

timid quartz
#

send the link?

spare quartz
#

its just not saying anything

timid quartz
#

oh lmao

#

should it?

spare quartz
#

yes

timid quartz
#

guess ada broke

spare quartz
#

wait

#

port 7777?

#

nvm

#

it works

timid quartz
#

7777

#

reminds me of...

#

a certain game...

spare quartz
#

factoiro

timid quartz
timid quartz
spare quartz
#

how does 7777 relate

timid quartz
#

mm yeah same behavior

#

entire thing loads before playing

spare quartz
#

hold on hold on

#

try this

timid quartz
#

HERE IT COMES

#

WHAT I WAS THINKING OF

timid quartz
#

that loaded

#

really fast

spare quartz
#

my upload speed is 5x faster than the server

#

and its only 67 kb

timid quartz
#

oh that makes sense

#

only 67kb

#

im gonna try this in rust

spare quartz
#

lame

timid quartz
#

no u

#

ok.

#

I should probably expect it to be super fast

#

but

#

(since it's on localhost)

#

but

#

it works in rust

spare quartz
#

what crates are you using

timid quartz
#

actix-web and tokio

spare quartz
#

premade web server:

timid quartz
#

mm not really

#
use actix_web::{web, App, HttpServer, Responder, HttpRequest, HttpResponse, Result};
use std::fs::File;
use std::io::{BufReader, SeekFrom, Read, Seek};

async fn stream_video(req: HttpRequest) -> Result<impl Responder> {
    let file_path = "videos/sample.mp4";
    let file = File::open(file_path)?;
    let metadata = file.metadata()?;
    let total_size = metadata.len();
    
    let range_header = req.headers().get("Range").map(|h| h.to_str().ok()).flatten();
    let (start, end) = if let Some(range) = range_header {
        let parts: Vec<&str> = range.trim_start_matches("bytes=").split('-').collect();
        let start = parts[0].parse::<u64>().unwrap_or(0);
        let end = parts.get(1).and_then(|&s| s.parse::<u64>().ok()).unwrap_or(total_size - 1);
        (start, end)
    } else {
        (0, total_size - 1)
    };
    let mut reader = BufReader::new(file);
    reader.seek(SeekFrom::Start(start))?;
    let mut buffer = Vec::new();
    let length = (end - start + 1) as usize;
    reader.take(length as u64).read_to_end(&mut buffer)?;
    Ok(HttpResponse::PartialContent()
        .content_type("video/mp4")
        .append_header(("Content-Range", format!("bytes {}-{}/{}", start, end, total_size)))
        .body(buffer))
}

#[actix_web::main]
async fn main() -> std::io::Result<()> {
    HttpServer::new(|| {
        App::new()
            .route("/stream", web::get().to(stream_video))
    })
    .bind("127.0.0.1:8080")?
    .run()
    .await
}
spare quartz
#

YES REALLY

timid quartz
#

mm nope

#

still have to do parsing of content range

spare quartz
#

okay but thats small

timid quartz
#

ugh fine stupid

#

ill do it with only the standard library

spare quartz
#

core*

timid quartz
#

there are no tcp streams in core

spare quartz
#

exactly

timid quartz
#

just like there are no sockets in Ada if you don't with GNAT.Sockets; or with Ada.Sockets;

spare quartz
#

marrow

#

mrroww

timid quartz
#

and there are no sockets in Java/Kotlin unless you do something similar

#

STUPID

spare quartz
#

i shuold draw regular ばびお now

spare quartz
#

CODEV SOLVED COLLISSIONS FOR ME

#

🙏

timid quartz
#

nice

#

@spare quartz when you get the initial request for a video, what Content-Range should you send back

#

cause I'm assuming there's no range header...

spare quartz
timid quartz
#

whag

#

you just send a 206 with the whole damn thing?

spare quartz
#

no

#

i send a 200

timid quartz
spare quartz
#

?

timid quartz
#

like

#

> GET /yourstupidvideo.mp4 HTTP/1.1 {headers}
< HTTP/1.1 200 OK {headers} {the entire damn video?}
??

spare quartz
#

yes thats how it works

#

if a range isN'T specified the entire object is sent

#

this does not mean that the server will always get a chance to send it all though

#

a client could stop receiving midway through

#

you dont need to send the status name by the way

timid quartz
#

lmao gg

timid quartz
#

ugh this thing

#

is super annoying

#

@spare quartz I see your struggles now sadly

timid quartz
#

im like

#

observing how the """premade""" http server does it

#

it actually does reply with a 206 the first time

spare quartz
#

peculiar

timid quartz
#

@spare quartz here u go

spare quartz
#

yucky

timid quartz
#

this is the first request

#

so no Range header here

#

yet the server responds with a 206

#

now what is mine doing differently

spare quartz
timid quartz
#

technically it works

spare quartz
#

:X:

timid quartz
#

I literally don't see a difference in how mine is doing it

spare quartz
timid quartz
#

how I feel looking at these damn wireshark captures

#

huh weird why is the pipe breaking

timid quartz
#

@spare quartz dawg idk what you're doing but it's working as expected for me

spare quartz
#

???

timid quartz
#

yep

spare quartz
#

No I already said what was going on

timid quartz
#

I have a spongebob episode Im streaming over it

spare quartz
#

I fixed the range

#

we have poor network upload which causes delays when seeking

#

We’re fine

timid quartz
#

ok right but

#

what your server does

#

is causes my client to buffer the entire file

#

before playback

#

whereas this thing I've thrown together over the past few hours doesn't

spare quartz
#

Bad client

timid quartz
#

bad server

spare quartz
#

bad user

timid quartz
#

bad lang

spare quartz
proud creek
#

bad

timid quartz
#

seeking works too

#

which is neat

#

though my cobbled-together server also appears to send things in larger chunks

#

like smaller videos load in larger pieces compared to the """premade""" one

#

@spare quartz webm still broke on chrome for me

spare quartz
#

hold on

timid quartz
#

and mp4 has auto playing inhibited somehow?

spare quartz
#

I’m eating my cake

timid quartz
#

ill wireshark this

#

wait bugger your stupid thing is https

spare quartz
#

what are you? Australian??

timid quartz
#

maybe

#

yeah your thing is doing something odd

#

meow.mp4 took a solid 10 seconds before it gave me the ability to play

#

now let's download for myself and see

#

instant playback

#

granted it is directly over localhost

spare quartz
#

yes that grants you an automatic 1000x speed boost

timid quartz
#

lemme see if I can plop this on my server

#

ugh gotta edit like 2 firewalls thanks hetzner

spare quartz
#

ewww hoster

timid quartz
#

kys

spare quartz
#

4月21日、熱的死。

timid quartz
#

huh ok well

#

I wonder what it could be then

spare quartz
spare quartz
#

on firefox webms have a changing time

#

on chrome webms have their times loaded with seeking

#

sorry mp4*

#

but webms seek well too?

timid quartz
#

hm

#

it must be that programs that actually stream video don't use HTTP 216

spare quartz
#

you mean 206?

timid quartz
#

206 yes

spare quartz
#

hmm thats odd

#

our DNS server isnt responding on TCP

#

the TCP probably crashed... time to investigate

#

huh

timid quartz
#

java issue

#

rust would never

spare quartz
#

no

#

i dont know what happened exactly

#

nothing should be able to kill the TCP thread under normal conditions

#

whatever happened...

#

its back

timid quartz
#

ok what the heck

#

I installed this stupid zipline thing or whatever that teo uses

#

onto my server

#

video instantly plays

spare quartz
#

what is a ziplnie

timid quartz
#

stupid "cdn" software

spare quartz
#

i wonder..

#

okay

#

im slightly convinced the discord embed bot has to either use http 2 or 3

#

unfortunately the two are orders of magnitude harder to implement than 1.1

#

so i have to decide... physics or http...

timid quartz
#

ok so im reading something

#

mp4 "moov" (metadata stuff) might be at the END of the file

spare quartz
#

its not

timid quartz
#

causing mp4 to not start playing immediately

timid quartz
#

and the http traffic I'm observing is kinda consistent with that

spare quartz
#

mp4 is a container format, it can appear anywhere, but most of the files ive read have the vendor and stuff at the start (in a parent/child way)

#

though i suppose it could be possible for the video/audio data to come before some other identifier...

#

it doesnt make sense though

#

why does firefox not read the length immediately for the same file

#

but chrome does

#

its not like one loads faster than the other

timid quartz
#

ok.

#

im confused and i give up

#

your stupid

#

meow.mp4

#

also takes ages in zipline

spare quartz
#

i hate a/v

timid quartz
#

fr.

spare quartz
timid quartz
#

yknow I wonder

#

cmon ffmpeg

#

there we go

#

that's it

#

that's it

spare quartz
#

?

timid quartz
#

it's the moov atom

#

I did fucking

#

ffmpeg -i meow.mp4 -movflags faststart meow-fixed.mp4

#

on your stupid video

#

and now boom

#

instant

#

well NEAR instant

spare quartz
#

can you send the video file thru something

#

i wannat test it

timid quartz
#

the joy of having a "cdn" right now is that I can send you this

#

lmao it embeds but doesnt play

#

I wonder why

spare quartz
#

the discord embedder sucks

timid quartz
#

factual

spare quartz
#

i feel like it has something to do with the http version

#

but evertyhing else ive tried doesnt have an effect

#

let me just scp this video

lyric mesa
lyric mesa
#

like HOW just HOW does it buffer so slowly

#

it's actually unbearable. 😭

timid quartz
#

well like katsumi

timid quartz
#

or any that atp sends

spare quartz
#

@timid quartz

#

confirmed yeah

timid quartz
#

it's the fucking moov atom

#

killing myself

#

now why won't the webm play

spare quartz
#

blame apple and the UN

timid quartz
#

well it played earlier

#

something you did broke it lmao

spare quartz
#

i didnt do anything!

#

dsfpsdjkfuiewjrw34f

#

one day i will prevent the router output from corrupting

timid quartz
#

oh is it your router that's messing the webm up?

spare quartz
#

no

#

router does the following

  • reads external http request
  • figures out the port its going to
  • opens a socket to that port
  • resends the external http request thru that opened socket
  • plugs both sockets together
#

the router doesnt send anything back itself, and since it plugs both sockets together, data is unimpeded

spare quartz
#

terminals do not like control characters

#

404

timid quartz
#

ayyyy it plays

spare quartz
#

definitely a version thing

timid quartz
#

HTTP/2 HAHAHAHAHA

spare quartz
#

?

timid quartz
#

nothing

spare quartz
#

OK, nerd..

timid quartz
#

now all that's left....

#

is to migrate away from Zipline (TypeScript 🤢) to something else that's written in Rust....

spare quartz
#

kotlin*

timid quartz
#

Kotlin is an acceptable compromise if that's not possible

#

but only if

#

Though I must admit that Zipline's web interface is quite nice

spare quartz
#

i wonder what sharex does to upload files

#

wonder if its compatible with the maven line of servers

timid quartz
#

possible but zipline et al. do advertise themselves as "sharex" servers

#

idk if that means there's a specific sharex protocol, or if they're just similar to sharex

spare quartz
#

id assume all you need is to be able to PUT...

timid quartz
#

EMBED

#

BY THE POWER OF DISCORD

#

I COMMAND YOU

#

ok

spare quartz
timid quartz
#

typical TS project

#

half the packages are that

timid quartz
spare quartz
#

i dont know how to tell you this

#

webms have been working for the last ... 5 hours

#

and ive said that at least 3 times now

timid quartz
#

not on chromium

spare quartz
#

it works on chromium too

timid quartz
#

mm nope

spare quartz
#

your browser is just unqiuely broken

timid quartz
#

.......it works on edge what

spare quartz
#

and i cant help you

timid quartz
#

how does it NOT work on arc

#

that's so strange

#

NOW IT WORKS ON ARC???

#

thats it

spare quartz
#

your pc is so bad

#

probably written in ts too

timid quartz
#

you're written in ts

spare quartz
#

no

timid quartz
#

you're built like the v8 engine

spare quartz
#

wait

#

what day is it today

#

its tuesday??

timid quartz
#

fis

#

h

#

why wont it embed

spare quartz
#

wtf is that file name

#

your server is dumb and stupid

timid quartz
#

autogenerated

spare quartz
#

why

timid quartz
timid quartz
spare quartz
#

bad server

timid quartz
#

does discord not embed webms or something

spare quartz
#

9

#

8

timid quartz
#

holy hell it's 3am

#

💀

spare quartz
#

STOP BECOMING ME

timid quartz
#

ok

#

ig it just only embeds .mp4

spare quartz
#

try

#

a umm

#

ummmmm

#

.mov

timid quartz
#

idk if I have a .mov

#

nvm I do

#

.mov works too

spare quartz
#

try .exe!

timid quartz
#

virus.exe

spare quartz
#

wait wait wait okay

#

one more test

#

webp!!!!

timid quartz
#

works

spare quartz
#

okay i just wanted you to upload that

#

:3

timid quartz
#

die

spare quartz
#

WHAT

timid quartz
#

for that

#

i sentence thee

#

to rust

spare quartz
#

its just a cute character i got attached to :<<

#

blame bayachao..

lavish dove
spare quartz
lavish dove
spare quartz
spare quartz
spare quartz
#

i suck at remembering howt o write jpanese so hard

#

but HIM

#

i can nver forget him

timid quartz
#

j

#

another day reading the irc rfc and having no clue what’s going on

spare quartz
#

GOOD MORNING .

#

KEEP WORKING.

#

this is all you need

timid quartz
#

Nuh uh

#

what abou all the different kinds of requests and responses

spare quartz
#

thats a BNF

#

you use it as the syntax for everything

timid quartz
#

you built like a BNF

spare quartz
#

DIE??

#

dsflsdfmsdg

#

need to draw these two when i wajke uip

timid quartz
#

But also like, that doesn’t specify

#

The kinds of messages

#

Eg JOIN

spare quartz
#

you'll get there when you get there

#

focus on parsing the message first

#

thats all that matters

#

throw an error if you get something you're not* expecting

timid quartz
#

Gonna focus on parsing you into a Rust user

spare quartz
#

that doesnt even make sense

#

too much japanese is rotting your english ❌

timid quartz
#

It will when I do it

spare quartz
#

so rude..

timid quartz
#

ITS RAINING A

spare quartz
#

send that to me ...

timid quartz
#

You have plenty

spare quartz
#

no

spare quartz
#

its all 20%-40%

#

horrible

#

i want my 80%-100% precipitatino!!!

spare quartz
#

im like right there

#

ill probably not get anytihng

rustic vine
spare quartz
#

i think he's developing late stage autism..

rustic vine
#

Who

spare quartz
#

who

timid quartz
#

who

spare quartz
timid quartz
#

I bet he would have used Rust

spare quartz
#

NO

timid quartz
#

My Pope 🙏

rustic vine
#

Rust killed him

spare quartz
#

yeah see

#

rust is poisonous to those closest to god

#

it is a language for satan...

#

ugh so sleepy

#

i need tof uigure out how to turn off my comptuer at the right time

timid quartz
#

You don’t

#

Stay online until you pass out

spare quartz
#

BUT I ALREADY DO?

timid quartz
#

Good job :3

spare quartz
timid quartz
#

Man it’s gonna be so weird when you go off to the military

#

who is gonna talk in this chat

spare quartz
#

me!!!!!

timid quartz
#

nope

spare quartz
#

yes!!!

timid quartz
#

you’re gonna be busy doing military all day and not have time for us

spare quartz
#

okay but that doesnt mean i wont be able to access the internet...

spare quartz
timid quartz
#

You’re gonna show up on TikTok one day with “nahhh wtf my sergeant watching” with Bayachao on the screen

spare quartz
#

AND???

#

I’d be so happy

#

then more people can find bayachao

#

:3

timid quartz
spare quartz
#

she’s so cute!!! 🥺

timid quartz
#

busy serving corporate interests and not the people of the nation

spare quartz
#

ada,,,

timid quartz
#

And then you’ll be sent off to fight the land invasion of China

#

all the old schizo veterans I know are saying it’s gonna happen so it must be real

spare quartz
#

as long as they don’t nuke japan again

#

otherwise we’ll get like

#

mega schizophrenic bayachao..

#

that’s bad..

timid quartz
#

anyways don’t you go to basic this summer or smth

#

pre-enlistment or whatever

spare quartz
#

no,,,

timid quartz
#

now that you’re 17

spare quartz
#

Ugh

#

These stupid old people AI ads

#

I’m going to kill them

timid quartz
spare quartz
#

no…

timid quartz
#

lame

#

one more year left ig

spare quartz
#

you’re some,,

#

lane**

#

besides I need to lose some weight..

timid quartz
#

I’m some lane???

spare quartz
#

LANE*

#

ugh

#

lame!*

timid quartz
spare quartz
#

that’s scary..

timid quartz
#

and….stop drinking soda

spare quartz
#

no..

#

;<

timid quartz
#

then you’ll never lose weight

spare quartz
#

I will!

#

mfnhdgfag steak is so good though

#

I could eat this forever

spare quartz
#

I love google translate still so much

#

ぢDんT

timid quartz
#

Honestly, if you actually went outside and exercised and cut carbs (especially from soda) you would probably lose weight even if you continued to eat meat

spare quartz
#

Didn’t mean

#

TO INCLUDE MEDIA

#

りんさんのでびるん!!***

spare quartz
#

so like. I’ve kinda gone … months… without vegetables…

spare quartz
#

Rin-sans devilun!!! not!! whatever google translate says!

timid quartz
#

Granted he also exercises

#

So you know you need to do that too

spare quartz
#

mmmmg

#

you see I would exercise but like

#

I have a really really bad temperature regulation problem

#

and although that doesn’t stop me from doing it it makes it so freaking annoying I have to drink multiple gallons or else I sweat it all out from the most minor thing

timid quartz
#

also get ice packs

#

in between reps use them to cool off

spare quartz
#

maybe,,,

#

who was typing here that wasn’t aera btw

#

I saw you

timid quartz
#

mf tryna be the eye of sauron

spare quartz
#

IDK WHAT THAT IS

spare quartz
#

???

timid quartz
#

lord of the rings reference

#

it’s basically an all-seeing eye

spare quartz
#

is that the thing furmark or whatever used to benchmark gpus??

spare quartz
timid quartz
#

you wish

spare quartz
#

just give it blindness, a lazy eye and astigmatism

#

connie my beloved

#

ughh why can’t I sleep..

timid quartz
timid quartz
spare quartz
#

they’ll fix my eyes… I think

#

I kinda want new frames anyways

spare quartz
timid quartz
#

Have fun with the peanut butter shot too

spare quartz
#

I can deal with that

#

I’ve had so many nurses and doctors take blood and inject me with crap I don’t mind

#

just takes me a second to brace

#

some of the tricks phlebotomists* do are kinda crazy

timid quartz
#

A what

spare quartz
#

Trying to sleep!..!.!.

timid quartz
#

Then sleep

timid quartz
proud creek
#

lmaoo

timid quartz
#

bro @pallid loom how tf do you rename files in zipline

proud creek
#

what version are you on

#

i think you can change the name if you click on it

timid quartz
#

4.0.2

#

also where is @spare quartz

#

should be up by now

proud creek
timid quartz
#

ok but

#

that renames it when you download it

#

you're talking this

#

I want it renamed on the actual panel

proud creek
#

Yeah I guess

#

Idk then

#

Maybe look around

timid quartz
#

terrible

proud creek
#

I think there’s a setting to preserve the original name when you upload

timid quartz
#

there is

timid quartz
#

I think atp died

rustic vine
timid quartz
#

long ass nap

spare quartz
spare quartz
lyric mesa