Lines Matching +full:current +full:- +full:speed
7 * Copyright (c) 2019 - 2024 Nordic Semiconductor ASA
9 * SPDX-License-Identifier: Apache-2.0
66 /** A 32-bit signed parameter. The parameter value depends on the @ref mpl_cmd.opcode */
95 /** Concatenated search control items - (type, length, param) */
100 * @name Playback speed parameters
102 * All values from -128 to 127 allowed, only some defined
105 /** Minimum playback speed, resulting in 25 % speed */
106 #define MEDIA_PROXY_PLAYBACK_SPEED_MIN -128
107 /** Quarter playback speed, resulting in 25 % speed */
108 #define MEDIA_PROXY_PLAYBACK_SPEED_QUARTER -128
109 /** Half playback speed, resulting in 50 % speed */
110 #define MEDIA_PROXY_PLAYBACK_SPEED_HALF -64
111 /** Unity playback speed, resulting in 100 % speed */
113 /** Double playback speed, resulting in 200 % speed */
115 /** Max playback speed, resulting in 395.7 % speed (nearly 400 %) */
120 * @name Seeking speed factors
122 * The allowed values for seeking speed are the range -64 to -4
127 /** Maximum seeking speed - Can be negated */
129 /** Minimum seeking speed - Can be negated */
141 /** A single track is played repeatedly; the next track is the current track. */
170 /** A single track is played repeatedly; the next track is the current track. */
194 /** The current track is invalid, and no track has been selected. */
196 /** The media player is playing the current track. */
198 /** The current track is paused. The media player has a current track, but it is not being played */
200 /** The current track is fast forwarding or fast rewinding. */
210 /** Start playing the current track. */
212 /** Pause playing the current track. */
214 /** Fast rewind the current track. */
216 /** Fast forward the current track. */
219 * Stop current activity and return to the paused state and set the current track position to the
220 * start of the current track.
224 /** Set a new current track position relative to the current track position. */
228 * Set the current track position to the starting position of the previous segment of the current
233 * Set the current track position to the starting position of
234 * the next segment of the current track.
238 * Set the current track position to the starting position of
239 * the first segment of the current track.
243 * Set the current track position to the starting position of
244 * the last segment of the current track.
248 * Set the current track position to the starting position of
249 * the nth segment of the current track.
253 /** Set the current track to the previous track based on the playing order. */
255 /** Set the current track to the next track based on the playing order. */
257 /** Set the current track to the first track based on the playing order. */
259 /** Set the current track to the last track based on the playing order. */
261 /** Set the current track to the nth track based on the playing order. */
264 /** Set the current group to the previous group in the sequence of groups. */
266 /** Set the current group to the next group in the sequence of groups. */
268 /** Set the current group to the first group in the sequence of groups. */
270 /** Set the current group to the last group in the sequence of groups. */
272 /** Set the current group to the nth group in the sequence of groups. */
484 * Called when the Current Track is changed
501 * @param title The title of the current track
514 * @param duration The duration of the current track
546 * @brief Playback Speed receive callback
548 * Called when the Playback Speed is read or changed
555 * @param speed The playback speed parameter
557 void (*playback_speed_recv)(struct media_player *player, int err, int8_t speed);
560 * @brief Playback Speed write callback
562 * Called when the Playback Speed is written
568 * @param speed The playback speed parameter attempted to write
570 void (*playback_speed_write)(struct media_player *player, int err, int8_t speed);
573 * @brief Seeking Speed receive callback
575 * Called when the Seeking Speed is read or changed
581 * @param speed The seeking speed factor
583 void (*seeking_speed_recv)(struct media_player *player, int err, int8_t speed);
599 * @brief Current Track Object ID receive callback
601 * Called when the Current Track Object ID is read or changed
608 * @param id The ID of the current track object in Object Transfer Service (48 bits)
613 * @brief Current Track Object ID write callback
615 * Called when the Current Track Object ID is written
666 * @brief Current Group Object ID receive callback
668 * Called when the Current Group Object ID is read or changed
675 * @param id The ID of the current group object in Object Transfer Service (48 bits)
680 * @brief Current Group Object ID write callback
682 * Called when the Current Group Object ID is written
809 * The Search Results Object ID has a separate callback - search_results_id_recv().
945 * Set the playing position of the media player in the current
959 * @brief Get Playback Speed
961 * The playback speed parameter is related to the actual
962 * playback speed as follows:
963 * actual playback speed = 2^(speed_parameter/64)
965 * A speed parameter of 0 corresponds to unity speed playback
966 * (i.e. playback at "normal" speed). A speed parameter of
967 * -128 corresponds to playback at one fourth of normal speed,
969 * speed.
978 * @brief Set Playback Speed
981 * the playback speed parameter.
984 * values of the playback speed parameter. If the value given
985 * is not supported, and is higher than the current value, the
986 * player should set the playback speed to the next higher
988 * supported value for given values lower than the current
992 * @param speed The playback speed parameter to set
996 int media_proxy_ctrl_set_playback_speed(struct media_player *player, int8_t speed);
999 * @brief Get Seeking Speed
1001 * The seeking speed gives the speed with which the player is
1002 * seeking. It is a factor, relative to real-time playback
1003 * speed - a factor four means seeking happens at four times
1004 * the real-time playback speed. Positive values are for
1007 * The seeking speed is not settable - a non-zero seeking speed
1017 * @brief Read Current Track Segments Object ID
1019 * Get an ID (48 bit) that can be used to retrieve the Current
1034 * @brief Read Current Track Object ID
1036 * Get an ID (48 bit) that can be used to retrieve the Current
1040 * 4.3 for a description of the Current Track Object.
1051 * @brief Set Current Track Object ID
1053 * Change the player's current track to the track given by the ID.
1099 * The parent group is the parent of the current group.
1102 * 4.4 for a description of the Current Track Object.
1113 * @brief Read Current Group Object ID
1115 * Get an ID (48 bit) that can be used to retrieve the Current
1119 * 4.4 for a description of the Current Group Object.
1130 * @brief Set Current Group Object ID
1132 * Change the player's current group to the group given by the
1133 * ID, and the current track to the first track in that group.
1193 * May result in two callbacks - one for the actual sending of the command to the
1223 * - one for the actual sending of the search to the player
1224 * - one for the result code for the search from the player
1225 * - if the search is successful, one for the search results object ID in the OTs
1306 * @return The title of the current track
1316 * @return The duration of the current track
1327 * @return The position of the player in the current track
1334 * Set the playing position of the media player in the current
1345 * @brief Get Playback Speed
1347 * The playback speed parameter is related to the actual
1348 * playback speed as follows:
1349 * actual playback speed = 2^(speed_parameter/64)
1351 * A speed parameter of 0 corresponds to unity speed playback
1352 * (i.e. playback at "normal" speed). A speed parameter of
1353 * -128 corresponds to playback at one fourth of normal speed,
1355 * speed.
1357 * @return The playback speed parameter
1362 * @brief Set Playback Speed
1365 * the playback speed parameter.
1368 * values of the playback speed parameter. If the value given
1369 * is not supported, and is higher than the current value, the
1370 * player should set the playback speed to the next higher
1372 * supported value for given values lower than the current
1375 * @param speed The playback speed parameter to set
1377 void (*set_playback_speed)(int8_t speed);
1380 * @brief Get Seeking Speed
1382 * The seeking speed gives the speed with which the player is
1383 * seeking. It is a factor, relative to real-time playback
1384 * speed - a factor four means seeking happens at four times
1385 * the real-time playback speed. Positive values are for
1388 * The seeking speed is not settable - a non-zero seeking speed
1391 * @return The seeking speed factor
1396 * @brief Read Current Track Segments Object ID
1398 * Get an ID (48 bit) that can be used to retrieve the Current
1404 * @return Current The Track Segments Object ID
1409 * @brief Read Current Track Object ID
1411 * Get an ID (48 bit) that can be used to retrieve the Current
1415 * 4.3 for a description of the Current Track Object.
1417 * @return The Current Track Object ID
1422 * @brief Set Current Track Object ID
1424 * Change the player's current track to the track given by the ID.
1456 * The parent group is the parent of the current group.
1459 * 4.4 for a description of the Current Track Object.
1461 * @return The Current Group Object ID
1466 * @brief Read Current Group Object ID
1468 * Get an ID (48 bit) that can be used to retrieve the Current
1472 * 4.4 for a description of the Current Group Object.
1474 * @return The Current Group Object ID
1479 * @brief Set Current Group Object ID
1481 * Change the player's current group to the group given by the
1482 * ID, and the current track to the first track in that group.
1491 * return The media player's current playing order
1530 * For command opcodes (play, pause, ...) - see the MEDIA_PROXY_OP_*
1591 * The media proxy may call any non-NULL function pointers in the
1635 * To be called when the player's current track is changed
1642 * To be called when the player's current track is changed
1651 * To be called when the current track's duration is changed (e.g. due
1668 * and playback happens at a constant speed.
1678 * @brief Playback speed callback
1680 * To be called when the playback speed is changed.
1682 * @param speed The playback speed parameter
1684 void media_proxy_pl_playback_speed_cb(int8_t speed);
1687 * @brief Seeking speed callback
1689 * To be called when the seeking speed is changed.
1691 * @param speed The seeking speed factor
1693 void media_proxy_pl_seeking_speed_cb(int8_t speed);
1696 * @brief Current track object ID callback
1698 * To be called when the ID of the current track is changed (e.g. due
1701 * @param id The ID of the current track object in the OTS
1708 * To be called when the ID of the current track is changes
1724 * @brief Current group object ID callback
1726 * To be called when the ID of the current group is changed
1728 * @param id The ID of the current group object in the OTS