Notice: A non well formed numeric value encountered in /sites/ on line 96 Notice: A non well formed numeric value encountered in /sites/ on line 96 Notice: A non well formed numeric value encountered in /sites/ on line 96 Deprecated: Function create_function() is deprecated in /sites/ on line 104 Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /sites/ on line 845 Deprecated: Function create_function() is deprecated in /sites/ on line 111 FS#2893 : line-in and playback mix (feature request 1371773 & 515796)



FS#2893 - line-in and playback mix (feature request 1371773 & 515796)

Attached to Project: Rockbox
Opened by Thomas Kobler (kobler) - Sunday, 08 January 2006, 10:44 GMT
Last edited by Frank Gevaerts (fg) - Saturday, 04 June 2011, 21:12 GMT
Task Type Patches
Category Drivers
Status Closed
Assigned To No-one
Operating System All players
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


Adds two new settings to the sound menu: Line-In Volume
and Decoder Volume. It allows to intermix the line in
with the dsp output (playback of decoder). The ADC gain
is read from the global settings for the recording gain.
Now with added patch.
This task depends upon

Closed by  Frank Gevaerts (fg)
Saturday, 04 June 2011, 21:12 GMT
Reason for closing:  Out of Date
Comment by Anonymous Submitter - Wednesday, 11 January 2006, 08:57 GMT

firmware won't compile after applying this patch...
Comment by Thomas Kobler (kobler) - Wednesday, 11 January 2006, 18:09 GMT

Not here! I delete all my changes, updated from CVS, applied
the patch and compiled! What error do you get?

$ cvs update -dP
? autopause.patch
? build
? myrb.PRJ
? patch_F3isShuffleModeOthersExitF2.txt
? patch_line_in.txt
? patch_shuffle_o_matic.txt
? patch_talk_short.txt
? slowpause.patch
cvs update: Updating .
cvs update: Updating apps
cvs update: Updating apps/codecs
cvs update: Updating apps/codecs/Tremor
cvs update: Updating apps/codecs/dumb
cvs update: Updating apps/codecs/dumb/docs
cvs update: Updating apps/codecs/dumb/examples
cvs update: Updating apps/codecs/dumb/include
cvs update: Updating apps/codecs/dumb/include/internal
cvs update: Updating apps/codecs/dumb/lib
cvs update: Updating apps/codecs/dumb/make
cvs update: Updating apps/codecs/dumb/obj
cvs update: Updating apps/codecs/dumb/src
cvs update: Updating apps/codecs/dumb/src/allegro
cvs update: Updating apps/codecs/dumb/src/core
cvs update: Updating apps/codecs/dumb/src/helpers
cvs update: Updating apps/codecs/dumb/src/it
cvs update: Updating apps/codecs/lib
cvs update: Updating apps/codecs/libFLAC
cvs update: Updating apps/codecs/libFLAC/include
cvs update: Updating apps/codecs/libFLAC/include/FLAC
cvs update: Updating apps/codecs/libFLAC/include/private
cvs update: Updating apps/codecs/libFLAC/include/protected
cvs update: Updating apps/codecs/liba52
cvs update: Updating apps/codecs/libalac
cvs update: Updating apps/codecs/libfaad
cvs update: Updating apps/codecs/libfaad/codebook
cvs update: Updating apps/codecs/libffmpegFLAC
cvs update: Updating apps/codecs/libm4a
cvs update: Updating apps/codecs/libmad
cvs update: Updating apps/codecs/libmusepack
cvs update: Updating apps/codecs/libwavpack
cvs update: Updating apps/gui
cvs update: Updating apps/lang
cvs update: Updating apps/neo
cvs update: Updating apps/player
cvs update: Updating apps/plugins
P apps/plugins/mp3_encoder.c
cvs update: Updating apps/plugins/databox
cvs update: Updating apps/plugins/lib
cvs update: Updating apps/plugins/midi
cvs update: Updating apps/plugins/rockboy
cvs update: Updating apps/plugins/searchengine
cvs update: Updating apps/recorder
cvs update: Updating apps/tagdb
cvs update: Updating apps/wps
cvs update: Updating apps/wps/ipodVOL
cvs update: Updating docs
cvs update: Updating firmware
cvs update: Updating firmware/common
cvs update: Updating firmware/decompressor
cvs update: Updating firmware/drivers
cvs update: Updating firmware/export
cvs update: Updating firmware/fonts
cvs update: Updating firmware/include
cvs update: Updating firmware/include/sys
cvs update: Updating firmware/malloc
cvs update: Updating firmware/test
cvs update: Updating firmware/test/alkorr
cvs update: Updating firmware/test/fat
cvs update: Updating firmware/test/i2c
cvs update: Updating firmware/test/id3
cvs update: Updating firmware/test/kernel
cvs update: Updating firmware/test/malloc
cvs update: Updating firmware/test/memory
cvs update: Updating firmware/test/snprintf
cvs update: Updating firmware/test/template
cvs update: Updating firmware/test/wavey
cvs update: Updating fonts
cvs update: Updating tools
cvs update: Updating tools/fwpatcher
cvs update: Updating tools/ucl
cvs update: Updating tools/ucl/include
cvs update: Updating tools/ucl/include/ucl
cvs update: Updating tools/ucl/src
cvs update: Updating wps
cvs update: Updating wps/DancePuffDuo
cvs update: Updating wps/boxes
cvs update: Updating wps/engineeer2
cvs update: Updating wps/iAmp
cvs update: Updating wps/ipodVOL
cvs update: Updating wps/marquee
cvs update: Updating wps/zezayer

samson@vpctok ~/ad/rockbox
$ patch -p0 < patch_line_in.txt
patching file apps/main.c
patching file apps/settings.c
patching file apps/settings.h
patching file apps/sound_menu.c
patching file apps/lang/deutsch.lang
patching file apps/lang/english.lang
patching file apps/recorder/recording.c
patching file firmware/mp3_playback.c
patching file firmware/sound.c
patching file firmware/export/mas.h
patching file firmware/export/mp3_playback.h
patching file firmware/export/sound.h

samson@vpctok ~/ad/rockbox
$ cd build/

samson@vpctok ~/ad/rockbox/build
$ make
make -C /cygdrive/d/users/samson/ad/rockbox/tools CC=gcc
rdf2binary convbdf scra
mble descramble sh2d uclpack bmp2rb codepages
make[1]: `rdf2binary' is up to date.
make[1]: `convbdf' is up to date.
make[1]: `scramble' is up to date.
make[1]: `descramble' is up to date.
make[1]: `sh2d' is up to date.
make[1]: `uclpack' is up to date.
make[1]: `bmp2rb' is up to date.
make[1]: `codepages' is up to date.
CC drivers/mas.c
CC mp3_playback.c
CC mpeg.c
CC powermgmt.c
CC sound.c
AR+RANLIB /cygdrive/d/users/samson/ad/rockbox/build/librockbox.a
CC lang.c
CC abrepeat.c
CC bookmark.c
CC debug_menu.c
CC filetypes.c
CC language.c
CC main.c
CC main_menu.c
CC menu.c
CC misc.c
CC onplay.c
CC playlist.c
CC playlist_menu.c
CC playlist_viewer.c
CC plugin.c
CC screens.c
CC settings.c
CC settings_menu.c
CC sleeptimer.c
CC sound_menu.c
CC status.c
CC talk.c
CC tree.c
CC dbtree.c
CC database.c
CC filetree.c
CC screen_access.c
CC gui/buttonbar.c
CC gui/gwps.c
CC gui/gwps-common.c
CC gui/list.c
CC gui/option_select.c
CC gui/quickscreen.c
CC gui/select.c
CC gui/statusbar.c
CC gui/textarea.c
CC gui/yesno.c
CC recorder/icons.c
CC recorder/keyboard.c
CC recorder/peakmeter.c
CC recorder/recording.c
LD rockbox.elf
OBJCOPY rockbox.bin
UCLPACK rockbox
Build firmware file
error: firmware image is 206474 bytes while max size is 204800!
Image too big, making a compressed version!
CC decompressor.c
CC uclimage.c
LD compressed.elf
OBJCOPY compressed.bin
CC configfile.c
CC highscore.c
CC gray_core.c
CC gray_draw.c
CC gray_parm.c
CC gray_scroll.c
CC xlcd.c
AR+RANLIB /cygdrive/d/users/samson/ad/rockbox/build/libplugin.a
CC battery_test.c
LD battery_test.elf
OBJCOPY battery_test.rock
CC chessclock.c
LD chessclock.elf
OBJCOPY chessclock.rock
LD credits.elf
OBJCOPY credits.rock
CC cube.c
LD cube.elf
OBJCOPY cube.rock
CC favorites.c
LD favorites.elf
OBJCOPY favorites.rock
CC firmware_flash.c
LD firmware_flash.elf
OBJCOPY firmware_flash.rock
CC logo.c
LD logo.elf
OBJCOPY logo.rock
CC mosaique.c
LD mosaique.elf
OBJCOPY mosaique.rock
CC rockbox_flash.c
LD rockbox_flash.elf
OBJCOPY rockbox_flash.rock
CC search.c
LD search.elf
OBJCOPY search.rock
CC snow.c
LD snow.elf
OBJCOPY snow.rock
CC sort.c
LD sort.elf
OBJCOPY sort.rock
CC stats.c
LD stats.elf
OBJCOPY stats.rock
CC stopwatch.c
LD stopwatch.elf
OBJCOPY stopwatch.rock
CC vbrfix.c
LD vbrfix.elf
OBJCOPY vbrfix.rock
CC viewer.c
LD viewer.elf
OBJCOPY viewer.rock
CC dict.c
LD dict.elf
OBJCOPY dict.rock
CC metronome.c
LD metronome.elf
OBJCOPY metronome.rock
CC solitaire.c
LD solitaire.elf
OBJCOPY solitaire.rock
CC fire.c
LD fire.elf
OBJCOPY fire.rock
CC plasma.c
LD plasma.elf
OBJCOPY plasma.rock
CC bejeweled.c
LD bejeweled.elf
OBJCOPY bejeweled.rock
CC bounce.c
LD bounce.elf
OBJCOPY bounce.rock
CC calculator.c
LD calculator.elf
OBJCOPY calculator.rock
CC chip8.c
LD chip8.elf
OBJCOPY chip8.rock
CC demystify.c
LD demystify.elf
OBJCOPY demystify.rock
CC flipit.c
LD flipit.elf
OBJCOPY flipit.rock
CC grayscale.c
LD grayscale.elf
OBJCOPY grayscale.rock
CC jpeg.c
LD jpeg.elf
OBJCOPY jpeg.rock
CC mandelbrot.c
LD mandelbrot.elf
OBJCOPY mandelbrot.rock
CC minesweeper.c
LD minesweeper.elf
OBJCOPY minesweeper.rock
CC oscillograph.c
LD oscillograph.elf
OBJCOPY oscillograph.rock
CC oscilloscope.c
LD oscilloscope.elf
OBJCOPY oscilloscope.rock
CC pong.c
LD pong.elf
OBJCOPY pong.rock
CC rockblox.c
LD rockblox.elf
OBJCOPY rockblox.rock
CC rockboy.c
LD rockboy.elf
OBJCOPY rockboy.rock
CC sliding_puzzle.c
LD sliding_puzzle.elf
OBJCOPY sliding_puzzle.rock
CC snake.c
LD snake.elf
OBJCOPY snake.rock
CC snake2.c
LD snake2.elf
OBJCOPY snake2.rock
CC sokoban.c
LD sokoban.elf
OBJCOPY sokoban.rock
CC star.c
LD star.elf
OBJCOPY star.rock
CC starfield.c
LD starfield.elf
OBJCOPY starfield.rock
CC sudoku.c
LD sudoku.elf
OBJCOPY sudoku.rock
CC video.c
LD video.elf
OBJCOPY video.rock
CC vu_meter.c
LD vu_meter.elf
OBJCOPY vu_meter.rock
CC calendar.c
LD calendar.elf
OBJCOPY calendar.rock
CC clock.c
LD clock.elf
OBJCOPY clock.rock
CC wormlet.c
LD wormlet.elf
OBJCOPY wormlet.rock
CC alpine_cdc.c
LD alpine_cdc.elf
OBJCOPY alpine_cdc.rock
CC splitedit.c
LD splitedit.elf
OBJCOPY splitedit.rock
MAKE in searchengine
CC searchengine.c
CC parser.c
CC token.c
CC dbinterface.c
LD searchengine.elf
OBJCOPY searchengine.rock
MAKE in databox
CC databox.c
CC editparser.c
CC edittoken.c
LD databox.elf
OBJCOPY databox.rock
MAKE in rockboy
CC cpu.c
CC emu.c
CC events.c
CC exports.c
CC fastmem.c
CC hw.c
CC lcd.c
CC lcdc.c
CC loader.c
CC main.c
CC mem.c
CC rbsound.c
CC rccmds.c
CC rcvars.c
CC rtc.c
CC save.c
CC sound.c
CC split.c
CC sys_rockbox.c
CC rockboy.c
CC menu.c
LD rockboy.elf
OBJCOPY rockboy.ovl
LD rombox.elf
OBJCOPY rombox.bin
UCLPACK rombox
build 060111-1854 done
#cp ajbrec.ajz /cygdrive/d/archos
#cp ajbrec.ajz /cygdrive/d/archos/.rockbox
#cp rockbox.ucl /cygdrive/d/archos/.rockbox
#@#cp rombox.ucl /cygdrive/d/archos/.rockbox
#@sleep 2
#@DevEject -EjectId:USB\\VID_05AB\&PID_0060\\WWWW.ARCHOS.COMA
Comment by Anonymous Submitter - Monday, 16 January 2006, 19:46 GMT

It does not work on the iRiver h120. Is it possible to make
it work? That would be very nice!
Comment by Thomas Kobler (kobler) - Tuesday, 17 January 2006, 17:53 GMT

Although it seem's possible

The FSDAC has a mixer input, which makes it possible to
mix an analog signal to the output signal of the FSDAC

I've got no motivation to implement something, than I can
not even test. This might be differet, when the patch would
be of interest to a lot of people and incorporated into
Rockbox. But I guess, that if you anonymous are able to
apply a patch and compile it, you are probably also able to
find the few registers to write to and make it work for the
h120. If you've got any questions, just ask.