MT#61856 media_player: refactor kernel_idx none entry

No functional changes. Refactors are:
- use `UINT_MAX` instead of `-1`
- add definition `KERNEL_IDX_NONE = UINT_MAX`
- use `KERNEL_IDX_NONE` to se none value
- use `KERNEL_IDX_NONE` to check the none in conditions

Change-Id: I132d39607acd2c8d3b229bc3fba4d16e07e3d12c
mr26.1
Donat Zenichev 3 weeks ago
parent ad8911e906
commit 93c49e9c2e

@ -27,6 +27,7 @@
#include "arena.h"
#define DEFAULT_AVIO_BUFSIZE 4096
#define KERNEL_IDX_NONE UINT_MAX
typedef enum {
MPC_OK = 0,
@ -74,7 +75,7 @@ struct media_player_cache_entry {
cache_packet_arr *packets; // read-only except for decoder thread, which uses finished flags and locks
unsigned long duration; // cumulative in ms, summed up while decoding
unsigned int kernel_idx; // -1 if not in use
unsigned int kernel_idx; // KERNEL_IDX_NONE if not in use
media_player_ht wait_queue; // players waiting on decoder to finish
struct codec_scheduler csch;
@ -192,7 +193,7 @@ static void media_player_shutdown(struct media_player *mp) {
mp->media = NULL;
media_player_coder_shutdown(&mp->coder);
if (mp->kernel_idx != -1)
if (mp->kernel_idx != KERNEL_IDX_NONE)
kernel_stop_stream_player(mp->kernel_idx);
else if (mp->cache_entry) {
mutex_lock(&mp->cache_entry->lock);
@ -207,7 +208,7 @@ static void media_player_shutdown(struct media_player *mp) {
mp->cache_index.file = STR_NULL;// coverity[missing_lock : FALSE]
obj_release(mp->cache_entry); // coverity[missing_lock : FALSE]
mp->cache_read_idx = 0;
mp->kernel_idx = -1;
mp->kernel_idx = KERNEL_IDX_NONE;
}
#endif
@ -254,7 +255,7 @@ void media_player_new(struct media_player **mpp, struct call_monologue *ml, stru
mp->tt_obj.tt = &media_player_thread;
mutex_init(&mp->lock);
mp->kernel_idx = -1;
mp->kernel_idx = KERNEL_IDX_NONE;
mp->run_func = media_player_read_packet; // default
mp->call = obj_get(ml->call);
@ -677,7 +678,7 @@ static void media_player_cached_reader_start(struct media_player *mp, str_case_v
__media_player_set_opts(mp, mp->opts);
if (entry->kernel_idx != -1) {
if (entry->kernel_idx != KERNEL_IDX_NONE) {
media_player_kernel_player_start(mp);
return;
}
@ -772,10 +773,10 @@ static bool media_player_cache_get_entry(struct media_player *mp,
t_hash_table_insert(media_player_cache, ins_key, obj_get(entry));
entry->kernel_idx = -1;
entry->kernel_idx = KERNEL_IDX_NONE;
if (kernel.use_player) {
entry->kernel_idx = kernel_get_packet_stream();
if (entry->kernel_idx == -1)
if (entry->kernel_idx == KERNEL_IDX_NONE)
ilog(LOG_ERR, "Failed to get kernel packet stream entry (%s)", strerror(errno));
else
ilog(LOG_DEBUG, "Using kernel packet stream index %i", entry->kernel_idx);
@ -867,7 +868,7 @@ static void packet_encoded_cache(struct codec_ssrc_handler *ch, struct media_pac
mutex_lock(&entry->lock);
t_ptr_array_add(entry->packets, ep);
if (entry->kernel_idx != -1) {
if (entry->kernel_idx != KERNEL_IDX_NONE) {
ilog(LOG_DEBUG, "Adding media packet (length %zu, TS %" PRIu64 ", delay %lu ms) to kernel packet stream %i",
s->len, pts, entry->duration, entry->kernel_idx);
if (!kernel_add_stream_packet(entry->kernel_idx, s->s, s->len, entry->duration, pts,
@ -2168,7 +2169,7 @@ static void __media_player_cache_entry_free(struct media_player_cache_entry *e)
}
media_player_coder_shutdown(&e->coder);
av_packet_free(&e->coder.pkt);
if (e->kernel_idx != -1)
if (e->kernel_idx != KERNEL_IDX_NONE)
kernel_free_packet_stream(e->kernel_idx);
g_free(e->index.index.file.s);
payload_type_clear(&e->index.dst_pt);

Loading…
Cancel
Save