正在显示
2 个修改的文件
包含
23 行增加
和
22 行删除
| @@ -1396,7 +1396,7 @@ void SrsOriginHub::destroy_forwarders() | @@ -1396,7 +1396,7 @@ void SrsOriginHub::destroy_forwarders() | ||
| 1396 | 1396 | ||
| 1397 | SrsMetaCache::SrsMetaCache() | 1397 | SrsMetaCache::SrsMetaCache() |
| 1398 | { | 1398 | { |
| 1399 | - cache_metadata = cache_sh_video = cache_sh_audio = NULL; | 1399 | + meta = video = audio = NULL; |
| 1400 | } | 1400 | } |
| 1401 | 1401 | ||
| 1402 | SrsMetaCache::~SrsMetaCache() | 1402 | SrsMetaCache::~SrsMetaCache() |
| @@ -1406,24 +1406,24 @@ SrsMetaCache::~SrsMetaCache() | @@ -1406,24 +1406,24 @@ SrsMetaCache::~SrsMetaCache() | ||
| 1406 | 1406 | ||
| 1407 | void SrsMetaCache::dispose() | 1407 | void SrsMetaCache::dispose() |
| 1408 | { | 1408 | { |
| 1409 | - srs_freep(cache_metadata); | ||
| 1410 | - srs_freep(cache_sh_video); | ||
| 1411 | - srs_freep(cache_sh_audio); | 1409 | + srs_freep(meta); |
| 1410 | + srs_freep(video); | ||
| 1411 | + srs_freep(audio); | ||
| 1412 | } | 1412 | } |
| 1413 | 1413 | ||
| 1414 | SrsSharedPtrMessage* SrsMetaCache::data() | 1414 | SrsSharedPtrMessage* SrsMetaCache::data() |
| 1415 | { | 1415 | { |
| 1416 | - return cache_metadata; | 1416 | + return meta; |
| 1417 | } | 1417 | } |
| 1418 | 1418 | ||
| 1419 | SrsSharedPtrMessage* SrsMetaCache::vsh() | 1419 | SrsSharedPtrMessage* SrsMetaCache::vsh() |
| 1420 | { | 1420 | { |
| 1421 | - return cache_sh_video; | 1421 | + return video; |
| 1422 | } | 1422 | } |
| 1423 | 1423 | ||
| 1424 | SrsSharedPtrMessage* SrsMetaCache::ash() | 1424 | SrsSharedPtrMessage* SrsMetaCache::ash() |
| 1425 | { | 1425 | { |
| 1426 | - return cache_sh_audio; | 1426 | + return audio; |
| 1427 | } | 1427 | } |
| 1428 | 1428 | ||
| 1429 | int SrsMetaCache::dumps(SrsConsumer* consumer, bool atc, SrsRtmpJitterAlgorithm ag, bool dm, bool ds) | 1429 | int SrsMetaCache::dumps(SrsConsumer* consumer, bool atc, SrsRtmpJitterAlgorithm ag, bool dm, bool ds) |
| @@ -1431,7 +1431,7 @@ int SrsMetaCache::dumps(SrsConsumer* consumer, bool atc, SrsRtmpJitterAlgorithm | @@ -1431,7 +1431,7 @@ int SrsMetaCache::dumps(SrsConsumer* consumer, bool atc, SrsRtmpJitterAlgorithm | ||
| 1431 | int ret = ERROR_SUCCESS; | 1431 | int ret = ERROR_SUCCESS; |
| 1432 | 1432 | ||
| 1433 | // copy metadata. | 1433 | // copy metadata. |
| 1434 | - if (dm && cache_metadata && (ret = consumer->enqueue(cache_metadata, atc, ag)) != ERROR_SUCCESS) { | 1434 | + if (dm && meta && (ret = consumer->enqueue(meta, atc, ag)) != ERROR_SUCCESS) { |
| 1435 | srs_error("dispatch metadata failed. ret=%d", ret); | 1435 | srs_error("dispatch metadata failed. ret=%d", ret); |
| 1436 | return ret; | 1436 | return ret; |
| 1437 | } | 1437 | } |
| @@ -1440,13 +1440,13 @@ int SrsMetaCache::dumps(SrsConsumer* consumer, bool atc, SrsRtmpJitterAlgorithm | @@ -1440,13 +1440,13 @@ int SrsMetaCache::dumps(SrsConsumer* consumer, bool atc, SrsRtmpJitterAlgorithm | ||
| 1440 | // copy sequence header | 1440 | // copy sequence header |
| 1441 | // copy audio sequence first, for hls to fast parse the "right" audio codec. | 1441 | // copy audio sequence first, for hls to fast parse the "right" audio codec. |
| 1442 | // @see https://github.com/ossrs/srs/issues/301 | 1442 | // @see https://github.com/ossrs/srs/issues/301 |
| 1443 | - if (ds && cache_sh_audio && (ret = consumer->enqueue(cache_sh_audio, atc, ag)) != ERROR_SUCCESS) { | 1443 | + if (ds && audio && (ret = consumer->enqueue(audio, atc, ag)) != ERROR_SUCCESS) { |
| 1444 | srs_error("dispatch audio sequence header failed. ret=%d", ret); | 1444 | srs_error("dispatch audio sequence header failed. ret=%d", ret); |
| 1445 | return ret; | 1445 | return ret; |
| 1446 | } | 1446 | } |
| 1447 | srs_info("dispatch audio sequence header success"); | 1447 | srs_info("dispatch audio sequence header success"); |
| 1448 | 1448 | ||
| 1449 | - if (ds && cache_sh_video && (ret = consumer->enqueue(cache_sh_video, atc, ag)) != ERROR_SUCCESS) { | 1449 | + if (ds && video && (ret = consumer->enqueue(video, atc, ag)) != ERROR_SUCCESS) { |
| 1450 | srs_error("dispatch video sequence header failed. ret=%d", ret); | 1450 | srs_error("dispatch video sequence header failed. ret=%d", ret); |
| 1451 | return ret; | 1451 | return ret; |
| 1452 | } | 1452 | } |
| @@ -1509,13 +1509,13 @@ int SrsMetaCache::update_data(SrsMessageHeader* header, SrsOnMetaDataPacket* met | @@ -1509,13 +1509,13 @@ int SrsMetaCache::update_data(SrsMessageHeader* header, SrsOnMetaDataPacket* met | ||
| 1509 | } | 1509 | } |
| 1510 | 1510 | ||
| 1511 | // create a shared ptr message. | 1511 | // create a shared ptr message. |
| 1512 | - srs_freep(cache_metadata); | ||
| 1513 | - cache_metadata = new SrsSharedPtrMessage(); | 1512 | + srs_freep(meta); |
| 1513 | + meta = new SrsSharedPtrMessage(); | ||
| 1514 | updated = true; | 1514 | updated = true; |
| 1515 | 1515 | ||
| 1516 | // dump message to shared ptr message. | 1516 | // dump message to shared ptr message. |
| 1517 | // the payload/size managed by cache_metadata, user should not free it. | 1517 | // the payload/size managed by cache_metadata, user should not free it. |
| 1518 | - if ((ret = cache_metadata->create(header, payload, size)) != ERROR_SUCCESS) { | 1518 | + if ((ret = meta->create(header, payload, size)) != ERROR_SUCCESS) { |
| 1519 | srs_error("initialize the cache metadata failed. ret=%d", ret); | 1519 | srs_error("initialize the cache metadata failed. ret=%d", ret); |
| 1520 | return ret; | 1520 | return ret; |
| 1521 | } | 1521 | } |
| @@ -1526,14 +1526,14 @@ int SrsMetaCache::update_data(SrsMessageHeader* header, SrsOnMetaDataPacket* met | @@ -1526,14 +1526,14 @@ int SrsMetaCache::update_data(SrsMessageHeader* header, SrsOnMetaDataPacket* met | ||
| 1526 | 1526 | ||
| 1527 | void SrsMetaCache::update_ash(SrsSharedPtrMessage* msg) | 1527 | void SrsMetaCache::update_ash(SrsSharedPtrMessage* msg) |
| 1528 | { | 1528 | { |
| 1529 | - srs_freep(cache_sh_audio); | ||
| 1530 | - cache_sh_audio = msg->copy(); | 1529 | + srs_freep(audio); |
| 1530 | + audio = msg->copy(); | ||
| 1531 | } | 1531 | } |
| 1532 | 1532 | ||
| 1533 | void SrsMetaCache::update_vsh(SrsSharedPtrMessage* msg) | 1533 | void SrsMetaCache::update_vsh(SrsSharedPtrMessage* msg) |
| 1534 | { | 1534 | { |
| 1535 | - srs_freep(cache_sh_video); | ||
| 1536 | - cache_sh_video = msg->copy(); | 1535 | + srs_freep(video); |
| 1536 | + video = msg->copy(); | ||
| 1537 | } | 1537 | } |
| 1538 | 1538 | ||
| 1539 | std::map<std::string, SrsSource*> SrsSource::pool; | 1539 | std::map<std::string, SrsSource*> SrsSource::pool; |
| @@ -497,11 +497,12 @@ private: | @@ -497,11 +497,12 @@ private: | ||
| 497 | class SrsMetaCache | 497 | class SrsMetaCache |
| 498 | { | 498 | { |
| 499 | private: | 499 | private: |
| 500 | - SrsSharedPtrMessage* cache_metadata; | ||
| 501 | - // the cached video sequence header. | ||
| 502 | - SrsSharedPtrMessage* cache_sh_video; | ||
| 503 | - // the cached audio sequence header. | ||
| 504 | - SrsSharedPtrMessage* cache_sh_audio; | 500 | + // The cached metadata, FLV script data tag. |
| 501 | + SrsSharedPtrMessage* meta; | ||
| 502 | + // The cached video sequence header, for example, sps/pps for h.264. | ||
| 503 | + SrsSharedPtrMessage* video; | ||
| 504 | + // The cached audio sequence header, for example, asc for aac. | ||
| 505 | + SrsSharedPtrMessage* audio; | ||
| 505 | public: | 506 | public: |
| 506 | SrsMetaCache(); | 507 | SrsMetaCache(); |
| 507 | virtual ~SrsMetaCache(); | 508 | virtual ~SrsMetaCache(); |
-
请 注册 或 登录 后发表评论