Line-in/Digital-in not emitting sound in Linux (ALSA/Pulse)

August 23, 2015

I had issues getting my sound card (SB X-Fi Titanium) Line-In and Digital-In working, both input sources did not play sound whether directly recording from them or piping input to the output devices. After tinkering with it for a while, then exhausting my google-foo, things still weren’t working, I then attempted to meddle with loopback devices and pulse-audio, and more with ALSA configs all to an dead end. But sometimes, maybe half the time, there is an easy and elegant solution to a “problem” on Linux, and this was one of those cases: mixer control contents… but let’s get there incrementally.

Are the audio capture devices working?

List capture devices:

1
2
3
4
5
6
arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: XFi [Creative X-Fi], device 0: ctxfi [Front/WaveIn]
 Subdevices: 1/1
 Subdevice #0: subdevice 
...</div>

As show above, my primary capture device is on card 0, device 0. On most systems, considering your Line-In (and related devices) are un-muted, this should work to capture audio:

1
arecord -f CD -D hw:0,0 test.wav

To play that file back, use aplay or mplayer:

1
2
aplay test.wav
Playing WAVE '/tmp/test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono

Changing amixer controls:

It’s important to note that amixer and alsamixer are two separate utilities. If you get no sound, first and foremost, check your mute level.  Easiest way to do so is with alsamixer. Next, check your ALSA mixer controls related to your sound card, where -c # is your card number. To get a summary:

1
2
3
4
5
6
7
8
9
10
11
amixer -c0  scontrols
Simple mixer control 'Master',0
Simple mixer control 'PCM',0
Simple mixer control 'Front',0
Simple mixer control 'Surround',0
Simple mixer control 'Center/LFE',0
Simple mixer control 'Side',0
Simple mixer control 'Line',0
Simple mixer control 'Mic',0
Simple mixer control 'IEC958',0
Simple mixer control 'Digital',0

In the list above Line 0, Mic 0, and IEC958 are my analog and digital capture devices respectfully. It’s possible to check what capabilities those controls have:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
amixer -c0  scontents
...
Simple mixer control 'Line',0
 Capabilities: pvolume cvolume cswitch cswitch-joined
 Playback channels: Front Left - Front Right
 Capture channels: Front Left - Front Right
 Limits: Playback 0 - 256 Capture 0 - 256
 Front Left: Playback 254 [99%] [-0.50dB] Capture 256 [100%] [0.00dB] [off]
 Front Right: Playback 254 [99%] [-0.50dB] Capture 256 [100%] [0.00dB] [off]
Simple mixer control 'Mic',0
 Capabilities: pvolume cvolume cswitch cswitch-joined
 Playback channels: Front Left - Front Right
 Capture channels: Front Left - Front Right
 Limits: Playback 0 - 256 Capture 0 - 256
 Front Left: Playback 252 [98%] [-1.00dB] Capture 256 [100%] [0.00dB] [off]
 Front Right: Playback 252 [98%] [-1.00dB] Capture 256 [100%] [0.00dB] [off]
Simple mixer control 'IEC958',0
 Capabilities: pvolume cvolume cswitch cswitch-joined
 Playback channels: Front Left - Front Right
 Capture channels: Front Left - Front Right
 Limits: Playback 0 - 256 Capture 0 - 256
 Front Left: Playback 256 [100%] [0.00dB] Capture 256 [100%] [0.00dB] [off]
 Front Right: Playback 256 [100%] [0.00dB] Capture 256 [100%] [0.00dB] [off]
...

There should be quite a bit of output there, I truncated the above contents to what’s relevant. With that info the problem becomes quite obvious: mixer controls have channel capturing flagged as off, as indicated by the last word [off]. Flagging these back to “on” is simple:

1
2
3
amixer -c0 sset Line,0 cap
amixer -c0 sset Mic,0 cap
amixer -c0 sset IEC958,0 cap

A worthy note from the amixer manual pages:

The parameters cap, nocap, mute, unmute, toggle are used to change capture (recording) and muting for the group specified.

The optional modifiers can be put as extra parameters to specify the stream direction or channels to apply. The modifiers playback and capture specify the stream, and the modifiers front, rear, center, woofer are used to specify channels to be changed.

As noted, cap will turn on capturing and nocap will turn it off. Can’t claim to know why, by default, nocap was set and why it was less than obvious in alsamixer (marked w/ —), but I’m glad amixer makes it more readable to configurable.

Firmware Restore for ASUS RT-AC68U in Linux

November 24, 2014

Asus wireless routers have grown to be quite the machines, capable of most things needed in today’s ever growing wireless router consumer space. The router is capable of running dd-wrt, with some drawbacks, but the default firmware also runs Linux. Flashing the router with the newest Asus firmware (at present time 3.0.0.4.376.3626) resolves some recent known openssl exploits and adds SSH access, among other things. Having SSH access with a proper shell extends the device’s usability substantially which fits well within my taste in wireless routers (GUIs tend to “limit” the full capacity of devices at times).

Anyhow, playing around with the router and dd-wrt I managed to brick it. Fortunately the router comes with a firmware recovery mode and Asus provides a firmware restore to app to interact with it, but the application is Windows only (no mac os x or unix). Even more fortunately, all this tool does it uploads the firmware uninformatively to the router’s tftp server which is all that runs in the recovery mode, rendering the situation fixable and yielding the recovery app dispensable.

  1. Power off the router, and turn it back on while holding the “Reset” button.
  2. The the router’s LED should start flashing slowly, indicating its recovery mode state. In this mode the router defaults to IP 192.168.1.1/24, a ping can verify its accessibility.
  3. With your favourite tftp client, upload the desirable firmware to the device:

# Linux:
tftp 192.168.1.1 -m binary -c put FW_RT_AC68U_30043763626.trx

# OS X:
echo -e "connect 192.168.1.1\rbinary\rput FW_RT_AC68U_30043763626.trx" | tftp

# Windows:
tftp -i 192.168.1.1 put FW_RT_AC68U_30043763626.trx

This should have been documented in the manual, instead Asus opt’ed to specifically indicate that only Windows is supported which clearly is not the case.

Steam and Source Engine Coming to Linux!

July 26, 2012

It is true, straight from the devils mouth that Steam and the Source Engine (initially only Left 4 Dead 2) are getting ported to Linux as we speak. The current estimated time of release is sometime 2012, which is quite (for the lack of better words) awesome!

I would like to personally express the massive amount of respect that I have for such a major player in the gaming industry to do this. I’ve been playing games on Linux exclusively for the past 10 years, and it’s difficult to express the excitement to be able to play more games in Linux naively, evermore so the premium triple-A titles produced by Valve, joining the ranks of ID Software and Bioware who have release native Linux games in the past (but not consistently). I have a feeling the recent push by Indie games with Linux support, especially the Humble Indie Bundles, have much to do with this. One of the core requirements to sell games via the Humble Indie Bundle project is Win, Mac, and Linux support. It’s all coming together now, and the possibility of Linux emerging as a reliable gaming platform is becoming stronger.

Wine has been doing a pretty good job at expending its capabilities to support more and more complex windows programs, especially Direct3D support and semi-native implementation of OpenGL through its API (or perhaps fully at this point). However, many other dependencies limit the performance of games running via wine and a good chunk of large titles simple don’t run. I certainly hope that one day a native Linux client for games will be the norm for all game developers. Until that day through, go Valve! If only Blizzard would adopt a small portion of Valve’s mentality we’d be in a totally new gaming category. Until that day, Valve (in my book) is the best gaming development company in the industry and I’m looking forward to spending a crap-load of money on Linux games via Steam.

Good job Valve, and thanks for staying ahead in the industry.

Don’t use PayPal – they will figure out a way to screw you!

February 27, 2012

There are plenty of companies on-line or off-line that do evil things, but it takes some special type of establishments to really not have to give a fuck about their customers, be able to take full control of ones founds and products, or freeze founds as they please, shutdown your legal business operations within no execute or explanation, and show you a big Fuck You at the end… all while cashing in billions in profits. One of those companies is PayPal – known throughout the Internet as the evil payment empire owned by eBay.

This has happened to my wife, and we’re still trying to figure out why.

My wife was selling and buying small things through eBay, nothing major really, just random junk she wanted to make a few bucks with or wanted to buy out of interest. For this, of course, you’re required to use Paypal. As anyone who regularly deals with eBay, she verified her PayPal account and linked it to her bank account to established some validity. Additionally, she provided identification information that was needed to establish further trust between her and PayPal. Personally, I cringe every time on-line companies asks me for personal information – and I simply don’t provide it – but I guess my wife had faith in paypal, which I explained to her was a bad idea to start with. Well, few days ago, after my wife made a $900 transfer from her back account to her PayPal account to do purchases with, almost immediately, PayPal locked her account and said it was under review. I found that to be strange. It’s a direct transfer, not sure what would set flags on this. Perhaps not the $4 payment they might be used to? Well, nonetheless, today they sent her an email saying her account is been permanently closed. That’s it. One day it’s all good, another day game over. Your eBay reputation, all the info you sent and customer trust you established: gone. You don’t even get a chance to make your case, they simply don’t want to deal with you anymore. It’s bye-bye. I need to figure out how to retrieve her founds from her payapl account – they better do so or we’ll lawyer up.

But the real question is: why-the-fuck would they do that? What is it that lead them to such decision? Do they seriously have so much money that they can blatantly lock customers out of use of eBay/PayPal as they please? Is there no fairness or even loose obligation to explain their actions? Or is this their new schema to further their profits: lock your account and take all your founds? I guess so. Customer service is certainly not a core value of theirs, or any value whatsoever, other than make bank and flip you the bird afterwards.

This is a disappointing situation, but honestly I’m not really surprised at all. I’ve always know this establishment to be of no good. My wife is not the first one to get screwed, and certainly not the last one.

Read more about how PayPal handles their business:

We’re not the only ones
Maybe it’s time for a class action suit.
Just funny comparasing: PayPal vs Government
PayPal pulls plug on WikiLeaks
Play minecraft much?
More user experiance

…and the list goes on, google can show you more.

The only recommendation I have, and one I’ve known for a while, is to not use PayPal. There are ways to be a big company and still care for its customers, and this is a good example of how not to run your business.

New Logitech G13 Linux Driver

December 31, 2011

There’s a new driver (written in C++) and a GUI configuration utility (writing in Java) that allows for not only easy key configuration, but also very customizable macros and coloring schemas. But that’s not all, the new driver/gui supports four different key profile configuration that can be switched using the game pad itself (top four rectangular keys) and the macros even support time delays in key execution (which is quite a nice feature for any MMO player out there). So far its been working flawlessly for me on a updated 64bit Gentoo build and libusb-1.0.8.

However, it does lack some features that would be quite nice to have and would make the driver complete. There’s no way to customize the digital display with static or dynamic data, such as simple text messages (such as the older userspace driver I mentioned quite some time ago), time/date, or the most demanding option: dynamic stats. I hope this is something that can be worked out in the future.

Despite it all the most necessary options are there, and to be honest, I’m quite happy with it.

Driver site: http://code.google.com/p/linux-g13-driver/

LXDE: The Replacement For Gnome

August 29, 2011

When it comes to my office workstation and laptop, I’ve always went with Fedora as the OS of choice. Sure, Ubuntu and Arch Linux are good alternatives, but they came with their own drawbacks. In the end, I’ve always appreciated the familiar ways of a Red Hat based system… well, until Fedora 15, that is.

Sure, Fedora likes to stay on the cutting edge of new developments and embrace them quickly, and there has been some crossfire between stability, security and functionality to certain extent. However, it caught me as surprise that anyone would allow Gnome 3 to be part of F15 release, or any OS for that matter. Has anyone even tried using Gnome 3, or was it just blindly pushed for adaptation? Or to be more specific, WTF happened to Gnome 3? Are the Gnome devs sane and coherent? Do they have any clue what a user friendly graphical interface supposed to be, yet alone efficient? Because Gnome went from being a very reliable, fast and functional GUI windows manager (Gnome 2.x) to a pile of mixed manure.

I’ve tried using Gnome 3 for several days. I’ve tweaked it to its limited ways, followed many tips around the net that would help restore my desktop to a productive workstation that it once was, but all without any luck. I had final hope for Gnome’s fall-back mode, but even through it gave back some of the former look (mostly gnome-panel), it still failed to deliver the desktop manager I once had. It failed to delivery in usability and efficiency. It’s instability and inconsistency, illogical interface choices, dumbified limitations and contradictions to the most basic windows/desktop manager concepts, made Gnome a true disappointment. I seriously don’t know what happened there, it’s certainly not innovation in my book. Are these guys trying to push the next mobile interface, or a solid desktop experience?

Anyhow, thankfully there’s salvation.

I have not used LXDE (Lightweight X11 Desktop Environment) in quite some time, and damn son, it has made some progress. Fedora allows to install LXDE right from the DVD, and the Fedora team certainly made the right choice to start including it. If you never tried this super light desktop manager, I highly recommend it. Within minutes of its installation, I found myself with a functional and usable desktop again. It’s as if I got Gnome 2.x back, but faster. Everything with LXDE feels familiar and logical, and simply works. Simplicity and functionality at a beautiful dance.

If you miss what Gnome once was, try LXDE. You’ll not only feel right at home, but will also quickly forget what the other failed alternative was. Ah, the beauty of open source software.

LXDE + Compiz = FTW

Improved Multi Core Support in Wine and WoW, Almost There!

March 29, 2011

One of the ugly sides of wine is the lack of proper multi core support for many applications. Any modern system, and these days even not so modern systems, have at least two cores to play with. Linux certainly takes advantage of that, and so does Windows in their respective native environment. However, somewhere between getting your favorite application functioning via Wine and have it run somehow reasonably, people come to accept performance degradation that frequently plagues the end result. But does it really have to be that way? And if not, then what can be done about it? Before I get philosophical about this subject, let me point at the following bug (11674) [bugs.winehq.org] filed on winehq.org.

The thread has this patch [crap.linuxfusion.net] submitted by a brave soul with some interesting results, tailored towards Word of Warcraft. Once you patch wine with it, considering the application that supports dual+ cores manages to run at all, it can yield significantly performance improvements. I have tested it with WoW and it’s quite astonishing. I get a steady 25 to 30% performance boost across the board. Unfortunately, the patch still needs lots of work since it faces some deal breaking stability problems. Not all applications can run that otherwise run fine without the patch, and other times once things are up and running wine crashes taking down everything with it. However, when it does run, things are smooth, responsive, enriching… beautiful. The way it should be.

I really wish one or more Wine developers would take this patch under their wing, help resolve some of the stability problem it causes, and integrate some of its concepts and improvements in to the main Wine build. I do believe such performance improvements could be a giant leap forward for Wine all together, a much desired and asked-for addition by many winehq users too, I may add.

Many thanks to the original creator, and I hope things continue to improve.

Resources: updated Aug 18 2012
Main patch site: http://www.aewi.info/rgl/
Wine bug thread: http://bugs.winehq.org/show_bug.cgi?id=11674
Newest patch release: http://www.aewi.info/rgl/rgl.tgz http://www.aewi.info/rgl/rgl.patch.gz
Local patch mirror: http://crap.linuxfusion.net/downloads/rgl.tgz http://crap.linuxfusion.net/downloads/rgl.patch.20110329.gz

Flashing Intel SSD in Linux, Without a CDROM

March 20, 2011

Oh so sexyIt appears that Intel’s recommended way to flash firmware for their whole line of SSD drives requires a blank CD/DVD and a capable SATA/IDE CD/DVD drive. Yes, that’s right, technology mastered in the 1990’s, and what makes it even more awesome is that it won’t even work with a USB CD/DVD ROM. Way to move forward, Intel.

CD/DVD drives are quite pointless and useless these days. You can buy cheap USB flash-drives (aka USB sticks) that handle higher capacities, are faster and smaller than DVD media… and of course are REUSABLE, without the need of any special burning software! Need backup space? How about a high capacity HDD that goes around for pennies these days. Music? Why I didn’t know kids rolled around with portable CD players still.

Alright, enough dissing the old school media, we all know it had its place at a certain point and time (and I really mean “had”), and I understand all I mentioned is common knowledge these days, but wanted to point that out anyhow since one of the largest tech companies out there, Intel, doesn’t seem to realize that. In order to upgrade your Intel SSD drive, with newest firmware that is, all you get is a ISO and a kind readme file nicely implying for you to go out and buy some blank CD discs, and a drive reader/burner in case you sold your’s with that Pentium II MMX machine.

Thankfully it’s not difficult to circumvent such problem, as with everything on Linux. Find a USB flash drive, any size will do, and move on to the steps below.

1. Install unetbootin, depending on your platform:

emerge unetbootin
# or
yum install unetbootin
# or
apt-get install unetbootin

2. Download newest intel SSD fw version here

3. Insert your USB drive, and mount it (anywhere) if that does not happen automatically.

mount /dev/sde1 /mnt/flash

As shown above, my USB disk is sde1, yours can be anything. You can check /var/log/messages or dmesg for details. Automount might put these drives to /media for you

4. Fire up unetbootin (be aware, it’s not a command line utility unfortunately, as if the screenshot below wasn’t obvious enough). Select options as follows
unetbootin

5. Mount the FreeDOS ubninit image

cd /mnt/flash
mkdir tmp
mount -o loop ubninit ./tmp

6. Extract the flash exe from the ISO download earlier

mount -o loop 011102M388208850.ISO /mnt/iso
cp /mnt/iso/iSSDFUT.exe /mnt/flash/tmp/
sync

The sync command will force changed blocks to be written to disk from the buffer

7. Unmount everything

umount /mnt/iso
umount /mnt/flash/tmp
umount /mnt/flash

8. Reboot, and force boot to the USB disk. Once booted, choose option 5 “FreeDOS Live CD Only” and once at the command line type in “iSSDFUT”

At this point just follow the on screen instructions. I should note that I did enable IDE+Legacy mode in the BIOS to be safe, and my Intel 160GB x25-M G2 flashed just fine, but it might work with AHCI just as well. Good luck.

Using AdBlock Speeds Up Internet Surfing? Hmmm…

February 14, 2011

For the most part, I’m ignorant to online ads. Or rather, I’m immune. My mind is programmed in a way that allows me to scan through content quickly and efficiently, ignoring content that is irrelevant, especially to do with ads. Functioning as such, I’ve never seen the need for ad-block browser plugins. Recently I noticed one of my favorite tech news sites was loading incredibly slow, slower than I was used to. What I noticed was that the site was getting stuck at loading a particular banner ad, not necessarily that this advertisement wasn’t loading, it’s just that it was loading incredibly slow, and with it, bringing the whole site to a stand still until it was completed. Now, let me say right out that I travel quite a bit across Asia, and to bypass local restriction on what some countries would consider damaging information (like wikipedia or youtube, or individual opinions) I use VPN, so I’ve always expected the connection to be a bit slow and at peak times a bit unresponsive. Anyhow, since this banner advertisement was preventing the site from loading completely, I installed a adblock extension in Chrome. Upon refresh, the site loaded instantly. But wait… it loaded too fast, faster than I was (once again) used to.

Hold up a minute.

I do understand that stopping a few ads from loading would save some bandwidth and therefore allow the site to load a bit faster, but a 500 to 1000% speed increase?

Well… that’s exactly what I experianced.

I always thought that advertisement networks would be restricted by some size factors for their banner/flash ads, at least that would be a “right” thing to do (especially for Canada these days and their super fuck-you bandwidth caps,) but I guess that’s same as saying lawyers don’t lie because it’s a moral thing to do… agreeable, but far from reality. Anyhow, advertisement groups can choose to implement ad data size restrictions, but certainly don’t have to, and apparently only the large ones do (like google). Additionally, many ad networks require several more domain resolutions, which add to the slowness, but that’s also just the fudge on the cake. The cake itself seems to be made out of mystery ingredients. In other words, who knows what advertisement network do that slows down ad-loading so much that it cripples some websites. Perhaps it’s the tracking they perform on surfers and the endless load of information they transmit about you, your surfing habits, your mother’s surfing habits, the proon you’ve been viewing,  and the hot-packets you’ve been eating. I just hope they don’t kill puppies every time an ad gets blocked, because at least for me, the adblock stays.

Cedega Retiring (about time?)

February 9, 2011

I already was expecting Cedega [cedega.com] to go belly up sooner than later, and it seems this is now reality. Perhaps I’m a bit late noticing this, but last month TransGaming, the developers of Cedega, have issues the following statement:

TransGaming is pleased to announce the continued development of Cedega Technology under the GameTree Developer Program. Although the current Cedega Gaming Service will be retired, Cedega as a technology for the Linux gaming community will continue to be available as an active and invested toolset within the GameTree Developer Program. The current Cedega Gaming Service will be available for active Members until February 28, 2011, after which time a free GameTree Dev ID will be required to gain access to the Cedega powered Linux desktop technology through the GameTree Developer Program.

Source: http://www.cedega.com/news/

I have to admit, it does hurt to see a projects focusing on bringing games on to the Linux platform fail, but I can’t say this one brought any value in a long time. Wine [winehq.org] has left Cedega in the dust many years ago, and continues to grow and prosper with new features and more success every release. This keeps me quite optimistic getting my gaming needs on Linux met, until the day more native games become a reality, of course.

I can’t tell the details yet, but initially it appears the old cedega code will be available for free for anyone with a Game Tree Dev ID. Not sure if it will become a open source project in its entirety, but giving it requires registration and is run through the Game Tree Dev project, I have to assume not. I’d also like to say for TransGaming to merge any of their salvageable parts (perhaps their proprietary code used in Cedega) in to the winehq project, but again, I’m skeptical whether that would be of any use considering winehq is far beyond cedega in nearly every part of their implementation.

Anyhow, back to where I was… playing WoW via Wine.

 
Powered by Wordpress and MySQL. Theme by Shlomi Noach and modified by your mom