Ist eigentlich normal das Linux den kompletten freien Speicher benutzt, besonders bei Aufnahme / Wiedergabe.
Wenn nach Aufnahme / Wiedergabe Ende noch der Speicher belegt erscheint mit "free" muss das noch lange nicht heissen das der auch nicht verfügbar ist.
Kannst ja mal dann ein paarmal das ausführen:
sync
echo "3" > /proc/sys/vm/drop_caches
dann sollten nicht benötigte puffer freigegeben werden