FOURTH iteration of my X16 Movie Maker.
(this IS NOT 100% compatible with my previous video projects, though it was derived from them)
8bpp Videos created with the first version still play in the player... The NEW BIN file IS NOT compatible with PRG's generated from the first version. The older BIN file is also incompatible with the newer BASIC source code. This only applies to the PRG, The video and Audio files themselves are still valid. This IS a Work in Progress, I have no plans on changing the Video output format though, but new variations are to be added.
I have started on some basic documentation and the User Interface of the Movie Maker has been somewhat improved IMHO. I have also added support for 4bpp color & grayscale videos. These can play at a higher frame rate than 8bpp videos.
Allows conversion of existing Big Boy Computer videos (mp4, avi, mov...etc) to a format playable on the Commander X16.
X16MovieMaker binaries for Windows and Linux & QB64PE source are included.
The QB64PE source include $IF OS directive to build on Macintosh. MarktheStrange has successfully tested
a build on MACOS. QB64PE version 4.0 was used. https://www.qb64phoenix.com
Program outputs a MOVIE.SPV & MOVIE.SVA file (Video & Audio) in a few different configurations.
These files are playable with the included PLAYMOVIE.PRG (PLAYMOVIE.BAS BASLOAD source included). Upon playing a Video the PLAYMOVIE program will give you the option of outputting a standalone PRG to play the converted movie.
PLAYER REQUIRES R48 ROM
No programming skills necessary to use this.
X16MovieMaker does not hold your hand and will let you make a Movie that really will not play on the X16's hardware constraints. But I wanted the program to be more powerful at the risk of being a little less user friendly. Stay with the defaults and you should be ok. Play more if you wish.
X16 Movie maker is dependent on both ffmpeg and ImageMagick being installed.
BETA 4 Upgrades.
Many more video formats supported. Vertically compressed modes added.
BITMAP based Videos in 1bpp, 2bpp & 4bpp are now supported. Sprite based Videos are still the default option.
(See Video_Spec document)
The Maker now actually calculates optimum Max frame rate. Before it kinda guessed.
The Maker now trys to check if the Audio Sample rate entered will result in two large Audio.
Maximum is 3096 bytes of Audio per frame.
An EXPERT MODE has been added. EXPERT MODE IS NOT currently functional for BITMAP
based Videos. Expect an interim release to fix this soon.
(Cartoons often look just as good in 4bpp or better with the higher res compressed modes)
Player supports Volume control now with up & down arrow keys.
SO HERE IT IS:
(Updated Player is Now Included in the main archive)
(Very minor player patch. (eliminates brief purple screen before play of bitmap based vids))
PLAYMOVIE.PRG - Main directory.
X16VIDEOS.V4B.BI - Copy to both X16 PLAYER SOURCE & ASSETS
DEVELOPERS NOTE: I have started to develop documentation. I have a few different Video types
defined and plan for those definitions to remain. There are 256 possible TYPE's with my current header
I expect that to be plenty. If anyone wants to claim an unused TYPE slot I'm happy to incorporate it.
I need frame type and a routine to read from file and put frames on the screen, the routine should do
a CHKIN on either 4 or 6 which should already be open and at the correct position. 4 is the Audio
LFN so a CHKIN on 4 won't be necessary actually but then your file must have Audio in between the
Video frames. If using 6 your Audio file should be 8 bit single channel Audio. Audio bytes per frame
of your video should be between 1024 & 3096 bytes.
OLDER VERSIONS !!. I have removed BETA1 & BETA2 from here.
X16 Movie Maker
- ahenry3068
- Posts: 1213
- Joined: Tue Apr 04, 2023 9:57 pm
X16 Movie Maker
Last edited by ahenry3068 on Wed Mar 12, 2025 2:29 pm, edited 17 times in total.
Re: X16 Movie Maker
I got it to work.
Those interested in this stuff will know most of the steps. But just some quick reminders:
- Add ffmpeg to the PATH, like PATH=%PATH%;c:\ffmpeg\bin;
- ImageMagick installer pollutes itself into the system PATH environment automatically
- was confusing for PLAYMOVIE.BAS you have to use BASLOAD on it, not regular LOAD. It will still LOAD, but then doing a LIST remains blank despite a sizeable load address range being reported.
- 203MB MPEG ballooned into 1976xPNG frames taking 833MB.
- Those PNGs got squeezed down to 35MB SPV file. (8BPP, standard resolution, not high)
- rename the resulting audio.out to <filename>.SVA (might help if PLAYMOVIE just ignores audio if the SVA doesn't exist; in my case the video didn't have any actual audio, and so the resulting SVA was just 3MB of clicky static)
- SPACE to pause worked well.
EDIT: disregard ESC issue, I had missing DPAL.BIN on the "export to SD" step.
- ESC to exit didn't work very well. It partial reset and showed a "FILE NOT FOUND IN 136" error (so like the program was still resident, not a full reset). And the old color palette was still active after ESC.
Didn't try all the combinations of outputs, guess I used 8BPP.
Still, pretty E-Z to make an MPEG encoded down to this X16-compat video. Just a few simple questions, as advertised
Those interested in this stuff will know most of the steps. But just some quick reminders:
- Add ffmpeg to the PATH, like PATH=%PATH%;c:\ffmpeg\bin;
- ImageMagick installer pollutes itself into the system PATH environment automatically
- was confusing for PLAYMOVIE.BAS you have to use BASLOAD on it, not regular LOAD. It will still LOAD, but then doing a LIST remains blank despite a sizeable load address range being reported.
- 203MB MPEG ballooned into 1976xPNG frames taking 833MB.
- Those PNGs got squeezed down to 35MB SPV file. (8BPP, standard resolution, not high)
- rename the resulting audio.out to <filename>.SVA (might help if PLAYMOVIE just ignores audio if the SVA doesn't exist; in my case the video didn't have any actual audio, and so the resulting SVA was just 3MB of clicky static)
- SPACE to pause worked well.
EDIT: disregard ESC issue, I had missing DPAL.BIN on the "export to SD" step.
- ESC to exit didn't work very well. It partial reset and showed a "FILE NOT FOUND IN 136" error (so like the program was still resident, not a full reset). And the old color palette was still active after ESC.
Didn't try all the combinations of outputs, guess I used 8BPP.
Still, pretty E-Z to make an MPEG encoded down to this X16-compat video. Just a few simple questions, as advertised

Re: X16 Movie Maker
Wondering, if at the end of the PLAY, it can suspend at the last frame?
Then we could overlay some text, and resume the next video? (is this mode $80? one of them, hi or lo?) So then you could chop things up into several SPV files, stop a point and annotate some text on it. Or heck, even do a "choose your own adventure" kind of thing, where you make a choice and it goes to a programmed next-video file. I mean could do this yourself in the generated PRG ?
I didn't fully look at that generated PRG - does it make a text file then do BASLOAD on it?
Then we could overlay some text, and resume the next video? (is this mode $80? one of them, hi or lo?) So then you could chop things up into several SPV files, stop a point and annotate some text on it. Or heck, even do a "choose your own adventure" kind of thing, where you make a choice and it goes to a programmed next-video file. I mean could do this yourself in the generated PRG ?
I didn't fully look at that generated PRG - does it make a text file then do BASLOAD on it?
- ahenry3068
- Posts: 1213
- Joined: Tue Apr 04, 2023 9:57 pm
Re: X16 Movie Maker
Those are all good ideas and this is Work in Progress so I will take that all into consideration. You could actually do some of this right now if you go into the BASLOAD source code. (Not all of it though, the core is Machine Language, source also included, but not as easy to work with or Grok).Xiphod wrote: ↑Fri Jan 17, 2025 4:59 am Wondering, if at the end of the PLAY, it can suspend at the last frame?
Then we could overlay some text, and resume the next video? (is this mode $80? one of them, hi or lo?) So then you could chop things up into several SPV files, stop a point and annotate some text on it. Or heck, even do a "choose your own adventure" kind of thing, where you make a choice and it goes to a programmed next-video file. I mean could do this yourself in the generated PRG ?
I didn't fully look at that generated PRG - does it make a text file then do BASLOAD on it?
The generated PRG uses a TEMPLATE.BAS that's part of the packages. My code does generate a small piece of the code in an file INCLUDED from TEMPLATE.BAS (MOVIE.DEF)
I think I've got the audio.out renaming thing fixed in the latest version. I haven't tested the Windows build as extensively as the Linux build. (Just made sure it started up and ran through one conversion). I won't go into tech details but the bug had to do with "/" vs "\" in filenames.
- ahenry3068
- Posts: 1213
- Joined: Tue Apr 04, 2023 9:57 pm
UPDATE: X16 Movie Maker
Posted a much improved UPDATED version of the X16 Movie Maker.
HERE
viewtopic.php?t=8226
Added the starts of some documentation, An improved User Interface, Improved the organization of the ZIP file and added support for 4bpp color & Gray scale video conversion.
MAIN POST: viewtopic.php?t=8226
HERE
viewtopic.php?t=8226
Added the starts of some documentation, An improved User Interface, Improved the organization of the ZIP file and added support for 4bpp color & Gray scale video conversion.
MAIN POST: viewtopic.php?t=8226
- ahenry3068
- Posts: 1213
- Joined: Tue Apr 04, 2023 9:57 pm
BETA 4 UPLOAD X16 Movie Maker
Posted BETA4. Now supports Bitmap Based Videos in 1bpp, 2bpp & 4bpp color depths in addition to 8bpp & 4bpp sprite based Videos.
viewtopic.php?t=8226
viewtopic.php?t=8226