A method implemented on a target device (101(a)-(n), 301 (a), 301(b), 601, 901, 1001, 2200) including at least one processor, a computer readable storage medium including computer code, and at least one storage device, wherein, when the computer code is executed by the at least one processor, the computer code causes the at least one processor to: receive, from a metadata delivery system (104, 304, 604), metadata packets related to media being consumed by the target device (101(a)-(n), 301(a), 301 (b), 601, 901, 1001, 2200), wherein the media includes audio and video data, and the metadata packets include textual metadata packets (201(a)-(e)) which include timing information (502, 702) related to the media for synchronizing the rendering of text in the textual metadata packets (201(a)-(e)) at the target device (101(a)-(n), 301(a), 301 (b), 601, 901, 1001, 2200) with the media on a primary device (605, 1312) associated with the target device (101(a)-(n), 301(a), 301(b), 601, 901, 1001, 2200); wherein the metadata packets further include peripheral metadata packets (404(a)(f), 700, 1102, 1202) which include the timing information related to the media, peripheral addressing information for a plurality of peripherals (102(a)-(n), 302(a)-(d), 602(a)-(c), 902, 1002, 1311) associated with the target device (101 (a)-(n), 301(a), 301(b), 601, 901, 1001, 2200), and a peripheral payload (704, 911, 1011) including a first set of actions for use by the plurality of peripherals (102(a)-(n), 302(a)-(d), 602(a)-(c), 902, 1002, 1311) to perform the first set of actions; and send information (305, 306) to the metadata delivery system (104, 304, 604) the information comprising peripheral identification information (305, 306) for the plurality of peripherals (102(a)-(n), 302(a)-(d), 602(a)-(c), 902, 1002, 1311) connected to the target device (101(a)-(n), 301(a), 301(b), 601, 901, 1001, 2200), and information identifying the media, the peripheral identification information (305, 306) being used to send metadata to a given target device based on peripheral devices connected to this given target device. receive, from a metadata delivery system (104, 304, 604), metadata packets related to media being consumed by the target device (101(a)-(n), 301(a), 301 (b), 601, 901, 1001, 2200), wherein the media includes audio and video data, and the metadata packets include textual metadata packets (201(a)-(e)) which include timing information (502, 702) related to the media for synchronizing the rendering of text in the textual metadata packets (201(a)-(e)) at the target device (101(a)-(n), 301(a), 301 (b), 601, 901, 1001, 2200) with the media on a primary device (605, 1312) associated with the target device (101(a)-(n), 301(a), 301(b), 601, 901, 1001, 2200); wherein the metadata packets further include peripheral metadata packets (404(a)(f), 700, 1102, 1202) which include the timing information related to the media, peripheral addressing information for a plurality of peripherals (102(a)-(n), 302(a)-(d), 602(a)-(c), 902, 1002, 1311) associated with the target device (101 (a)-(n), 301(a), 301(b), 601, 901, 1001, 2200), and a peripheral payload (704, 911, 1011) including a first set of actions for use by the plurality of peripherals (102(a)-(n), 302(a)-(d), 602(a)-(c), 902, 1002, 1311) to perform the first set of actions; and send information (305, 306) to the metadata delivery system (104, 304, 604) the information comprising peripheral identification information (305, 306) for the plurality of peripherals (102(a)-(n), 302(a)-(d), 602(a)-(c), 902, 1002, 1311) connected to the target device (101(a)-(n), 301(a), 301(b), 601, 901, 1001, 2200), and information identifying the media, the peripheral identification information (305, 306) being used to send metadata to a given target device based on peripheral devices connected to this given target device.