Почему не передает событие?
используйте refsvar Player = React.createClass({
    componentDidMount: function() {
        this.refs.video.addEventListener("ended", this.onEnded, false);
    },
    onEnded: function() {
        alert("ended");
    },
    componentWillUnmount: function() {
        this.refs.video.removeEventListener("ended", this.onEnded, false);
    },
    render: function() {
        return <video ref="video" src={this.props.src} autoPlay={this.props.autoPlay} width={this.props.width} height={this.props.height} controls />;
    }
});
var PlayerContainer = React.createClass({
    render: function() {
        return <Player width="50%" height="50%" src="http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4" autoPlay="" />;
    }
});

ReactDOM.render(<PlayerContainer />, document.body);
папробуй мой вариант
https://jsfiddle.net/fugekyvt/
Функция onEnded передаётся в Player вот так
onEnded={this.onEnded}
таким образом в компоненте мы получает к нему доступ при обращении this.props.onEnded
А дальше навешиваем листенер