Except for some special (and very rare) 'format-preserving' modes, all modern encryption algorithms, including AES-GCM, can handle any byte sequence in plaintext and produce any byte sequence as ciphertext. (In fact the algorithms can mostly handle any bit sequence, but implementations on byte-oriented computers mostly handle only bytes, especially since they are usually written in C and C support for sub-byte data is implementation-dependent. AES-GCM is sort of an exception; it consists of AES-CTR plus GMAC both of which can handle any bits, but NIST nevertheless specifies GCM to handle only 8-bit bytes. Possibly because they have had issues in the past with crypto implementations supposedly tested for conformance that still fail in edge cases, and practically no one nowadays needs or even wants non-byte crypto.)
When data constraints apply -- such as sending ciphertext by non-MIME email, or storing it in certain databases that don't support binary aka 'blob' data -- it is common to encode the ciphertext in a form that satisfies those constraints, such as hex, base64, URL-safe base64, base32, base58, base95, etc. However SSL/TLS (all versions) does not require this; at record level it allows any byte sequence in the body and, yes, each record is therefore delimited ONLY by the length specified in the record header and never by its content. (Some records, like those in the handshake subprotocol, do have constraints on their contents, but if encrypted these apply to the plaintext before encryption or after decryption, not the ciphertext.)