Microphone works, but line in not

I have an interesting issue with Ubuntu. I have a laptop that has one jack for line in/microphone and line out/headphones.

This the reason why I bought a spliter like below:

Splits one 4 pines jack into two jacks: micrphone and line out

I have an external studio microphone and headphones with the micrphone.

Case 1 (Working)

If I connect the micrphone of headphones to spliter that is inserted into my laptop, I can record my micrphone.

HEADPHONES MIC ----+
                   |   
                   +------- LAPTOP
                   |   
HEADPHONES OUTPUT -+

Case 2 (NOT Working)

If I connect another an external hardware (for example a piano) to the splitter, I cannot record anything... This is the issue. How can Ubuntu recognize if there is a headphones micrphone or an external hardware that is NOT a headphones micrphone?

PIANO  ------------+
                   |   
                   +------- LAPTOP
                   |   
HEADPHONES OUTPUT -+

...and the question is how to fix this? I want to record my piano using my laptop: through line in.

Would be the splitter an cause?

Do I really need a hardware that I don't have (like an USB recorder)?


Update: tested on Windows 8 on same laptop. It works properly... (Un)Fortunately, I am an Ubuntu user, so I will not go back to the Windows world... Still searching for a solution on Ubuntu.

My laptop model is Samsung NP300E5V-S01RO.

Update 2: Using alsamixer I managed to listen only the piano sounds, without other microphone sounds. This is how the current alsamixer configuration looks:

The information about my settings can be found here.

I still cannot select in Audacity (or other recording software) the recording device. It records from the internal microphone.

Update 3:

pactl list sources outputs this in the Ports section:

Case 1

Piano is connected:

analog-input-microphone-internal: Internal Microphone (priority: 8900)
analog-input-microphone: Microphone (priority: 8700, not available)

Case 2

An external microphone is connected:

analog-input-microphone-internal: Internal Microphone (priority: 8900, not available)
analog-input-microphone: Microphone (priority: 8700, available)

Solution 1:

By increasing that mic volume meter in alsamixer we only turn on the soundcards loopback feature, that is it redirects the mic input to the sound output internally, this stream is not accessible for softwares. (AFAIK) (But it confirms that the hardware receives the sound.)

You should try to increase all Capture meters in alsamixer to the maximum and make sure they are not muted, after this make sure that in pavucontrol the correct device and port is selected, and the mic input is not muted there, then try recording.

If it still not works, then it is likely that the problem is somewhere lower in the driver.

What you could still try is installing a newer alsa, maybe this problem is solved in a newer version. Other than that there are some tweaking tools for alsa here. Docs for it here. With the hda-jack-retask thing you are able to change your microphone input to a line-in one (or similar things), but I don't know whether that will help.