故事发生在20世纪30年代的上海。顾维邦(杨佑宁饰)是一个名不见经传的导演。一次偶然的机会,他认识了一位名叫孟的女明星(林心如饰)。他们一拍即合,决定拍摄一部爱情惊悚片。顾维邦把它命名为《子夜之歌》。 一切都很顺利,演员已经安顿好了演员表,就等开拍了。 顾维邦把拍摄地点选在了皇宫电影院。虽然很多人警告他这里曾发生过耸人听闻的灵异事件,不宜久留,但倔强的顾维邦并不在意。 果然,没过多久,剧组就发生了很多奇怪的事情。直到扮演主角的演员神秘死亡,大家才意识到事情变得如此严重。 顾维邦的未婚妻麦丽诗(动物园)来到剧组调查事件真相,却牵扯出顾维邦和孟之间一段尘封已久的旧事。