[I]n a situation where the consulting firm or agency has multiple clients, is the Client the same as the Product Owner?
No, they are fundamentally different roles. While the Product Owner may come from the client, the Product Owner is a specific one-person role within the Scrum framework. The client is a stakeholder (a "chicken"), while the Product Owner is a formal member of the Scrum team (a "pig").
Note: See The Chicken and the Pig for more on the use of this terminology in Scrum.
Product Owner as Stakeholder Proxy
The client is, perhaps axiomatically, a stakeholder in the process. An individual or steering committee within the client organization is designated as the project sponsor, and of course the client is responsible for funding the project. However, Scrum assigns the Product Owner role as a proxy for all the stakeholders in regards to prioritization and scheduling.
The Product Owner works with the stakeholders to create the Product Backlog, and to build stakeholder consensus for project priorities and resource allocations. As a defined role in the Scrum process, the Product Owner must be an active participant in the project, and not simply a stakeholder waiting for features to be delivered.
Who Provides the Product Owner?
In practice, the Product Owner needs to be an integral part of the Scrum team. As such, it is generally beneficial for the Product Owner to be a member of the same organization as the Scrum Master and the developers. In this way, the stakeholder proxy role is properly situated inside the project.
Larger clients often have their own PMO or project management framework; such clients may provide their own internal project/product manager (or other stakeholder proxy) to each project. In such cases, the two proxies coordinate with each other: the client's internal proxy represents the client to the Product Owner, and the Product Owner facilitates the client's interests within the Scrum team.