Video encoder (work in progress, mac only)

Thanks for the hints! I've just made another pass other those docs, hopefully they're more accurate now!

I've dug out my 2013 MacBook so I can use the OS X video encoder, but a PC version would be super nifty.

Any further work on this? Or a parallel Windows project?

the app uses a lot of macOS framework, even under the UI, so there's not a lot that's easily portable. I was hoping someone outside of panic would have done it for us by now. :sweat_smile:

2 Likes

For anyone interested, I made a web PDV encoder: https://pdv.hteumeuleu.com (source code is on GitHub: GitHub - hteumeuleu/pdv: Playdate PDV encoder). Not as fully functional as 1bitvideo.app yet, but hopefully I'll get there and it can help people not on macOS.

7 Likes

Is it possible to create smaller-than-full-screen video? I always get 400,240 when using video:getSize(). The file size also doesn't seem to be smaller than a fullscreen video (which is weird, since you'd expect the black bars on the side to compress.

Source and resulting files:
gravity_express_test250x240.zip (1.6 MB)
Visually, I get what I want when using "scale to fit inside", but I'm after smaller filesizes, ofcourse.

I used both the 1bivideo mac app and the web encoder by @hteumeuleu. Same result, or am I missing something?

For both I used "scale to fit inside", which already indicates that this isn't what I'm looking for. I don't want any scaling for my 250x240 video.

image

(upload://z21KuU5JwCDFxrsDNUuz5Ewhj9H.zip) (455.9 KB)

Oops, looks like I never posted the update with settable video size. Here's a current build:

1bitvideo.app.zip (202.8 KB)

I have the portable command-line version of the encoder working now using ffmpeg, will get that cleaned up and the source posted as soon as I can get all the other more important stuff taken care of.

6 Likes

Thanks, works great!

Another advantage not mentioned is that the audio is converted to wav in this version, which is compatible with he sdk. Great for protyping, altough for optimization you'll probably want to convert the audio yourself, to 22khz for example

oh, good catch! I'd forgotten about that. :stuck_out_tongue:

Can it output the audio as well? I tried it but no audio.

I used this to create a the pdv and pda files but they crash the playorama app when I try to load it with them installed. The pdv created by the web version is twice as big, and has no audio but it loads and runs fine. Any ideas?

Oh no. Do you have any error you could share when Playorama crashes?

It was my newby error. The default resolution on the app (256x144) was not right for the PlayDate. I initially ran it without changing any settings. Once I figured out the resolution was wrong everything worked great.

1 Like

Thanks for posting your resolution, erm, resolution!

2 Likes

Well thank you for this! That is indeed an edge case I didn't take into account. (Especially since 1bitvideo.app didn't allow for different video sizes initially so I didn't even think about this.) I just pushed a fix to Playorama for this: Release v1.0.1 · hteumeuleu/playorama · GitHub

1 Like

woo yeah, but please add pdv to dev docs as well

1 Like

Is there any chance there could be an online conversion tool or simple command line/program for pc? I'm admittedly no coder but I would love to have all the homestarrunner episodes on my playdate but quite frankly have no clue how to work this sort of coder end stuff, I'm an art guy haha

ICYMI above @hteumeuleu made an online encoder: https://pdv.hteumeuleu.com

A while back I started converting the core to a command-line tool that platform-specific applications could put a UI around.. I hope to get back to that some day, though there's plenty of higher priority stuff on my plate right now. :confused:

2 Likes

Yeah understandable, I appreciate the response! Hope someday we get that fabled video converter program haha

Can you explain to me the difference between Stuki, Atkinson, Sierra, Sierra Lite and so on? What's the most ideal format? and what's the smallest size? I am running into two issues as well.

I am trying to convert a movie I produced to PDV, but the original size is 69mb MP4, compressed. Yet it exports as PDV at 212MB. Why is that?

Problem 2: Audio format to PVA doesn't seem to translate well to the playdate. There's alot of base in the project so I tried to minimize that but the audio comes out unreasonably static-like. What's a viable format for audio before converting to PVA?

Wikipedia has a great comparison of what each algorithm produces:
image

Sadly there is no real ideal format, you have to try and see which one fits your video better.

1 Like