An information-transmission apparatus (100, 100') for transmitting data using a transmission channel whose transmission quality dynamically changes, wherein a data amount of the data to be generated per unit time is variable, the information-transmission apparatus comprising: storage means comprising a plurality of memories (1009, 1010, 1011, 3000, 3001) configured to store a plurality of pieces of data, each of the plurality of pieces of data being generated in a unit time; data-amount control means (1006, 3006) configured to distribute an excess data portion, the excess data portion being a portion of one of the pieces of data in excess of a threshold, to at least one of the plurality of memories (1009, 1010, 1011, 3000, 3001) whose stored data amount does not reach the threshold; transmission means (1007, 3007) configured to transmit the plurality of pieces of data stored in the storage means (1009, 1010, 1011, 3000, 3001), wherein the data-amount control means (1006, 3006) is configured to perform distribution in accordance with a distribution amount based on a difference between the data amount stored in the memory to which the excess data portion is to be distributed and the threshold, and further comprising: detection means (1006, 3006) configured to detect the quality of the transmission channel through which the transmission means (1007, 3007) performs transmission; and threshold determination means (1006, 3006) configured to dynamically calculate a data rate, as the threshold, at which communication can be performed through the transmission channel in accordance with the detected quality. storage means comprising a plurality of memories (1009, 1010, 1011, 3000, 3001) configured to store a plurality of pieces of data, each of the plurality of pieces of data being generated in a unit time; data-amount control means (1006, 3006) configured to distribute an excess data portion, the excess data portion being a portion of one of the pieces of data in excess of a threshold, to at least one of the plurality of memories (1009, 1010, 1011, 3000, 3001) whose stored data amount does not reach the threshold; transmission means (1007, 3007) configured to transmit the plurality of pieces of data stored in the storage means (1009, 1010, 1011, 3000, 3001), wherein the data-amount control means (1006, 3006) is configured to perform distribution in accordance with a distribution amount based on a difference between the data amount stored in the memory to which the excess data portion is to be distributed and the threshold, and further comprising: detection means (1006, 3006) configured to detect the quality of the transmission channel through which the transmission means (1007, 3007) performs transmission; and threshold determination means (1006, 3006) configured to dynamically calculate a data rate, as the threshold, at which communication can be performed through the transmission channel in accordance with the detected quality. detection means (1006, 3006) configured to detect the quality of the transmission channel through which the transmission means (1007, 3007) performs transmission; and threshold determination means (1006, 3006) configured to dynamically calculate a data rate, as the threshold, at which communication can be performed through the transmission channel in accordance with the detected quality.