The need for supporting multimedia streaming services in cellular networks as standardized by 3GPP is expanding rapidly. Evolved Multimedia Broadcast Multicast Service (eM-BMS) was initially introduced in Release 9 and following releases have introduced several enhancements. Multimedia Broadcast Multicast Single Frequency Network (MBSFN) is one of the eMBMS enhancements targeting to reduce interference, however, its static parameter configuration yields inefficient resource allocation. Therefore, in this paper, an adaptive demand-driven MBSFN resource allocation algorithm is proposed aiming to efficiently utilize the radio resources. The algorithm flexibly assigns resources to multicast transmissions by varying MBSFN configuration parameters (the number and period of multicast subframes) and provides freed resources to unicast traffic. The proposed algorithm is implemented and evaluated using a Software Defined Radio platform which we made open source. As compared to the fixed MBSFN parameter configuration, our solution showcases an improvement of at least 24% and maximally by 40% in terms of multicast resource efficiency. Also, the total system throughput (multicast and unicast) improves by at least 4% and maximally by 24%.