VOGONS


First post, by guncrazy

User metadata
Rank Newbie
Rank
Newbie

I have an MT-32 hooked up to my PC so I don't need MUNT. However when I capture video only the soundblaster audio is recorded the MT-32 is not. How do I fix this problem? I am currently using Taewoong's patched dosbox. Below are my config settings:

# This is the configuration file for DOSBox SVN-Daum. (Please use the latest version of DOSBox)
# Lines starting with a # are comment lines and are ignored by DOSBox.
# They are used to (briefly) document the effect of each option.

[sdl]
# fullscreen: Start dosbox directly in fullscreen. (Press ALT-Enter to go back)
# fulldouble: Use double buffering in fullscreen. It can reduce screen flickering, but it can also result in a slow DOSBox.
# fullresolution: What resolution to use for fullscreen: original or fixed size (e.g. 1024x768).
# Using your monitor's native resolution with aspect=true might give the best results.
# If you end up with small window on a large screen, try an output different from surface.
# windowresolution: Scale the window to this size IF the output device supports hardware scaling.
# (output=surface does not!)
# output: What video system to use for output.
# Possible values: surface, overlay, opengl, openglnb, openglhq, ddraw, direct3d.
# autolock: Mouse will automatically lock, if you click on the screen. (Press CTRL-F10 to unlock)
# sensitivity: Mouse sensitivity.
# waitonerror: Wait before closing the console if dosbox has an error.
# priority: Priority levels for dosbox. Second entry behind the comma is for when dosbox is not focused/minimized.
# pause is only valid for the second entry.
# Possible values: lowest, lower, normal, higher, highest, pause.
# mapperfile: File used to load/save the key/event mappings from. Resetmapper only works with the defaul value.
# pixelshader: Pixelshader program (effect file must be in Shaders subdirectory).
# usescancodes: Avoid usage of symkeys, might not work on all operating systems.
# overscan: Width of overscan border (0 to 10). (works only if output=surface)

fullscreen=false
fulldouble=false
fullresolution=640x480
windowresolution=640x480
output=ddraw
autolock=true
sensitivity=100
waitonerror=true
priority=higher,normal
mapperfile=mapper-SVN-Daum.map
pixelshader=none
usescancodes=false
overscan=0

[dosbox]
# language: Select another language file.
# machine: The type of machine DOSBox tries to emulate.
# Possible values: hercules, cga, cga_mono, tandy, pcjr, ega, vgaonly, svga_s3, svga_et3000, svga_et4000, svga_paradise, vesa_nolfb, vesa_oldvbe, amstrad.
# vmemsize: Amount of video memory in megabytes.
# The maximum resolution and color depth the svga_s3 will be able to display
# is determined by this value.
# 0: 512k (800x600 at 256 colors)
# 1: 1024x768 at 256 colors or 800x600 at 64k colors
# 2: 1600x1200 at 256 colors or 1024x768 at 64k colors or 640x480 at 16M colors
# 4: 1600x1200 at 64k colors or 1024x768 at 16M colors
# 8: up to 1600x1200 at 16M colors
# For build engine games, use more memory than in the list above so it can
# use triple buffering and thus won't flicker.
#
# captures: Directory where things like wave, midi, screenshot get captured.
# memsize: Amount of memory DOSBox has in megabytes.
# This value is best left at its default to avoid problems with some games,
# though few games might require a higher value.
# There is generally no speed advantage when raising this value.
# memsizekb: Amount of memory DOSBox has in kilobytes.
# This value should normally be set to 0.
# If nonzero, overrides the memsize parameter.
# Finer grained control of total memory may be useful in
# emulating ancient DOS machines with less than 640KB of
# RAM or early 386 systems with odd extended memory sizes.
#
# memalias: Memory aliasing emulation, in number of valid address bits.
# . Many 386/486 class motherboards and processors prior to 1995
# suffered from memory aliasing for various technical reasons. If the software you are
# trying to run assumes aliasing, or otherwise plays cheap tricks with paging,
# enabling this option can help. Note that enabling this option can cause slight performance degredation. Set to 0 to disable.
# Recommended values when enabled:
# 24: 16MB aliasing. Common on 386SX systems (CPU had 24 external address bits)
# or 386DX and 486 systems where the CPU communicated directly with the ISA bus (A24-A31 tied off)
# 26: 64MB aliasing. Some 486s had only 26 external address bits, some motherboards tied off A26-A31
#

language=
machine=svga_s3
vmemsize=2
captures=capture
memsize=16
memsizekb=0
memalias=0

[render]
# frameskip: How many frames DOSBox skips before drawing one.
# aspect: Do aspect correction, if your output method doesn't support scaling this can slow things down!.
# linewise: Draw the display line by line. Needed for certain special graphics effects in games and demos. Can be changed at runtime but will be put in effect at the next mode switch.
# char9: Allow 9-pixel wide text mode fonts.
# multiscan: Set this value to true to allow zooming gfx effects used in demos. It will disable several options such as scalers though.
# scaler: Scaler used to enlarge/enhance low resolution modes. If 'forced' is appended,
# then the scaler will be used even if the result might not be desired.
# Possible values: none, normal2x, normal3x, advmame2x, advmame3x, advinterp2x, advinterp3x, hq2x, hq3x, 2xsai, super2xsai, supereagle, tv2x, tv3x, rgb2x, rgb3x, scan2x, scan3x, hardware2x, hardware3x, xbrz.
# autofit: Best fits image to window
# - Intended for output=direct3d, fullresolution=original, aspect=true

frameskip=0
aspect=true
linewise=false
char9=false
multiscan=false
scaler=none
autofit=false

[vsync]
# vsyncmode: Synchronize vsync timing to the host display. Requires calibration within dosbox.
# Possible values: off, on, force, host.
# vsyncrate: Vsync rate used if vsync is enabled. Ignored if vsyncmode is set to host (win32).
# Possible values:.

vsyncmode=off
vsyncrate=75

[cpu]
# core: CPU Core used in emulation. auto will switch to dynamic if available and
# appropriate.
# Possible values: auto, dynamic, normal, full, simple.
# cputype: CPU Type used in emulation. auto emulates a 486 which tolerates Pentium instructions.
# Possible values: auto, 386, 486, pentium, 386_prefetch, pentium_mmx.
# cycles: Amount of instructions DOSBox tries to emulate each millisecond.
# Setting this value too high results in sound dropouts and lags.
# Cycles can be set in 3 ways:
# 'auto' tries to guess what a game needs.
# It usually works, but can fail for certain games.
# 'fixed #number' will set a fixed amount of cycles. This is what you usually
# need if 'auto' fails (Example: fixed 4000).
# 'max' will allocate as much cycles as your computer is able to
# handle.
# Possible values: auto, fixed, max.
# forcerate: Force the VGA framerate to a specific value, no matter what
# cycleup: Amount of cycles to decrease/increase with keycombos.(CTRL-F11/CTRL-F12)
# cycledown: Setting it lower than 100 will be a percentage.
# cgasnow: When machine=cga, determines whether or not to emulate CGA snow
# isapnpbios: Emulate ISA Plug & Play BIOS. Enable if using DOSBox to run a PnP aware DOS program or if booting Windows 9x.
# Do not disable if Windows 9x is configured around PnP devices, you will likely confuse it.

core=auto
cputype=auto
cycles=auto
forcerate=
cycleup=10
cycledown=20
cgasnow=true
isapnpbios=true

[keyboard]
# aux: Enable emulation of the 8042 auxiliary port. PS/2 mouse emulation requires this to be enabled
# auxdevice: Type of PS/2 mouse attached to the AUX port
# Possible values: none, 2button, 3button, intellimouse, intellimouse45.

aux=false
auxdevice=intellimouse

[pci]
# voodoo: Enable VOODOO support.
# Possible values: false, software, opengl, auto.

voodoo=auto

[mixer]
# nosound: Enable silent mode, sound is still emulated though.
# swapstereo: Swaps the left and right stereo channels.
# rate: Mixer sample rate, setting any device's rate higher than this will probably lower their sound quality.
# Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
# blocksize: Mixer block size, larger blocks might help sound stuttering but sound will also be more lagged.
# Possible values: 1024, 2048, 4096, 8192, 512, 256.
# prebuffer: How many milliseconds of data to keep on top of the blocksize.

nosound=false
swapstereo=false
rate=44100
blocksize=1024
prebuffer=20

[midi]
# mpu401: Type of MPU-401 to emulate.
# Possible values: intelligent, uart, none.
# mididevice: Device that will receive the MIDI data from MPU-401.
# Possible values: default, win32, alsa, oss, coreaudio, coremidi, mt32, synth, timidity, none.
# midiconfig: Special configuration options for the device driver. This is usually the id of the device you want to use.
# or in the case of coreaudio, you can specify a soundfont here.
# When using a Roland MT-32 rev. 0 as midi output device, some games may require a delay in order to prevent 'buffer overflow' issues.
# In that case, add 'delaysysex', for example: midiconfig=2 delaysysex
# See the README/Manual for more details.
# mt32.reverse.stereo: Reverse stereo channels for MT-32 output
# Possible values: off, on.
# mt32.verbose: MT-32 debug logging
# Possible values: off, on.
# mt32.thread: MT-32 rendering in separate thread
# Possible values: off, on.
# mt32.dac: MT-32 DAC input emulation mode
# Nice = 0 - default
# Produces samples at double the volume, without tricks.
# Higher quality than the real devices
#
# Pure = 1
# Produces samples that exactly match the bits output from the emulated LA32.
# Nicer overdrive characteristics than the DAC hacks (it simply clips samples within range)
# Much less likely to overdrive than any other mode.
# Half the volume of any of the other modes, meaning its volume relative to the reverb
# output when mixed together directly will sound wrong. So, reverb level must be lowered.
# Perfect for developers while debugging 😀
#
# GENERATION1 = 2
# Re-orders the LA32 output bits as in early generation MT-32s (according to Wikipedia).
# Bit order at DAC (where each number represents the original LA32 output bit number, and XX means the bit is always low):
# 15 13 12 11 10 09 08 07 06 05 04 03 02 01 00 XX
#
# GENERATION2 = 3
# Re-orders the LA32 output bits as in later geneerations (personally confirmed on my CM-32L - KG).
# Bit order at DAC (where each number represents the original LA32 output bit number):
# 15 13 12 11 10 09 08 07 06 05 04 03 02 01 00 14
#
# Possible values: 0, 1, 2, 3, auto.
# mt32.reverb.mode: MT-32 reverb mode
# Possible values: 0, 1, 2, 3, auto.
# mt32.reverb.time: MT-32 reverb decaying time
# Possible values: 0, 1, 2, 3, 4, 5, 6, 7.
# mt32.reverb.level: MT-32 reverb level
# Possible values: 0, 1, 2, 3, 4, 5, 6, 7.
# mt32.partials: MT-32 max partials allowed (0-256)

mpu401=intelligent
mididevice=default
midiconfig=3
mt32.reverse.stereo=off
mt32.verbose=off
mt32.thread=off
mt32.dac=auto
mt32.reverb.mode=auto
mt32.reverb.time=5
mt32.reverb.level=3
mt32.partials=32

[sblaster]
# sbtype: Type of Soundblaster to emulate. gb is Gameblaster.
# Possible values: sb1, sb2, sbpro1, sbpro2, sb16, sb16vibra, gb, none.
# sbbase: The IO address of the soundblaster.
# Possible values: 220, 240, 260, 280, 2a0, 2c0, 2e0, 300.
# irq: The IRQ number of the soundblaster.
# Possible values: 7, 5, 3, 9, 10, 11, 12.
# dma: The DMA number of the soundblaster.
# Possible values: 1, 5, 0, 3, 6, 7.
# hdma: The High DMA number of the soundblaster.
# Possible values: 1, 5, 0, 3, 6, 7.
# sbmixer: Allow the soundblaster mixer to modify the DOSBox mixer.
# oplmode: Type of OPL emulation. On 'auto' the mode is determined by sblaster type.
# All OPL modes are Adlib-compatible, except for 'cms'. sbtype=none
# together with oplmode=cms will emulate a Gameblaster.
# Possible values: auto, cms, opl2, dualopl2, opl3, none, hardware, hardwaregb.
# oplemu: Provider for the OPL emulation. compat might provide better quality (see oplrate as well).
# Possible values: default, compat, fast.
# oplrate: Sample rate of OPL music emulation. Use 49716 for highest quality (set the mixer rate accordingly).
# Possible values: 44100, 49716, 48000, 32000, 22050, 16000, 11025, 8000.
# hardwarebase: base address of the real hardware soundblaster:
# 210,220,230,240,250,260,280
# goldplay: Enable goldplay emulation.

sbtype=sb16
sbbase=220
irq=7
dma=1
hdma=5
sbmixer=true
oplmode=auto
oplemu=default
oplrate=44100
hardwarebase=220
goldplay=false

[gus]
# gus: Enable the Gravis Ultrasound emulation.
# gusrate: Sample rate of Ultrasound emulation.
# Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
# gusbase: The IO base address of the Gravis Ultrasound.
# Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
# gusirq: The IRQ number of the Gravis Ultrasound.
# Possible values: 5, 3, 7, 9, 10, 11, 12.
# gusdma: The DMA channel of the Gravis Ultrasound.
# Possible values: 3, 0, 1, 5, 6, 7.
# ultradir: Path to Ultrasound directory. In this directory
# there should be a MIDI directory that contains
# the patch files for GUS playback. Patch sets used
# with Timidity should work fine.

gus=false
gusrate=44100
gusbase=240
gusirq=5
gusdma=3
ultradir=C:\ULTRASND

[innova]
# innova: Enable the Innovation SSI-2001 emulation.
# samplerate: Sample rate of Innovation SSI-2001 emulation
# Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
# sidbase: SID base port (typically 280h).
# Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
# quality: Set SID emulation quality level (0 to 3).
# Possible values: 0, 1, 2, 3.

innova=false
samplerate=22050
sidbase=280
quality=0

[speaker]
# pcspeaker: Enable PC-Speaker emulation.
# pcrate: Sample rate of the PC-Speaker sound generation.
# Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
# tandy: Enable Tandy Sound System emulation. For 'auto', emulation is present only if machine is set to 'tandy'.
# Possible values: auto, on, off.
# tandyrate: Sample rate of the Tandy 3-Voice generation.
# Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
# disney: Enable Disney Sound Source emulation. (Covox Voice Master and Speech Thing compatible).
# ps1audio: Enable PS1 audio emulation.
# Possible values: on, off.
# ps1audiorate: Sample rate of the PS1 audio emulation.
# Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.

pcspeaker=true
pcrate=44100
tandy=auto
tandyrate=44100
disney=false
ps1audio=off
ps1audiorate=22050

[joystick]
# joysticktype: Type of joystick to emulate: auto (default), none,
# 2axis (supports two joysticks),
# 4axis (supports one joystick, first joystick used),
# 4axis_2 (supports one joystick, second joystick used),
# fcs (Thrustmaster), ch (CH Flightstick).
# none disables joystick emulation.
# auto chooses emulation depending on real joystick(s).
# (Remember to reset dosbox's mapperfile if you saved it earlier)
# Possible values: auto, 2axis, 4axis, 4axis_2, fcs, ch, none.
# timed: enable timed intervals for axis. Experiment with this option, if your joystick drifts (away).
# autofire: continuously fires as long as you keep the button pressed.
# swap34: swap the 3rd and the 4th axis. can be useful for certain joysticks.
# buttonwrap: enable button wrapping at the number of emulated buttons.

joysticktype=auto
timed=true
autofire=false
swap34=false
buttonwrap=false

[serial]
# serial1: set type of device connected to com port.
# Can be disabled, dummy, modem, nullmodem, directserial.
# Additional parameters must be in the same line in the form of
# parameter:value. Parameter for all types is irq (optional).
# for directserial: realport (required), rxdelay (optional).
# (realport:COM1 realport:ttyS0).
# for modem: listenport (optional).
# for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
# transparent, port, inhsocket (all optional).
# Example: serial1=modem listenport:5000
# Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
# serial2: see serial1
# Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
# serial3: see serial1
# Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
# serial4: see serial1
# Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.

serial1=dummy
serial2=dummy
serial3=disabled
serial4=disabled

[printer]
# printer: Enable printer emulation.
# dpi: Resolution of printer (default 360).
# width: Width of paper in 1/10 inch (default 85 = 8.5'').
# height: Height of paper in 1/10 inch (default 110 = 11.0'').
# printoutput: Output method for finished pages:
# png : Creates PNG images (default)
# ps : Creates Postscript
# bmp : Creates BMP images (very huge files, not recommend)
# printer : Send to an actual printer (Print dialog will appear)
# multipage: Adds all pages to one Postscript file or printer job until CTRL-F2 is pressed.
# docpath: The path where the output files are stored.
# timeout: (in milliseconds) if nonzero: the time the page will
# be ejected automatically after when no more data
# arrives at the printer.

printer=true
dpi=360
width=85
height=110
printoutput=png
multipage=false
docpath=.
timeout=0

[parallel]
# parallel1: parallel1-3 -- set type of device connected to lpt port.
# Can be:
# reallpt (direct parallel port passthrough),
# file (records data to a file or passes it to a device),
# printer (virtual dot-matrix printer, see [printer] section)
# Additional parameters must be in the same line in the form of
# parameter:value.
# for reallpt:
# Windows:
# realbase (the base address of your real parallel port).
# Default: 378
# ecpbase (base address of the ECP registers, optional).
# Linux: realport (the parallel port device i.e. /dev/parport0).
# for file:
# dev:<devname> (i.e. dev:lpt1) to forward data to a device,
# or append:<file> appends data to the specified file.
# Without the above parameters data is written to files in the capture dir.
# Additional parameters: timeout:<milliseconds> = how long to wait before
# closing the file on inactivity (default:500), addFF to add a formfeed when
# closing, addLF to add a linefeed if the app doesn't, cp:<codepage number>
# to perform codepage translation, i.e. cp:437
# for printer:
# printer still has it's own configuration section above.
# parallel2: see parallel1
# parallel3: see parallel1
# dongle: Enable dongle

parallel1=disabled
parallel2=disabled
parallel3=disabled
dongle=false

[glide]
# glide: Enable glide emulation: true,false,emu.
# grport: I/O port to use for host communication.
# lfb: LFB access: full,read,write,none.
# splash: 3dfx splash

glide=true
grport=600
lfb=full
splash=true

[dos]
# xms: Enable XMS support.
# ems: Enable EMS support. The default (=true) provides the best
# compatibility but certain applications may run better with
# other choices, or require EMS support to be disabled (=false)
# to work at all.
# Possible values: true, emsboard, emm386, false.
# umb: Enable UMB support.
# automount: Enable automatic mount.
# int33: Enable INT 33H (mouse) support.
# biosps2: Emulate BIOS INT 15h PS/2 mouse services
# Note that some OS's like Microsoft Windows neither use INT 33h nor
# probe the AUX port directly and depend on this BIOS interface exclusively
# for PS/2 mouse support. In other cases there is no harm in leaving this enabled
# keyboardlayout: Language code of the keyboard layout (or none).
# files: Number of file handles available to DOS programs. (equivalent to "files=" in config.sys)

xms=true
ems=true
umb=true
automount=true
int33=true
biosps2=true
keyboardlayout=auto
files=127

[ipx]
# ipx: Enable ipx over UDP/IP emulation.

ipx=false

[ne2000]
# ne2000: Enable Ethernet passthrough. Requires [Win]Pcap.
# nicbase: The base address of the NE2000 board.
# nicirq: The interrupt it uses. Note serial2 uses IRQ3 as default.
# macaddr: The physical address the emulator will use on your network.
# If you have multiple DOSBoxes running on your network,
# this has to be changed for each. AC:DE:48 is an address range reserved for
# private use, so modify the last three number blocks.
# I.e. AC:DE:48:88:99:AB.
# realnic: Specifies which of your network interfaces is used.
# Write 'list' here to see the list of devices in the
# Status Window. Then make your choice and put either the
# interface number (2 or something) or a part of your adapters
# name, e.g. VIA here.

ne2000=true
nicbase=300
nicirq=3
macaddr=AC:DE:48:88:99:AA
realnic=list

[ide, primary]
# enable: Enable IDE interface

enable=true

[ide, secondary]
# enable: Enable IDE interface

enable=true

[ide, tertiary]
# enable: Enable IDE interface

enable=true

[ide, quaternary]
# enable: Enable IDE interface

enable=true

[autoexec]
# Lines in this section will be run at startup.
# You can put your MOUNT lines here.

Reply 6 of 34, by sergm

User metadata
Rank Oldbie
Rank
Oldbie

If the goal is to record the real hardware output, you do this your way as if you would record audio from an external line input. Indeed, you have to deal with syncronisation etc. and mix it in to the video later.

Reply 8 of 34, by guncrazy

User metadata
Rank Newbie
Rank
Newbie
sergm wrote:

If the goal is to record the real hardware output, you do this your way as if you would record audio from an external line input. Indeed, you have to deal with syncronisation etc. and mix it in to the video later.

Thats what I thought, I can record the raw MIDI in a separate file, then I guess its up to me to edit in the video and keep it synced. The price to pay for authenticity 🤣.

Reply 11 of 34, by sergm

User metadata
Rank Oldbie
Rank
Oldbie

Er, it depends on how much you want it to be authentic. The cheapest solution I see:
- have connected MT-32 to the line input of the sound card
- enable line input as a playback source, so you can hear MT-32 output from the sound card's output
- start audio capture app (e.g. audacity) and ensure you can make recording from the mixed audio source
- do recording by capturing video in DOSBox and audio in the audio capturing app
- mix up video and audio paying attention to the actual time length (audacity can help with syncing as well)

If the mixed output is unavailable for recording, the best way would be to use an external mixer.

Reply 13 of 34, by clueless1

User metadata
Rank l33t
Rank
l33t

How does PhilsComputerLab do it? It seems like Phil outlined this in one of his videos. You might want to have a look at his channel/website.

The more I learn, the more I realize how much I don't know.
OPL3 FM vs. Roland MT-32 vs. General MIDI DOS Game Comparison
Let's benchmark our systems with cache disabled
DOS PCI Graphics Card Benchmarks

Reply 14 of 34, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

Someone needs to make a DOS sync binary which outputs a midi test tone and shows a queue light on screen at the same time.

Alternately, just play the opening for a Sierra title.

All hail the Great Capacitor Brand Finder

Reply 15 of 34, by sergm

User metadata
Rank Oldbie
Rank
Oldbie

Sounds too complicated. I don't know, maybe it's OK for those who looking for challenges 😀

As for my personal taste (I'm quite a lazy, programmers typically are as you know), a thing like bandicam is all we need for such a task. The only sad fact I didn't happen to find a good free soft to do that 🙁

Reply 16 of 34, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

We essentially need the DOSBox/midi equivalent of the Hollywood clapper board. WIth that, A/V sync is pretty simple.

All hail the Great Capacitor Brand Finder

Reply 17 of 34, by PhilsComputerLab

User metadata
Rank l33t++
Rank
l33t++

I tried doing this many years ago, and the issues I encountered cemented my move to using real hardware 😀

What I was seeing is that DOSBox records video in an odd way. Basically when you record video with DOSBox and audio externally, they two will run out of sync. Screen transitions especially would cause this.

Using screen capture programs made DOSBox come to a crawl.

So I gave up and my very first DOS videos used S-Video capture 😀

The other option, not available to me at the time, is using external screen capture hardware like from AVerMedia or Elgato.

Or just stick with Sound Blaster FM sound which DOSBox captures along the video.

YouTube, Facebook, Website

Reply 18 of 34, by sergm

User metadata
Rank Oldbie
Rank
Oldbie

PhilsComputerLab, do you think we would achieve good enough results if DOSBox was able to record both video and _external_ audio simultaneously? It seems such feature isn't straightforward to add with the old SDL that DOSBox still relies on. Although, an ugly patch is possible I think.

Reply 19 of 34, by PhilsComputerLab

User metadata
Rank l33t++
Rank
l33t++
sergm wrote:

PhilsComputerLab, do you think we would achieve good enough results if DOSBox was able to record both video and _external_ audio simultaneously? It seems such feature isn't straightforward to add with the old SDL that DOSBox still relies on. Although, an ugly patch is possible I think.

I don't know enough about DOSBox to answer that question.

Rather than waiting for someone to implement all of this, I would just buy an external capture card, mix the MT-32 through the line-in and turn on "listen to this device". That's what I would do 😀

YouTube, Facebook, Website